[논문 리뷰] Semi-supervised classification for dynamic Android malware detection
이 논문은 API 호출 로그를 사용하여 동적 안드로이드 악성코드 탐지에 적합한 모델 기반 준지도 학습(MBSS) 분류 프레임워크를 제안한다. 라벨이 부여된 및 부여되지 않은 APK를 모두 활용하여 조건부 기대최대화(CEM)를 통해 가우시안 혼합모델을 추정한다. MBSS는 샘플 내에서 98%의 정확도를 달성하며, 강한 유사성 조건 하에서 샘플 외에서도 90%의 탐지율을 유지한다. 이는 테스트 데이터가 학습 분포에서 벗어날 경우 서포트 벡터 머신(SVM), k-최근접 이웃(kNN), 선형 판별 분석(LDA)보다 뛰어난 성능을 보인다.
A growing number of threats to Android phones creates challenges for malware detection. Manually labeling the samples into benign or different malicious families requires tremendous human efforts, while it is comparably easy and cheap to obtain a large amount of unlabeled APKs from various sources. Moreover, the fast-paced evolution of Android malware continuously generates derivative malware families. These families often contain new signatures, which can escape detection when using static analysis. These practical challenges can also cause traditional supervised machine learning algorithms to degrade in performance. In this paper, we propose a framework that uses model-based semi-supervised (MBSS) classification scheme on the dynamic Android API call logs. The semi-supervised approach efficiently uses the labeled and unlabeled APKs to estimate a finite mixture model of Gaussian distributions via conditional expectation-maximization and efficiently detects malwares during out-of-sample testing. We compare MBSS with the popular malware detection classifiers such as support vector machine (SVM), $k$-nearest neighbor (kNN) and linear discriminant analysis (LDA). Under the ideal classification setting, MBSS has competitive performance with 98\% accuracy and very low false positive rate for in-sample classification. For out-of-sample testing, the out-of-sample test data exhibit similar behavior of retrieving phone information and sending to the network, compared with in-sample training set. When this similarity is strong, MBSS and SVM with linear kernel maintain 90\% detection rate while $k$NN and LDA suffer great performance degradation. When this similarity is slightly weaker, all classifiers degrade in performance, but MBSS still performs significantly better than other classifiers.
연구 동기 및 목표
- 라벨이 부여된 안드로이드 악성코드 샘플의 부족과 증가하는 라벨이 없는 APK의 양을 해결한다.
- 학습 분포와 다를 경우 기존의 지도 학습 분류기의 성능 저하 문제를 해결한다.
- 라벨이 부여된 및 부여되지 않은 동적 행동 데이터를 모두 활용하는 강력한 악성코드 탐지 방법을 개발한다.
- 대규모 라벨이 없는 데이터셋에서 높은 확률로 악성으로 간주되는 샘플을 식별함으로써 악성코드 분류 효율을 향상시킨다.
- 특히 N-그램 기반 방법에 대해 특수한 취약성을 가진 특징 추출 과정에서의 악성 조작에 대한 내성을 확보한다.
제안 방법
- 에뮬레이터 환경에서 APK를 실행하여 동적 API 호출 로그를 수집한다.
- 유한한 가우시안 혼합분포의 조합을 사용하여 정상 및 악성 행동을 모델링한다.
- 라벨이 부여된 및 부여되지 않은 데이터를 모두 활용하여 모델 파라미터를 추정하기 위해 조건부 기대최대화(CEM)를 적용한다.
- 후보 혼합모델들 중 최적의 모델을 선별하기 위해 베이지안 정보 기준(BIC)을 사용한다.
- 학습된 혼합모델에서 유도된 사후 확률을 사용하여 새로운 샘플을 분류한다.
- 샘플 외 유사성 조건이 변화하는 상황에서 MBSS의 성능을 SVM(선형 및 라디얼), kNN, LDA와 비교한다.
실험 결과
연구 질문
- RQ1테스트 데이터가 학습 데이터와 동일한 분포를 가지지 않을 경우 준지도 학습이 악성코드 탐지의 신뢰성 향상에 기여할 수 있는가?
- RQ2기존의 분류기(SVM, kNN, LDA)와 비교해 볼 때, 변화하는 서명을 가진 샘플 외 안드로이드 악성코드에 대해 MBSS는 어떤 성능을 보이는가?
- RQ3라벨이 부여되지 않은 APK가 동적 악성코드 분석에서 탐지 정확도 향상과 거짓 양성률 감소에 얼마나 기여할 수 있는가?
- RQ4고차원 N-그램 대신 유니그램 특징을 사용할 경우, 악성코드 탐지에서 악성 조작에 대한 저항력이 향상되는가?
- RQ5실제 안드로이드 API 호출 로그 분포에 대해 가우시안 혼합가정이 얼마나 타당한가?
주요 결과
- MBSS는 샘플 내 분류에서 98%의 정확도와 매우 낮은 거짓 양성률을 달성하여 기존 표준 분류기들과 경쟁 가능한 성능을 보였다.
- 학습 데이터와 샘플 외 데이터 간의 유사성이 높은 조건에서, MBSS와 선형 SVM은 모두 90%의 탐지율을 유지했지만, kNN과 LDA는 심각한 성능 저하를 겪었다.
- 유사성이 감소할 경우 모든 분류기의 성능이 저하되었지만, MBSS는 여전히 SVM, kNN, LDA를 능가하는 탐지율을 확보했다.
- MBSS 프레임워크는 분포 이탈 상황에서도 라벨이 부여되지 않은 데이터를 효과적으로 활용하여 탐지 신뢰성 향상에 기여한다.
- 고차원 N-그램 대신 유니그램 특징을 사용함으로써 악성 조작에 대한 저항력이 향상되었다.
- 이 방법의 성능는 가우시안 혼합가정에서의 이탈에 민감하게 반응하므로, 매우 비가우시안 분포를 띠는 데이터에서는 주의가 필요하다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.