Skip to main content
QUICK REVIEW

[논문 리뷰] MalBERT: Using Transformers for Cybersecurity and Malicious Software Detection

Abir Rahali, Moulay A. Akhloufi|arXiv (Cornell University)|2021. 03. 05.
Advanced Malware Detection Techniques참고 문헌 31인용 수 23
한 줄 요약

이 논문은 Android 앱 소스 코드를 텍스트로 간주하여 정적 악성코드 탐지에 사용하는 새로운 Transformer 기반 모델인 MalBERT를 제안한다. 전처리된 코드 특징(권한, 인텐트, 활동 등)에 대해 BERT를 미세조정함으로써 이진 분류에서 97.61%의 정확도와 다중 분류에서 91.02%의 정확도를 달성하여 LSTM 및 기타 Transformer 기반 기준 모델들을 능가한다.

ABSTRACT

In recent years we have witnessed an increase in cyber threats and malicious software attacks on different platforms with important consequences to persons and businesses. It has become critical to find automated machine learning techniques to proactively defend against malware. Transformers, a category of attention-based deep learning techniques, have recently shown impressive results in solving different tasks mainly related to the field of Natural Language Processing (NLP). In this paper, we propose the use of a Transformers' architecture to automatically detect malicious software. We propose a model based on BERT (Bidirectional Encoder Representations from Transformers) which performs a static analysis on the source code of Android applications using preprocessed features to characterize existing malware and classify it into different representative malware categories. The obtained results are promising and show the high performance obtained by Transformer-based models for malicious software detection.

연구 동기 및 목표

  • 기존 탐지 방법을 회피하는 고도로 발전한 악성코드의 증가하는 위협에 대응한다.
  • 특히 BERT를 포함한 Transformer 기반 모델이 Android 악성코드 정적 분석에 어떻게 활용될 수 있는지 탐색한다.
  • 소스 코드를 텍스트 토큰(예: 권한, 인텐트, 활동 등)의 시퀀스로 모델링하여 NLP 기반 분류를 위한 새로운 특징 표현 방식을 개발한다.
  • 사전 훈련된 언어 모델이 LSTM과 같은 RNN 기반 모델보다 악성코드 탐지 작업에서 뛰어난 성능을 낼 수 있음을 입증한다.
  • 향후 연구를 지원하기 위해 11개 카테고리로 구성된 전처리된 Android 악성코드 데이터셋을 공개한다.

제안 방법

  • 권한, 인텐트, 활동, API 호출 등의 핵심 기능을 추출하고 텍스트 시퀀스로 표현하기 위해 Android 앱 소스 코드를 전처리한다.
  • 전처리된 코드 특징을 자연어 입력으로 간주하고, 이진(악성/정상) 및 다중 분류(11개 악성코드 카테고리) 작업을 위해 사전 훈련된 BERT 모델을 미세조정한다.
  • Transformer 아키텍처의 어텐션 메커니즘을 활용하여 코드 구조 내의 장거리 종속성과 핵심 패턴을 포착한다.
  • 공개된 Android 악성코드 데이터셋(Androzoo)을 사용하여 11개 악성코드 카테고리에 대해 BERT 모델을 미세조정함으로써 전이 학습을 적용한다.
  • 보류된 테스트 세트에서 정확도, Matthews 상관계수(MCC), F1 점수, 교차 엔트로피 손실을 사용하여 성능을 평가한다.
  • 성능 비교를 위해 LSTM, XLNet, RoBERTa, DistilBERT와 같은 기준 모델들과 BERT를 대조한다.

실험 결과

연구 질문

  • RQ1사전 훈련된 Transformer 모델인 BERT가 소스 코드를 텍스트 입력으로 사용하여 정적 악성코드 탐지에 효과적으로 적용될 수 있는가?
  • RQ2BERT 기반 악성코드 탐지 성능가 기존의 RNN 기반 모델(LSTM 등)과 다른 사전 훈련된 NLP 모델들에 비해 어떻게 비교되는가?
  • RQ3다양한 사전 훈련된 언어 모델(XLNet, RoBERTa, DistilBERT 등)이 악성코드 분류 정확도와 일반화 능력에 미치는 영향은 무엇인가?
  • RQ4Android 소스 코드를 토큰(예: 권한, 인텐트 등)의 시퀀스로 모델링하는 것이 악성코드 분류를 위한 효과적인 표현 학습을 가능하게 하는가?
  • RQ5미세조정된 BERT가 실제 Android 악성코드 데이터셋에서 이진 분류와 다중 분류 작업 모두에서 높은 성능을 달성할 수 있는가?

주요 결과

  • BERT는 이진 분류에서 97.61%의 최고 정확도를 기록하여 LSTM(94.05%), XLNet(95.79%), RoBERTa(95.33%), DistilBERT(95.42%)를 뛰어넘었다.
  • 11개 카테고리에 대한 다중 분류에서 BERT는 91.02%의 정확도를 달성하여 모든 기준 모델을 앞서며, LSTM(85.07%)과 DistilBERT(59.81%)를 압도했다.
  • BERT는 이진 분류에서 최고의 Matthews 상관계수(MCC) 0.9559를 기록하여 불균형 데이터에서 뛰어난 성능을 보였다.
  • 손실이 증가하기 시작하기 전까지 단 두 에포크 내에 미세조정이 완료되어 최적의 학습률 하에서 효율적인 수렴을 보였다.
  • 이진 분류에서 BERT의 교차 엔트로피 손실은 0.1274로 가장 낮아 다른 모델들보다 더 나은 모델 캘리브레이션을 보였다.
  • 본 연구는 소스 코드가 NLP 기반 악성코드 탐지에 적합한 텍스트 토큰의 시퀀스로 효과적으로 표현될 수 있음을 입증하며, 고성능 분류를 가능하게 한다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.