
Apkx-Hunter v2.7.0
C 기반 Android 정적 분석 프레임워크로, 디컴파일, 비밀 탐지, 엔드포인트 발견, 권한 분석, 네이티브 라이브러리 스캐닝과 ML 기반 비밀 분류를 지원합니다.
APKX-Hunter v3.0.0 -- Debian 패키지
Black Hat Arsenal Europe 2026의 APKX-Hunter
Black Hat Europe Arsenal에서 APKX-Hunter 보기
APKX-Hunter는 완전히 C로 작성된 오픈소스 Android 정적 분석 프레임워크로, Android 보안 평가, 리버스 엔지니어링, 악성코드 분석, OWASP MASVS 준수 스캐닝, 버그 바운티 헌팅, Apk 테스팅, 침투 테스트를 위해 특별히 설계되었습니다.
이 프레임워크는 APK, APKS, APKM, XAPK, ZIP 아카이브를 포함한 지원되는 Android 패키지 형식을 자동으로 추출하고 분석하여 단일 애플리케이션과 대규모 Android 애플리케이션 분석을 모두 지원합니다. 재귀적 다중 APK 스캐닝, 무음 배치 모드, 체계적인 스캔 출력을 갖춘 APKX-Hunter는 개별 애플리케이션은 물론 대규모 Android 애플리케이션 컬렉션도 효율적으로 처리하면서 깔끔하고 구조화된 실행 가능한 결과를 생성하도록 설계되었습니다.
APKX-Hunter는 디컴파일, AndroidManifest 분석, 권한 분석, 내보낸 컴포넌트 탐지, 엔드포인트 발견, 하드코딩된 시크릿 탐지, 클라우드 구성 발견, 네이티브 라이브러리 탐지, OWASP MASVS 보안 검사를 포함한 여러 정적 분석 기법을 결합하여 Android 애플리케이션 내부의 보안 관련 정보를 발굴합니다.
APKX-Hunter는 또한 통합된 대화형 명령줄 셸을 제공하여 연구자에게 분석 작업 실행, 스캔 모드 구성, 프로젝트 워크플로 탐색, 터미널에서 직접 APKX-Hunter와 상호작용할 수 있는 전용 프레임워크 인터페이스를 제공합니다. 셸 기능에는 명령 기록, 대화형 명령 처리, 스캔 제어, 반복적인 분석 워크플로를 더 빠르고 효율적으로 만들기 위해 설계된 프레임워크 수준 명령이 포함됩니다.
이 프레임워크에는 디컴파일되고 추출된 애플리케이션 소스 코드를 분석하기 위한 코드 검색 및 조사 엔진이 포함되어 있습니다. 연구자는 프로젝트 디렉터리에서 특정 코드 패턴이나 문자열을 재귀적으로 검색할 수 있습니다. 이를 통해 의심스러운 구현을 조사하고, 보안에 민감한 기능을 추적하고, 취약한 패턴을 식별하고, 대규모 디컴파일된 코드베이스를 빠르게 탐색하기가 더 쉬워집니다.
APKX-Hunter는 또한 완전히 C로 작성된 경량 머신러닝 기반 시크릿 분류 엔진을 통합하여 탐지된 시크릿을 신뢰도와 심각도에 따라 자동으로 분류합니다. 이는 오탐을 줄이고 취약점 분류를 가속화하는 데 도움이 됩니다.
이 프레임워크는 분석 과정 전반에 걸쳐 체계적이고 구조화된 출력 파일을 생성하여 관련 발견 사항과 보안 결과를 명확한 카테고리로 분리하여 더 쉽게 조사, 보고, 추가 분석할 수 있도록 합니다. 모든 스캔이 끝나면 APKX-Hunter는 스캔된 APK 수, 분석된 파일 수, 탐지된 시크릿 수, 탐지된 패턴 수, MASVS 발견 사항을 포함한 상세한 스캔 통계를 생성하여 연구자에게 전체 보안 평가에 대한 포괄적인 개요를 제공합니다.
APKX-Hunter는 애플리케이션 추출 및 자동화된 발견부터 수동 코드 조사 및 보안 분류에 이르기까지 완전한 Android 정적 분석 워크플로로 설계되었습니다.
- GitHub: https://github.com/SyscallX-18113/Apkx-Hunter
- 개발자: SyscallX-18113
- 버전: v3.0.0

OWASP MASVS 스캐닝 지원
Apkx-Hunter는 이제 15개 카테고리와 100개 탐지 패턴을 갖춘 OWASP MASVS 보안 스캐닝을 포함합니다:
| # | 카테고리 | 패턴 |
|---|---|---|
| 1 | 취약한 암호화 | 18 |
| 2 | 인증서 피닝 | 6 |
| 3 | 루트 탐지 | 7 |
| 4 | 안티 디버깅 | 6 |
| 5 | 안티 탬퍼 | 4 |
| 6 | SharedPreferences | 9 |
| 7 | SQLite | 3 |
| 8 | 외부 저장소 | 5 |
| 9 | 동적 코드 로딩 | 3 |
| 10 | 리플렉션 | 2 |
| 11 | 런타임 명령 실행 | 4 |
| 12 | WebView 보안 | 14 |
| 13 | 네트워크 보안 | 10 |
| 14 | SSL 검증 | 5 |
| 15 | 네이티브 라이브러리 로딩 | 4 |
| 합계 | 100 |
OWASP 검증
APKXHunter는 OWASP UnCrackable Level 4 애플리케이션을 대상으로 테스트되었습니다. 스캔은 여러 보안 취약점을 성공적으로 식별하여 OWASP MASVS 스캐닝 엔진과 Android 정적 분석 기능의 효과를 입증했습니다.

기능
- OWASP MASVS 지원 — Apkx-Hunter는 이제 14개 이상의 카테고리와 100개의 탐지 패턴을 갖춘 포괄적인 OWASP MASVS 보안 스캐닝을 포함합니다:
- JADX 디컴파일 — 빠른 모드와 심층 모드의 디컴파일
- APKTool 디컴파일 — APKTool 기반의 전체 디컴파일 및 스캐닝
- 아카이브 추출 — APK, APKM, APKS, XAPK, ZIP 형식 지원
- 디컴파일된 폴더 스캐닝 — 이미 디컴파일된 JADX 소스 디렉터리 스캔
- APKTool 폴더 스캐닝 — 이미 디컴파일된 APKTool 디렉터리 스캔
- 시크릿 탐지 — API 키, 토큰, 비밀번호 및 내장된 시크릿 발견
- 엔드포인트 탐색 — URL, 엔드포인트 및 보안 관련 패턴 식별
- Android 권한 분석 — 권한 및 내보낸 액티비티 분석
- 네이티브(.so) 라이브러리 탐지 — 앱에 번들된 네이티브 라이브러리 탐지
- 파일 인벤토리 생성 — 전체 파일 인벤토리 보고서 생성
- 머신러닝 기반 시크릿 분류 (주요 기능) — 탐지된 시크릿에 대한 ML 지원 신뢰도 점수 산정으로 트리아지 가속화 및 시크릿 탐지의 오탐 감소
- 재귀적 다중 APK 스캐닝 — 대규모 Android 애플리케이션 분석을 위해 여러 APK를 자동으로 재귀 스캔
- 자동 패키지 추출 — APKS, APKM, XAPK, ZIP 패키지 형식에서 APK를 자동으로 추출 및 분석
- 무음 배치 모드 — 대규모 스캔 중 분석 결과를 유지하면서 터미널 출력을 깔끔하게 유지
- 스캔 종료 통계 — 스캔한 APK, 분석한 파일, 탐지된 시크릿, 탐지된 패턴 및 MASVS 결과를 포함한 상세 스캔 요약 표시
- 향상된 명령줄 인터페이스 — 개선된 인수 파싱, 입력 검증 및 사용자 친화적인 오류 보고
- 향상된 프레임워크 안정성 — 개선된 오류 처리, 메모리 관리 및 전반적인 프레임워크 신뢰성
- 셸 통합 — 명령 기록, 스캔 제어 및 프레임워크 수준 명령을 갖춘 통합 대화형 프레임워크 셸 추가
- 코드 검색 및 조사 — 파일 경로, 줄 번호, 일치하는 줄 및 주변 코드 컨텍스트와 함께 재귀적 소스 코드 검색 추가
- 카테고리별 MASVS 결과 — 분석 및 보고를 용이하게 하기 위해 MASVS 보안 결과를 전용 카테고리로 구성
- 터미널 모드에서 출력 없음 - 스캔 중 터미널에 결과나 출력을 인쇄하지 않음.
머신러닝 모델
APKXHunter는 오프라인 머신러닝 분류기를 사용합니다. model.bin에는 탐지된 시크릿의 신뢰도 점수를 계산하는 데 사용되는 훈련된 수치 가중치만 포함되어 있습니다.
실행 파일이 아닙니다.
코드가 포함되어 있지 않습니다.
바이너리 데이터로만 로드됩니다.
- 오프라인 ML 추론 — 모든 모델 추론은 로컬에서 실행되며 클라우드 API나 인터넷 연결이 필요하지 않습니다
- 신뢰도 확률 점수 산정 — 탐지된 각 시크릿은 훈련된 모델로부터 신뢰도 확률을 부여받습니다
프로젝트 통계
- 언어: C
- 코드베이스: 6,700+ 줄
- 아키텍처: 모듈식
- 플랫폼: Linux
플랫폼 지원
- Linux (지원됨)
- Windows (지원되지 않음)
- macOS (지원되지 않음)
성능
다음 결과는 개발 중 수행된 테스트를 기반으로 합니다.
| 지표 | 테스트된 값 |
|---|---|
| 운영 체제 | Kali Linux |
| 테스트에 사용된 RAM | 8 GB |
| CPU | Intel Core i3-2120 |
| 성공적으로 디컴파일 또는 스캔된 최대 APK | 85 MB |
| 평균 디컴파일 시간 | ~50 - 60초 |
시스템 요구 사항
최소:
- Linux
- 4 GB RAM
- JADX
- APKTool
- unzip
권장:
- Linux
- 8 GB RAM 이상
- 쿼드 코어 CPU
- SSD 저장 장치
ML 시크릿 분류
APKXHunter는 시크릿 탐지 워크플로의 일부로, 전적으로 C로 작성된 경량 머신러닝 기반 시크릿 분류 엔진을 통합합니다. 이는 통계적 머신러닝 모델이며, 대규모 언어 모델, ChatGPT, 생성형 AI 또는 딥러닝 시스템이 아닙니다.
- APKXHunter가 탐지한 시크릿은 통합된 머신러닝 분류 엔진에 의해 분석됩니다.
- 모델은 탐지된 시크릿이 유효하거나 보안상 민감할 확률을 추정합니다.
- 발견 항목은 신뢰도 기반 심각도 점수를 사용하여 우선순위가 지정됩니다.
- ML 엔진은 연구자가 발견 항목을 더 빠르게 분류하도록 지원합니다.
- ML 엔진은 수동 검증을 대체하기보다는 인간 분석을 지원하도록 설계되었습니다.
작동 방식
- 잠재적 시크릿을 탐지합니다.
- 통계적 특징(엔트로피, 문자 분포, 길이, 대문자/소문자 비율, 숫자, 기호 및 기타 통계적 토큰 특성)을 추출합니다.
- 학습된 모델(
model.bin)을 로드합니다. - ML 추론을 수행합니다.
- 신뢰도 확률을 산출합니다.
- 사용자에게 수동 검증을 위해 결과를 제시합니다.
보안 참고 사항
모든 머신러닝 추론은 학습된 model.bin 파일을 사용하여 로컬에서 수행됩니다. APKXHunter는 스캔된 데이터, 탐지된 시크릿 또는 기타 분석 출력을 외부로 전송하지 않습니다. 클라우드 API는 사용되지 않으며, ML 추론에 인터넷 연결이 필요하지 않습니다.
셸 명령어
| 명령어 | 사용법 |
|---|---|
help | 사용 가능한 명령어 표시 |
run | APKX-Hunter 분석 실행 |
clear | 터미널 지우기 |
banner | APKX-Hunter 배너 표시 |
exit | 프레임워크 종료 |
run search <folder> <string> | 코드를 재귀적으로 검색 및 조사 |
run <apk_file/folder> [options] | 분석 스캔 실행 |
설치
Debian / Kali / Ubuntu
Debian 패키지 설치:
sudo dpkg -i apkx-hunter_3.0.0-1_amd64.deb
종속성 관리: JADX, Apktool, Java 및 기타 필수 도구를 자동으로 확인하고 설치합니다.
run install-dependencies
사용법
USAGE
run <package/folder> [options] [options]
일반 옵션
| 플래그 | 설명 |
|---|---|
help | 도움말 메시지를 표시합니다. |
스캔 모드
JADX용 스캔 모드
| 플래그 | 설명 |
|---|---|
fast | 빠른 jadx 디컴파일을 수행하고 추출된 폴더를 스캔합니다. |
deep | 전체 심층 jadx 디컴파일을 수행하고 추출된 폴더를 스캔합니다. |
참고: 이 플래그들은 apk 파일 이름을 지정한 후에만 사용하세요
예시:
run app.apk fast
APKTool용 스캔 모드
| 플래그 | 설명 |
|---|---|
apktool | apktool 디컴파일을 수행하고 추출된 폴더를 스캔합니다. |
참고: 이 플래그들은 apkfile 이름을 지정한 후에만 사용하세요
예시:
run app.apk apktool
폴더에서의 다중 APK 스캐닝 모드
| 플래그 | 설명 |
|---|---|
multi-apk | 다중 APK 디컴파일을 수행하고 추출된 폴더를 스캔합니다. |
참고: apk_files_folder 이름을 지정한 후에만 이 플래그를 사용하세요 예시:
run Apks multi-apk
APK 패키지 스캔 모드:
| 플래그 | 설명 |
|---|---|
extract-multi-apk | 패키지(APKS/APKM/XAPK/ZIP)를 추출하고 추출된 모든 APK를 자동으로 분석합니다. |
참고: 이 플래그들은 apk_package_file 이름을 지정한 후에만 사용하십시오
예시:
run test.apkm extract-multi-apk
폴더 스캔
| 플래그 | 설명 |
|---|---|
folder-scan | 이미 디컴파일된 JADX 소스 디렉터리 또는 임의의 디렉터리를 스캔 |
apktool-folder-scan | 이미 디컴파일된 Apktool 디렉터리를 스캔 — 이 플래그는 APKTOOL로 디컴파일된 apk 폴더를 스캔할 때만 사용하세요. |
참고: 이 플래그들은 스캔 시 folder_name 뒤에만 사용하세요