[논문 리뷰] Black-box Adversarial Example Attack towards FCG Based Android Malware Detection under Incomplete Feature Information
이 논문은 기능 호출 그래프(FCG) 기반 안드로이드 악성코드 탐지 시스템을 대상으로 하는 블랙박스 적대적 공격 BagAmmo를 제안한다. 이는 기능 정보가 불완전한 환경에서도 작동하며, 다중 집단 공진화를 통한 GAN을 활용해 시도-포괄 블록을 통해 '실행되지 않는' 함수 호출을 삽입함으로써 변형을 생성한다. 이는 악성코드의 기능을 유지하면서도 다양한 모델에서 평균 99.9%의 성공률로 탐지 회피를 달성한다.
The function call graph (FCG) based Android malware detection methods have recently attracted increasing attention due to their promising performance. However, these methods are susceptible to adversarial examples (AEs). In this paper, we design a novel black-box AE attack towards the FCG based malware detection system, called BagAmmo. To mislead its target system, BagAmmo purposefully perturbs the FCG feature of malware through inserting "never-executed" function calls into malware code. The main challenges are two-fold. First, the malware functionality should not be changed by adversarial perturbation. Second, the information of the target system (e.g., the graph feature granularity and the output probabilities) is absent. To preserve malware functionality, BagAmmo employs the try-catch trap to insert function calls to perturb the FCG of malware. Without the knowledge about feature granularity and output probabilities, BagAmmo adopts the architecture of generative adversarial network (GAN), and leverages a multi-population co-evolution algorithm (i.e., Apoem) to generate the desired perturbation. Every population in Apoem represents a possible feature granularity, and the real feature granularity can be achieved when Apoem converges. Through extensive experiments on over 44k Android apps and 32 target models, we evaluate the effectiveness, efficiency and resilience of BagAmmo. BagAmmo achieves an average attack success rate of over 99.9% on MaMaDroid, APIGraph and GCN, and still performs well in the scenario of concept drift and data imbalance. Moreover, BagAmmo outperforms the state-of-the-art attack SRL in attack success rate.
연구 동기 및 목표
- 기능 정보가 불완전한 환경에서 FCG 기반 안드로이드 악성코드 탐지 시스템에 효과적인 블랙박스 적대적 예제를 생성하는 데 도전한다.
- 탐지 회피를 위해 FCG 기능을 변형하면서도 악성코드의 기능을 유지한다.
- 대상 시스템 아키텍처, 기능의 세분성, 출력 확률에 대한 지식 부족 문제를 해결한다.
- 문제 공간(악성코드 코드)에서만 작동하면서도 기능 공간(FCG 임베딩)에 원하는 변화를 유도하는 방법을 개발한다.
- 실세계 탐지 시나리오에서의 개념 이동과 데이터 불균형에 대한 강건성을 평가한다.
제안 방법
- BagAmmo는 악성코드 코드에 '실행되지 않는' 함수 호출을 삽입하기 위해 시도-포괄 블록 메커니즘을 사용하여 기능 유지 보장을 확보한다.
- 문제 공간에서 후보 변형을 진화시키는 생성자(generator)를 갖춘 생성적 적대적 네트워크(GAN)를 사용한다.
- 다중 집단 공진화 알고리즘(Apoem)을 사용하여 다양한 FCG 기능 세분성(예: 클래스, 패키지, 가족 수준)을 동시에 탐색한다.
- Apoem의 각 집단은 후보 기능 세분성을 나타내며, 수렴 시 실제 목표 세분성이 식별된다.
- 생성자는 타겟 분류기를 오도시키면서도 런타임 동작에서 의미적 동등성을 유지하는 변형을 생성하도록 훈련된다.
- 모델 아키텍처, 파rameter, 출력 확률에 대한 액세스 없이도 엄격한 블랙박스 설정에서 작동한다.
실험 결과
연구 질문
- RQ1대상 모델의 기능 세분성과 출력 확률을 알지 못하는 블랙박스 환경에서 적대적 변형을 효과적으로 생성할 수 있는가?
- RQ2코드 수준의 삽입을 통해 FCG를 수정하면서도 악성코드 기능을 어떻게 유지할 수 있는가?
- RQ3대상 시스템에 대한 사전 지식이 없이도 GAN 기반 접근과 공진화 최적화가 얼마나 높은 탐지 회피 성공률을 달성할 수 있는가?
- RQ4개념 이동과 데이터 불균형과 같은 실세계 조건에서 공격 성능은 어떻게 되는가?
- RQ5시도-포괄 블록 수 계산과 같은 정적 분석 히우리스틱을 통해 공격를 탐지할 수 있는가?
주요 결과
- BagAmmo는 MaMaDroid, APIGraph, GCN 모델에서 블랙박스 조건 하에 평균 99.9% 이상의 공격 성공률를 달성한다.
- 동적 분석을 통해 원본 및 변형된 샘플 간 동일한 런타임 동작과 UI가 확인되어 악성코드의 기능 유지가 확인되었다.
- 검사한 50개의 APK 파일에서 삽입된 함수 호출이 모두 실행되지 않았으며, 이는 변형이 의미적으로 무해하고 동작을 변경하지 않음을 확인한다.
- 개념 이동과 데이터 불균형 상황에서도 공격가 효과적이며, 실세계 배포 시나리오에서의 강건성을 입증한다.
- 최신 기술인 SRL 방법보다 공격 성공률에서 뛰어난 성능을 보였다.
- 시도-포괄 블록 기반 탐지 방법은 삽입된 블록 수가 낮고 변동성이 크기 때문에 높은 거짓 경고 또는 거짓 부정률을 유발하여 효과가 없었다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.