suyanado
'정보보안/인공지능 보안을 배우다' 카테고리의 글 목록 (2 Page)

정보보안/인공지능 보안을 배우다

정보보안/인공지능 보안을 배우다

[인공지능 보안을 배우다] 8장 PJ_1 악성코드 탐지모델 (특징 추출2)

1. 코드의 내용으로 특징 추출하기1.1. 코드 섹션을 찾는 법pe_header.py 가 pe파일의 헤더만 보고 특징을 추출해 냈다면 이번엔 파일의 데이터 영역에 있는 실제 코드의 특징을 추출해 본다.이를 위해서는 데이터 영역 안에 코드가 어디에 위치하는지부터 찾아야 한다.책에서 소개하는 방법은 세 가지가 있다.일반적으로 코드가 저장된 섹션인 .text 섹션을 찾기Entrypoint 찾기속성(Characteristics)에 CNT_CODE 와 MEM_EXECUTE 플래그가 활성화된 섹션이 프로젝트에서는 두 번째, entrypoint를 사용하여 특징을 추출한다.1.2. 바이트 코드를 어셈블리코드로 바꾸기코드를 작성하여 컴파일을 하면 고급언어(c, java 등)에서 컴퓨터가 이해할 수 있는 0x66, 0x8..

정보보안/인공지능 보안을 배우다

[인공지능 보안을 배우다] 8장 PJ_1 악성코드 탐지모델 (특징 추출1)

특징 추출데이터라벨링까지 마쳤다면 이제 각 데이터의 특징 추출을 한다. 특징이란 각 데이터가 가지는 다른 데이터와 구별되는 요소로서, 이를 통해 악성코드 또는 정상프로그램의 차이점을 파악하여 모델이 학습하도록 한다.예) 악성코드의 경우 특정한 라이브러리를 import 한다 , 이런 기능을 사용한다 등 이 책에서 말하는 특징추출 방법은 세 가지가 있다.첫번째는 pe헤더 이다.pe헤더에는 방금 말했던 것처럼 어떤 라이브러리를 import하는지에 대한 정보가 담겨있다.이를 통해 프로그램이 사용하는 기능이 무엇인지 추측할 수 있다.ClaMP라는 오픈소스를 사용하여 특징추출을 하고 csv파일을 생성해 본다. 책에서 제공하는 실습자료인 pe_hearders.py를 사용하면 된다.오픈소스인 CLamP에서 제공하는데,..

정보보안/인공지능 보안을 배우다

[인공지능 보안을 배우다] 7장 PJ_1 악성코드 탐지모델 (지도학습을 위한 레이블링)

이 포스트는 프로젝트 진행 중 발생한 모든 오류 해결 과정을 포함하고 있습니다. 다소 긴 내용이 될 수 있으므로, 필요한 부분만 참고하시기 바랍니다.  1. 레이블링 이란레이블링 = 라벨링은 학습할 데이터에 정답을 표시하는 것으로, 있다면 이것은 악성코드다/정상파일이다 정답을 표시해 놓는 것이다. 모델은 이를 통해 패턴을 인식하고 학습할 수 있다.라벨링은 바이러스 토탈의api를 사용하여 진행한다. 바이러스 토탈에 접속하여 아이디가 없다면 회원가입을 한다.https://www.virustotal.com/gui/home/upload 회원가입 후 프로필 사진을 클릭해 API Key로 들어간다.바이러스 토탈 api key를 저장해 둔다. 1.1. 라벨링 자동화 코드 작성파이썬 코드를 작성하여 많은 수의 데이터 ..

정보보안/인공지능 보안을 배우다

[인공지능 보안을 배우다] 7장 PJ_1 악성코드 탐지모델 (무료 데이터셋 수집)

악성코드 및 정상프로그램 데이터 셋 수집 악성코드인지 아닌지 판단하는 탐지모델을 만들기 위해서는 학습할 많은 데이터가 필요하다. 바로 악성코드와 정상프로그램이다. 이 책에서 소개하는 방법중 하나는 크롤러를 사용하여 웹사이트에서 악성코드를 수집하는 것인데, 현재 시간이 지나면서 많은 악성코드 제공사이트들이 사라졌거나 바뀌어버렸다.그래서 이 방식으로 악성코드를 수집하기에는 어렵다고 다른 방법을 찾기로 했다. 수집 방법 1. 한국인터넷 진흥원에서 제공하는 데이터 셋을 다운로드악성코드는 시스템에 중대한 영향을 끼칠 수 있기 때문에, 반드시 가상환경에서 다운받도록 한다.vmware 우분투 환경에서 파이어폭스를 열어 아래 링크로 접속한다https://www.bigdata-map.kr/search/1367055  그..

정보보안/인공지능 보안을 배우다

[인공지능 보안을 배우다] 6장 PJ_1 악성코드 탐지모델 프로젝트 개요 환경 구축

제6장에서는 텐서플로우 설치와 디스어셈블러 라이브러리를 설치하는 과정이 담겨있었다. 1. 텐서플로우 및 기타 필수 패키지 설치가상환경을 활성화한 상태에서 아래명령어 입력cd ~conda activate mlsec_3811pip install pefile yara seaborn image bs4 html5lib keras psutil tensorflow 1.1 설치오류 1command 'gcc' failed : No such file or directorygcc 컴파일러가 설치되어있지 않아 발생하는 문제이다. 설치를 해 주자.sudo apt updatesudo apt install build-essential설치가 모두 완료되면 다시 설치 명령어를 입력해 본다. 1.2. 설치오류 2다른 패키지들은 정상적으..

상단으로