18일 전
악성 소프트웨어 어셈블리 코드 분류를 위한 합성곱 신경망
{Ramon Vicens, Daniel Solis, Jordi Planes, Carles Mateu, Javier Béjar, Daniel Gibert}
초록
전통적인 서명 기반 방법은 감지 회피를 위해 복잡한 가짜화(다양한 형태 및 변형형) 기법을 사용하는 차세대 악성코드를 처리하는 데 점차 부적합해지고 있다. 최근에는 머신러닝 기법을 적용하여 악성코드 탐지 및 분류에 관한 연구가 활발히 진행되고 있다. 그러나 대부분의 기존 방법들은 얕은 학습 아키텍처에 기반하며, 수작업으로 추출한 특징에 의존하고 있다. 본 논문에서는 디어셈블된 바이너리 파일에서 추출한 어셈블리 언어 코드를 벡터로 임베딩한 후, 이를 기반으로 컨볼루션 신경망 아키텍처를 제안하여 악성코드 파일들이 가족(패밀리) 간에 구분 가능한 패턴을 학습하는 방법을 제시한다. 제안한 접근 방식의 적합성을 입증하기 위해, 2015년 마이크로소프트가 주최한 BigData Innovators Gathering 악성코드 예측 챌린지에서 제공한 데이터셋을 활용하여 모델을 평가하였다. 실험 결과, 수작업 특징 추출에 의존하지 않음에도 불구하고 경쟁력 있는 성능을 달성하였으며, 가장 일반적인 가짜화 기법에 대해 뛰어난 내성성을 보였다.