머신러닝

[논문리뷰/강화학습/보안] Feature Selection for Malware Detection Based on Reinforcement Learning

가뿡 2022. 7. 19. 16:01

* 개인 공부용으로 작성하였습니다. 틀린 부분은 피드백 부탁드립니다.

 

Z. Fang, J. Wang, J. Geng and X. Kan, "Feature Selection for Malware Detection Based on Reinforcement Learning," in IEEE Access, vol. 7, pp. 176177-176187, 2019, doi: 10.1109/ACCESS.2019.2957429.

출처 : 

https://ieeexplore.ieee.org/document/8920059

 

Feature Selection for Malware Detection Based on Reinforcement Learning

Machine learning based malware detection has been proved great success in the past few years. Most of the conventional methods are based on supervised learning, which relies on static features with labels. While selecting static features requires both huma

ieeexplore.ieee.org

 

 

1. 연구 주제 및 목표

  • Malware Classification을 위한 Feature Selection을 자동으로 수행하는 DQFSA(Deep Q-learning based Feature Selection Architecture) 시스템 구현
- Feature Selection 프로세스를 Markov Decision Process로 모델링.
- Deep Q-learning를 MDP에 적용하여 Agent가 작동할 때 최고의 리워드를 도출하는 정책을 학습.
- 머신러닝 분류 모델의 정확도(Accuracy)를 Reward로 제공.

 

  • 인간의 개입(Human Intervention) 없이 Malware Classification을 높은 성능으로 수행할 수 있는 최적의 Feature를 선택하는 것을 목표로 함

 

2. 배경 지식

Index Terms

  1. Malware : 컴퓨터 시스템에서 민감한 정보를 수집하거나 컴퓨터 시스템에 무단으로 접근하여 컴퓨터, 서버, 클라이언트, 네트워크 등에 악영향을 끼칠 수 있는 악성 소프트웨어.
  2. Feature Selection : 기계 학습에서 모델 성능을 높이기 위해 필요한 변수(feature, 속성 혹은 기능)를 선택하는 기술.
 

기존 Feature Selection의 문제점

  1. 수동으로 이루어지며, 전문가의 경험(Human Experience)에 의존적임.
  2. 추출된 Feature가 모든 샘플의 특성을 반영하지 못함.
  3. 광범위한 Feature 선택은 높은 탐지 성능을 낼 수 있지만 학습 시간이 오래 걸림.

 

3. 기존 연구 (Related Work)

1) Signature Feature Extraction

Malware fileHeader 혹은 Hash Code 같은 고유 번호를 이미 알려진 malware file의 고유번호를 저장한 데이터베이스에서 매핑을 통해 탐지.

* 단점 : 새로운 Malware의 경우 탐지할 수 없음.

 

2) Format Information Extraction

Malware와 정상 소프트웨어(Benign Software)의 정적 구조 특성이 다른 점을 Feature로 사용하는 방법.

* 단점 : 분류 성능이 낮으며, 학습 속도가 느림. 샘플에 대한 도메인 지식 필요.
 

3) N-Gram Features (Unstructured Feature Extraction)

바이너리 파일 전체를 길이 Nsubstring으로 나누는 방법.

* 단점 : 분류 성능이 낮음.
 

4) Multiple Abstract Feature Extraction

Single view features 보완을 위한  Multi-view features 제안. 탐지 성능 향상.

 

 

4.1. 연구 내용 | 주요 기여도 (Contributions)

  • 인간의 개입(Human Intervention)을 줄이고 자동으로  Malware Classification을 위한 Feature Selection을 수행하는 시스템 구현.
  • 기존 연구에 비해 더 적은 Feature를 사용하여 더 높은 성능 기준을 만족시킴.
  • 이전에 강화학습을 이용한 Malware Classification 목적의 Feature Selection에 대한 연구는 없었음.

 

4.2 연구 내용 | 전체 구조(Framework Overview)

Z. Fang, J. Wang, J. Geng and X. Kan, "Feature Selection for Malware Detection Based on Reinforcement Learning," in IEEE Access, vol. 7, pp. 176177-176187, 2019, doi: 10.1109/ACCESS.2019.2957429.

 

1) 데이터 수집, 전처리

  • Malware 데이터 : VirusTotal Dataset로부터 수집 => 전처리 후 총 12146개 데이터 사용
  • 정상 소프트웨어 데이터 : WIN10 Program Files Directory로부터 수집 => 전처리 후 총 9057개 데이터 사용

2) Feature 추출

  • Format Features, N-grams Features : 두 Feature를 입력으로 Feature Vector를 만들고, 이 벡터가 강화학습기반 모델의 input으로 사용됨

3) 강화학습 기반 Training

  • Reward : 분류 모델의 정확도. 분류 성능이 높은 피처에 높은 리워드를 제공

 

4.3. 강화학습 - (1) Environment

1) Format Features : 파일 내 헤더, 섹션 등의 정보. 204개 사용. 

Z. Fang, J. Wang, J. Geng and X. Kan, "Feature Selection for Malware Detection Based on Reinforcement Learning," in IEEE Access, vol. 7, pp. 176177-176187, 2019, doi: 10.1109/ACCESS.2019.2957429.

 

2) Bytes N-grams Features

Malware를 이진 바이너리 파일로 표현한 후, N에 따라 substring을 추출한 바이트 패턴을 시그니처로 사용.

[평가 방법 : TF-IDF (TF X IDF)]

- TF : 해당 바이트 패턴(n-gram)이 발생하는 빈도수

- IDF : 전체 샘플에서 특정 바이트 패턴(n-gram)을 포함하는 샘플 수의 비율

=> 실험 결과 : N=4 일 때, 가장 성능이 좋다

 

4.3. 강화학습 - (2) Action

1) Action Space

Terminal State에 도달할 때까지 Feature Selection 수행

 

2) Action Space Strategy

  1. State-Action Space를 제한하고, Agent가 특정 Action을 취하는 것을 제한함
  2. Terminal State까지 가지 않더라도 언제든지 종료 가능
  3. 이전에 선택한 Feature는 다시 선택할 수 없음

 

4.3. 강화학습 - (3) Reward

Reward : 각 분류 모델의 정확도

Agent에 올바른 Action이 무엇인지 알려주는 것이 아닌 긍정/부정적인 평가만 제공

- 연구에서 사용된 분류기 : KNN, Decision Tree, Random Forest, Naïve Bayes, SVM
 

4.3. 강화학습 - (4) 학습 과정

MDP for feature Selection

Z. Fang, J. Wang, J. Geng and X. Kan, "Feature Selection for Malware Detection Based on Reinforcement Learning," in IEEE Access, vol. 7, pp. 176177-176187, 2019, doi: 10.1109/ACCESS.2019.2957429.

 

 

5.1. 연구결과 - 분류 모델 간 성능 비교

Z. Fang, J. Wang, J. Geng and X. Kan, "Feature Selection for Malware Detection Based on Reinforcement Learning," in IEEE Access, vol. 7, pp. 176177-176187, 2019, doi: 10.1109/ACCESS.2019.2957429.

  • 실험한 5가지 분류 모델에 대해 높은 성능 (96 ~ 99% Accuracy)을 보임
  • 성능이 가장 높은 경우는 KNN 모델을 사용하고, 피처 11개 선택했을 때

 

5.2. 연구결과 - 기존 연구와 성능 비교

Z. Fang, J. Wang, J. Geng and X. Kan, "Feature Selection for Malware Detection Based on Reinforcement Learning," in IEEE Access, vol. 7, pp. 176177-176187, 2019, doi: 10.1109/ACCESS.2019.2957429.

 

기존 연구에 비해

1) 실험한 모든 분류 모델에 대해 높은 성능 (특히 SVM)

2) 더 적은 Feature 선택

 

* 기존 연구 : 파일의 정적 구조 특성(Format Information Extraction)을 이용한 탐지 연구

 

 

5.3. 연구결과 - 결과

DQFSA 아키텍쳐

사람의 개입없이 샘플 기능 공간과 지속적으로 상호작용하는 AI 에이전트 제안.

=> Agent는 탐지의 정확도를 최대화하는 것을 목표로 하는 심층 강화 학습을 통해 합리적인 최적 시퀀스를 선택.

'머신러닝' 카테고리의 다른 글

[강화학습] Markov Decision Process (MDP)  (0) 2022.07.21
[강화학습] 관련 용어 및 표기  (0) 2022.07.21
[군집화] #6. DBSCAN  (0) 2022.07.19
[군집화] #5. GMM  (0) 2022.07.19
[군집화] #4. 평균이동  (0) 2022.07.19