악성코드를 이용한 사이버 공격이 점차 지능화되고 확산됨에 따라 기존 상용 백신 솔루션으로 대응하는 데에는 한계점이 도달하게 되었으며, 이를 극복하기 위한 방법으로 신종/변종 악성코드를 머신러닝 및 딥러닝 기술을 활용하여 분석하고 탐지하고자 하는 기술이 등장하였다.
본 기술이전은 PE파일에서 추출된 Hex-Opcode를 활용하여 학습 데이터를 전처리하고, 학습모델을 생성하며, 시험용 파일을 이용하여 PE파일의 악성여부를 탐지하는 기술로서, 전처리 과정에서 추출된 Hex-Opcode를 활용하여 One-gram 및 Tri-gram Hex-Opcode를 활용하는 방식을 모두 지원한다.
본 기술이전은 정적분석 기법 중에서 PE 파일의 Opcode를 활용한 방식에 관한 것이다. Opcode는 컴퓨터에서 연산의 종류를 나타내기 위한 코드인 Operation Code를 줄여서 부르는 말로써, 덧셈을 ADD, 제곱근을 SQR 형태의 기호로 나타내는 코드이다. 본 기술이전은 Opcode의 정보를 활용하여 해당 파일의 악성여부를 탐지 및 분석하고자 하는 기술이다.
악성코드 탐지에 Opcode를 사용하면 악성코드 파일을 직접 실행하지 않고 악성코드의 행위 정보를 일부 추출할 수 있는 장점이 있다. 또한, Opcode에 Tri-gram을 적용할 경우 연속적인 악성 행위 정보를 파악하는 것이 가능하게 된다.
[그림 1] PE 파일의 .text 섹션 ASM 파일 내용
본 기술은 크게 두 부분으로 구분되는데, 모델을 학습하기 위한 전처리 블록, 전처리 결과를 바탕으로 학습을 진행하는 학습 블록, 학습 결과를 이용하여 악성 여부를 판단하는 분석 블록으로 구분된다.
전처리블록은 정상파일 및 악성파일에서 어셈블리코드를 추출하는 ASM 추출모듈과 어셈블리코드로부터 Opcode 시퀀스를 추출하는 Opcode 추출 모듈, Opcode 시퀀스로부터 One-gram 이나 Tri-gram 시퀀스를 추출하는 N-gram 추출 모듈로 구성된다. 학습 블록은 전처리 데이터를 활용하여 CNN (Convolutional Neural Network)을 기반으로 한 딥러닝 모델을 사용하여 학습을 진행한다. 분석 블록은 동일한 전처리 과정을 거쳐서 생성된 N-gram 데이터를 기 학습된 딥러닝 모델에 입력하여 악성여부를 판단한다. 이 경우에 학습시에는 모든 데이터가 정상/악성 등에 관한 정보로 라벨링 되어 있으며, 분석에 사용하는 데이터는 라벨링되어 있지 않은 데이터를 활용하게 된다.
- 기존의 상용백신들이 시크니쳐 분석 등의 방식을 사용함으로써, 변종 및 신종의 악성코드를 실시간으로 분석하는데에는 어려움이 있었으나, AI 기반 악성코드 분석 기법은 변종 및 신종 악성코드 분석이 가능한 장점이 있음
- 기존에는 신종 악성코드의 분석을 분석가의 수동적인 분석에 의존했으나, AI 기반 악성코드 분석은 자동 분석이 가능한 장점이 있음. 이를 통해서 분석가의 수동 분석 시간을 줄일 수 있는 장점이 있음
- AI기반 악성코드 분석 기술은 Opcode 시퀀스를 활용하여 악성코드 여부를 분석함으로써, 악성코드를 직접 실행하지 않고도 악성코드의 행위 정보를 일부 분석할 수 있는 장점이 있음.
- Hex-Opcode를 활용함으로써 기존 Opcode 명령값을 이용한 분석에 비해서 더 정확한 분석이 가능한 장점이 있음
본 기술이전은 Hex-Opcode를 활용하여 학습용 파일들을 전처리하고, 학습모델을 생성하며, 시험용 파일을 이용하여 악성여부를 시험하는 내용을 포함한다. 전처리 과정에서는 추출된 Hex-Opcode를 활용하여 One-gram 및 Tri-gram Hex-Opcode를 활용하는 방식을 모두 지원한다.
- Hex-Opcode를 활용한 AI기반 PE 악성코드 분석을 위한 전처리 기술
- Hex-Opcode를 활용한 AI기반 PE 악성코드 분석을 위한 탐지모델 학습 기능
- Hex-Opcode를 활용한 AI기반 PE 악성코드 분석 탐지모델을 이용한 악성코드 탐지 기능
- 국방AI백신 시스템의 사용자 요구사항정의서
- Hex-Opcode를 활용한 AI기반 PE 악성코드 분석 기술의 구조설계서
- Hex-Opcode를 활용한 AI기반 PE 악성코드 분석 기술의 시험 절차서 및 결과서
- Hex-Opcode를 활용한 AI기반 PE 악성코드 분석 기술을 위한 소프트웨어 프로그램
? 차세대 백신 등 악성코드 대응 솔루션에 실시간으로 공격을 차단하고 악성코드 격리, 피해복구 기능 등을 자동화하는데 활용
? 기존 안티바이러스 제품 및 지능보안 분석 등의 서비스에 적용하여 기존 제품에 대한 보안성 강화
? 국방 및 기관에서 해당 기관의 네트워크로 유입되는 파일에 대한 악성여부를 판단하고 해당 네트워크 및 장비들을 보호하는 방법의 하나로 사용할 수 있음
? 패턴이 알려지지 않은 제로데이성 악성파일에 대해 대응할 수 있음
? 악성코드 분석 전문가의 분석 시간을 줄이는 방법으로 활용이 가능함