[논문 리뷰] GANG-MAM: GAN based enGine for Modifying Android Malware
이 논문은 기존 악성 Android 애플리케이션의 기능을 유지하면서 악성 기능을 그대로 보존하는 GAN 기반 프레임워크인 GANG-MAM을 제안한다. 이 시스템은 생성적 적대적 네트워크(GAN)를 사용해 분류기 회피를 유도하는 특성 벡터를 생성하고, 이를 모듈러 앱 패키지 수정 엔진(MAM)을 통해 재패키징된 악성 소프트웨어에 적용하여 기존의 핵심 동작 방식을 변경하지 않은 채로 분류기를 회피하는 데 성공한다. 실제 10개의 APK에 대해 검증된 결과, 런타임 차이가 최소한이었다.
Malware detectors based on machine learning are vulnerable to adversarial attacks. Generative Adversarial Networks (GAN) are architectures based on Neural Networks that could produce successful adversarial samples. The interest towards this technology is quickly growing. In this paper, we propose a system that produces a feature vector for making an Android malware strongly evasive and then modify the malicious program accordingly. Such a system could have a twofold contribution: it could be used to generate datasets to validate systems for detecting GAN-based malware and to enlarge the training and testing dataset for making more robust malware classifiers.
연구 동기 및 목표
- 기계학습 기반 악성 소프트웨어 검출기로부터 회피하는 적대적 Android 악성 소프트웨어 샘플을 생성하는 시스템을 개발하는 것.
- 기계학습 기반 악성 소프트웨어 분류기의 훈련 및 테스트를 위한 대규모이고 강건한 데이터셋을 생성하기 위해, 회피 가능한 악성 소프트웨어 변종을 생성하는 것.
- GAN으로 생성된 악성 소프트웨어를 탐지하는 데 도움이 되는 연구를 지원하기 위해, 이러한 샘플을 재현 가능한 방식으로 생성할 수 있는 도구를 제공하는 것.
- 자동화된 APK 재구성 기반으로 특성 변형 후에도 수정된 악성 소프트웨어의 기능적 완전성을 유지하는 것.
- GAN 기반 특성 생성과 APK 수정을 분리하여 연구 환경에서의 유연한 사용이 가능한 모듈러이고 오픈소스 도구를 제공하는 것.
제안 방법
- 기계학습 기반 악성 소프트웨어 분류기와 대비되는 특성 벡터를 생성하기 위해 GAN을 훈련시켜, 악성 소프트웨어가 정상으로 보이게 하는 데 목적이 있다.
- GAN의 출력은 정적 APK 특성(예: 권한, 컴понент, 매니페스트 항목 등)을 변경함으로써 악성 소프트웨어가 분류기에서 회피하도록 유도하는 수정된 특성 벡터이다.
- MAM(Malware Modifier) 엔진은 Apktool을 사용해 입력 APK를 파싱하고, GAN이 생성한 벡터에 따라 지정된 특성을 수정한 후 APK를 재구성한다.
- 새로운 활동, 서비스, 브로드캐스트 리시버, 콘텐츠 프로바이더에 대해 smali 코드 삽입을 통한 동적 특성 수정을 지원한다.
- 수정된 APK는 서명된 후 동일한 시드를 사용해 Android 에뮬레이터에서 'monkey' 유틸리티를 통해 테스트되어 수정 전후에 기능적 동일성이 유지되었음을 확인한다.
- 특성 변경 사항은 CSV 입력 파일을 통해 지정되며, 이로 인해 GAN 컴ponent 없이도 MAM 엔진을 독립적으로 사용할 수 있다.
실험 결과
연구 질문
- RQ1기계학습 기반 분류기로부터 회피할 수 있도록 GAN을 효과적으로 사용해 특성 벡터를 생성할 수 있는가?
- RQ2적대적 특성 변형 후에도 수정된 악성 소프트웨어의 기능적 동작이 어느 정도 유지되는가?
- RQ3제안된 시스템은 훈련 및 테스트를 위한 대규모, 다양한, 현실적인 적대적 악성 소프트웨어 샘플을 생성할 수 있는가?
- RQ4MAM 엔진은 악성 소프트웨어의 핵심 악성 기능을 변경하지 않고 APK를 수정하는 데 얼마나 효과적인가?
- RQ5사전 계산된 특성 벡터를 사용해 수정된 APK를 생성할 수 있는가? 이는 연구 워크플로우에서 모듈러하게 사용 가능한가?
주요 결과
- GANG-MAM 시스템은 실제 10개의 Android APK를 수정하여 수정 전후 실행 로그가 거의 동일한 수준으로 기능적 변화가 최소한이었다.
- 테스트된 10개의 APK에서 실행 로그에 관측된 차이는 오직 1~3줄 내외였으며, 모두 타임스탬프나 동적 입력과 같은 비기능적 요인에 기인하였다.
- 동일한 시드를 사용해 'monkey' 도구로 Android 에뮬레이터에서 테스트한 결과, 수정된 APK는 원본 동작과 동일한 기능을 유지하였다.
- GAN이 생성한 적대적 특성 벡터가 앱 패키지의 구조적 변경으로 효과적으로 매핑되어 응용 프로그램이 손상되지 않은 채 실행 가능한 변경을 유도할 수 있음을 입증하였다.
- MAM 엔진은 권한, 컴포onents 등 다양한 특성 유형을 성공적으로 처리했으며, 새로운 컴포onents에 대한 smali 수준의 코드 삽입도 지원하였다.
- 이 도구는 GAN이 포함된 종단 간 모드와 사전 계산된 특성 벡터를 사용하는 스탠드얼론 모드 모두에서 기능적으로 완전히 작동하며, 연구 워크플로우에서의 다양한 배포가 가능하다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.