
Apkx-Hunter v2.7.0
C 기반 Android 정적 분석 프레임워크로, 디컴파일, 비밀 탐지, 엔드포인트 발견, 권한 분석, 네이티브 라이브러리 스캐닝과 ML 기반 비밀 분류를 지원합니다.
APKX-Hunter v2.7.0 — Debian 패키지 릴리스

APKX-Hunter는 전적으로 C 언어로 작성된 오픈소스 Android 정적 분석 프레임워크로, Android 보안 평가, 리버스 엔지니어링, 악성코드 분석, OWASP MASVS 규정 준수 스캐닝, 버그 바운티 헌팅, 침투 테스트를 위해 특별히 제작되었습니다.
이 프레임워크는 APK, APKS, APKM, XAPK, ZIP 아카이브를 포함한 지원되는 Android 패키지 형식을 자동으로 추출하고 분석하여 단일 애플리케이션 분석과 대규모 Android 애플리케이션 분석을 모두 지원합니다. 재귀적 멀티-APK 스캐닝과 **무음 배치 모드(Silent Batch Mode)**를 통해 APKX-Hunter는 대규모 Android 애플리케이션 컬렉션을 효율적으로 처리하면서 깔끔하고 체계적이며 실행 가능한 결과를 생성하도록 설계되었습니다.
APKX-Hunter는 디컴파일, AndroidManifest 분석, 권한 분석, exported 컴포넌트 탐지, 엔드포인트 발견, 하드코딩된 시크릿 탐지, 클라우드 구성 발견, 네이티브 라이브러리 탐지, OWASP MASVS 보안 검사 등 여러 정적 분석 기법을 결합하여 Android 애플리케이션 내부의 보안 관련 정보를 발견합니다.
APKX-Hunter는 또한 전적으로 C 언어로 작성된 경량 머신러닝 기반 시크릿 분류 엔진을 통합하여, 탐지된 시크릿을 신뢰도와 심각도에 따라 자동으로 분류함으로써 보안 연구원들이 가치 있는 결과를 우선순위화하고, 오탐을 줄이며, 취약점 분류(트라이지) 작업을 가속화할 수 있도록 돕습니다.
모든 스캔이 끝나면 APKX-Hunter는 스캔된 APK 수, 분석된 파일 수, 탐지된 시크릿 수, 탐지된 패턴 수, MASVS 결과 수를 포함한 상세한 스캔 통계를 생성하여 연구원들에게 전체 보안 평가에 대한 포괄적인 개요를 제공합니다.
- GitHub: https://github.com/SyscallX-18113/Apkx-Hunter
- 개발자: SyscallX-18113
- 버전: v2.7.0

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

기능
- Linux 및 Debian 통합 — 네이티브 Debian 패키지(.deb), 시스템 전체 설치, 데스크톱 애플리케이션 런처, 애플리케이션 메뉴 통합, 사용자 지정 애플리케이션 아이콘, 자동 프레임워크 자산 설치, 내장 의존성 관리자(--install-dependencies)
- OWASP MASVS 지원 — Apkx-Hunter는 이제 14개 이상의 카테고리와 160개 이상의 탐지 패턴을 갖춘 포괄적인 OWASP MASVS 보안 스캐닝을 포함합니다:
- JADX 디컴파일 — 빠른 및 심층 디컴파일 모드
- APKTool 디컴파일 — 전체 APKTool 기반 디컴파일 및 스캐닝
- 아카이브 추출 — APK, APKM, APKS, XAPK, ZIP 형식 지원
- 디컴파일된 폴더 스캐닝 — 이미 디컴파일된 JADX 소스 디렉터리 스캔
- APKTool 폴더 스캐닝 — 이미 디컴파일된 APKTool 디렉터리 스캔
- 시크릿 탐지 — API 키, 토큰, 비밀번호, 내장 시크릿 발견
- 엔드포인트 발견 — URL, 엔드포인트, 보안 관련 패턴 식별
- Android 권한 분석 — 권한 및 exported 활동 분석
- 네이티브(.so) 라이브러리 탐지 — 앱에 번들된 네이티브 라이브러리 탐지
- 파일 인벤토리 생성 — 완전한 파일 인벤토리 보고서 생성
- 머신러닝 기반 시크릿 분류 (핵심 기능) — 탐지된 시크릿에 대한 ML 지원 신뢰도 점수를 제공하여 트라이지(triage)를 가속화하고 시크릿 발견의 오탐을 줄임
- 재귀적 멀티-APK 스캐닝 — 대규모 Android 애플리케이션 분석을 위해 여러 APK를 재귀적으로 자동 스캔
- 자동 패키지 추출 — APKS, APKM, XAPK, ZIP 패키지 형식에서 APK를 자동으로 추출 및 분석
- 무음 배치 모드(Silent Batch Mode) — 분석 결과를 보존하면서 대규모 스캔 중 깔끔한 터미널 출력 제공
- 스캔 종료 통계 — 스캔된 APK 수, 분석된 파일 수, 탐지된 시크릿 수, 탐지된 패턴 수, MASVS 결과 수를 포함한 상세 스캔 요약 표시
- 향상된 명령줄 인터페이스 — 개선된 인수 파싱, 입력 검증, 사용자 친화적인 오류 보고
- 프레임워크 안정성 개선 — 향상된 오류 처리, 메모리 관리, 전반적인 프레임워크 신뢰성
머신러닝 모델
APKXHunter는 오프라인 머신러닝 분류기를 사용합니다. model.bin에는 탐지된 시크릿의 신뢰도 점수를 계산하는 데 사용되는 훈련된 수치 가중치만 포함되어 있습니다.
실행 파일이 아닙니다.
코드를 포함하지 않습니다.
이진 데이터로만 로드됩니다.
- 오프라인 ML 추론 — 모든 모델 추론은 로컬에서 실행되며 클라우드 API나 인터넷 연결이 필요하지 않음
- 신뢰도 확률 점수 — 탐지된 각 시크릿은 훈련된 모델로부터 신뢰도 확률을 받음
프로젝트 통계
- 언어: C
- 코드베이스: 5,800+ 라인
- 아키텍처: 모듈식
- 플랫폼: 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 언어로 작성된 경량 머신러닝 기반 시크릿 분류 엔진을 통합합니다. 이는 통계적 머신러닝 모델이며 — 대규모 언어 모델(LLM), ChatGPT, 생성형 AI 또는 딥러닝 시스템이 아닙니다.
- APKXHunter가 탐지한 시크릿은 통합된 머신러닝 분류 엔진에 의해 분석됩니다.
- 모델은 탐지된 시크릿이 유효하거나 보안에 민감할 확률을 추정합니다.
- 결과는 신뢰도 기반 심각도 점수를 사용하여 우선순위화됩니다.
- ML 엔진은 연구원들이 결과를 더 빠르게 트라이지(triage)할 수 있도록 지원합니다.
- ML 엔진은 수동 검증을 대체하기보다 인간 분석을 지원하도록 설계되었습니다.
작동 방식
- 잠재적 시크릿을 탐지합니다.
- 통계적 특징(엔트로피, 문자 분포, 길이, 대문자/소문자 비율, 숫자, 기호 및 기타 통계적 토큰 특성)을 추출합니다.
- 훈련된 모델(
model.bin)을 로드합니다. - ML 추론을 수행합니다.
- 신뢰도 확률을 생성합니다.
- 수동 검증을 위해 사용자에게 결과를 제시합니다.
보안 참고 사항
모든 머신러닝 추론은 훈련된 model.bin 파일에서 로컬로 수행됩니다. APKXHunter는 스캔된 데이터, 탐지된 시크릿 또는 기타 분석 출력을 외부로 전송하지 않습니다 — 클라우드 API가 사용되지 않으며, ML 추론에 인터넷 연결이 필요하지 않습니다.
설치
Debian / Kali / Ubuntu
Debian 패키지를 설치합니다:
sudo dpkg -i apkx-hunter_2.7-1_amd64.deb
의존성 관리: JADX, Apktool, Java 및 기타 필수 도구를 자동으로 확인하고 설치합니다.
--install-dependencies
사용법
사용법
apkxhunter <패키지/폴더> [옵션] [옵션]
일반 옵션
| 플래그 | 설명 |
|---|---|
--help | 도움말 메시지 표시. |
스캔 모드
JADX 스캔 모드
| 플래그 | 설명 |
|---|---|
--fast | 빠른 jadx 디컴파일을 수행하고 추출된 폴더를 스캔합니다. |
--deep | 완전한 심층 jadx 디컴파일을 수행하고 추출된 폴더를 스캔합니다. |
참고: 이 플래그는 apk 파일 이름 뒤에만 사용하세요.
예시:
apkxhunter app.apk --fast
apkxhunter app.apk --deep
APKTool 스캔 모드
| 플래그 | 설명 |
|---|---|
--apktool | apktool 디컴파일을 수행하고 추출된 폴더를 스캔합니다. |
참고: 이 플래그는 apk 파일 이름 뒤에만 사용하세요.
예시:
apkxhunter app.apk --apktool
폴더에서 멀티 APK 스캔 모드
| 플래그 | 설명 |
|---|---|
--multi-apk | 멀티 APK 디컴파일을 수행하고 추출된 폴더를 스캔합니다. |
참고: 이 플래그는 apk_files_folder 이름 뒤에만 사용하세요.
예시:
apkxhunter Apks --multi-apk
APK 패키지 스캐닝 모드:
| 플래그 | 설명 |
|---|---|
--extract-multi-apk | 패키지(APKS/APKM/XAPK/ZIP)를 추출하고 추출된 모든 APK를 자동으로 분석합니다. |
참고: 이 플래그는 apk_package_file 이름 뒤에만 사용하세요.
예시:
apkxhunter test.apkm --extract-multi-apk
폴더 스캔
| 플래그 | 설명 |
|---|---|
--folder-scan | 이미 디컴파일된 JADX 소스 디렉터리 또는 모든 디렉터리를 스캔합니다. |
--apktool-folder-scan | 이미 디컴파일된 Apktool 디렉터리를 스캔합니다 — 이 플래그는 APKTOOL로 디컴파일된 apk 폴더를 스캔할 때만 사용하세요. |
참고: 이 플래그는 스캔할 folder_name 뒤에만 사용하세요.
예시:
apkxhunter <folder_name> --folder-scan
apkxhunter <folder_name_decompiled_by_apktool> --apktool-folder-scan
apkxhunter <folder_name> --folder-scan --secrets
apkxhunter <folder_name> --folder-scan --masvs
apkxhunter <folder_name> --folder-scan --permissions
apkxhunter <folder_name_decompiled_by_apktool> --apktool-folder-scan --secrets
apkxhunter <folder_name_decompiled_by_apktool> --apktool-folder-scan --files
개별 스캐너
| 플래그 | 설명 |
|---|---|
--secrets | API 키, 토큰, 비밀번호 및 기타 내장 시크릿을 스캔합니다. |
--permissions | Android 권한 또는 exported 활동을 분석합니다. |
--endpoints | URL, 엔드포인트 및 패턴을 발견합니다. |
--files | .so 이름 파일 추출과 함께 파일 인벤토리 보고서를 생성합니다. |
--masvs | OWASP MASVS 스캔. |
참고: 이 플래그는 스캔 모드 플래그 또는 폴더 분석 플래그 뒤에만 사용하세요.
예시:
apkxhunter app.apk --deep --secrets
apkxhunter Apks_folder --deep --multi-apk --secrets
apkxhunter test.apkm --extract-multi-apk --secrets
apkxhunter app.apk --deep --masvs
apkxhunter <folder_name> --folder-scan --secrets
apkxhunter <folder_name> --folder-scan --permissions
apkxhunter <folder_name_decompiled_by_apktool> --apktool-folder-scan --endpoints
apkxhunter app.apk --deep --files
디컴파일 전용
| 플래그 | 설명 |
|---|---|
--decompile | JADX 또는 APKTOOL을 사용하여 APK를 디컴파일합니다 — 디컴파일 후 폴더 스캔을 실행하지 않습니다. |
참고: 이 플래그는 스캔 모드 플래그 뒤에만 사용하세요.
예시:
apkxhunter app.apk --deep --decompile
apkxhunter app.apk --fast --decompile
apkxhunter app.apk --apktool --decompile
아카이브 추출
| 플래그 | 설명 |
|---|---|
--extract | 분석 전에 지원되는 Android 패키지를 추출하고 추출된 apk를 extracted_output_<apk_name> 폴더에 저장합니다. |
지원 형식: APK, APKM, APKS, XAPK, ZIP
예시:
apkxhunter app.apkm --extract
출력 디렉터리
JADX 분석
Jadx_output_<apk_name>/
결과 보고서:
Result_Jadx_output_<apk_name>/
|- secrets_findings.txt -> 내장 API 키, 토큰, 시크릿
|- permissions.txt -> Android 권한 분석
|- pattern_findings.txt -> URL, 엔드포인트 및 보안 패턴
|- files.txt -> 파일 인벤토리 보고서
|- native_library_files.txt -> 탐지된 네이티브(.so) 라이브러리
|- masvs_findings.txt -> OWASP MASVS 스캔 결과
폴더 스캔 결과
결과 보고서:
Folder-scan_Result_<folder_name>/
|- secrets_findings.txt
|- permissions.txt
|- pattern_findings.txt
|- files.txt
|- native_library_files.txt
|- masvs_findings.txt
APKTool 분석
Apktool_output_<apk_name>/
결과 보고서:
Apktool_Result_<apk_name>/
|- secrets_findings.txt
|- permissions.txt
|- endpoint_findings.txt
|- files.txt
|- native_library_files.txt
|- masvs_findings.txt
APKTOOL 폴더 스캔 결과
결과 보고서:
Apktool-folder-scan_Result_<folder_name>/
|- secrets_findings.txt
|- permissions.txt
|- endpoint_findings.txt
|- files.txt
|- native_library_files.txt
|- masvs_findings.txt
아카이브 추출
extracted_output_<package_name>/
|- 추출된 APK 파일
보고서 파일
| 파일 | 설명 |
|---|---|
secrets_findings.txt | 내장 API 키, 토큰, 시크릿 |
permissions.txt | Android 권한 분석 |
pattern_findings.txt | URL, 엔드포인트 및 보안 패턴 (JADX / 폴더 스캔 출력) |
endpoint_findings.txt | URL, 엔드포인트 및 보안 패턴 (APKTool 출력) |
files.txt | 파일 인벤토리 보고서 |
native_library_files.txt | 탐지된 네이티브(.so) 라이브러리 |
masvs_findings.txt | OWASP MASVS 스캔 결과 |
지원 형식
APK, APKM, APKS, XAPK, ZIP
다음 업데이트
APKX-Hunter는 활발히 개발 중입니다. 향후 릴리스에서 보고 싶은 기능, 개선 사항 또는 분석 기능이 있다면 제안을 환영합니다. 아래에 나열된 지원 채널 중 하나를 통해 아이디어를 제출해 주세요. 커뮤니티 피드백은 APKX-Hunter의 향후 개발 방향을 형성하는 데 도움이 됩니다.
피드백 및 지원
APKXHunter는 활발히 유지 관리되는 오픈소스 프로젝트입니다.
다음과 같은 경우:
- 버그를 발견했거나
- 기능을 요청하고 싶거나
- 개선을 제안하고 싶거나
- 보안 문제를 발견했거나
- 문서 제안이 있거나
GitHub Issue를 열거나 저에게 직접 연락해 주세요:
여러분의 피드백은 APKXHunter를 모두를 위해 개선하는 데 도움이 됩니다.
면책 조항
APKXHunter는 다음 용도로만 엄격히 사용됩니다:
- 교육 목적
- 승인된 침투 테스트
- 방어적 보안 연구
사용자는 애플리케이션을 분석하기 전에 적절한 승인을 받았는지 확인할 책임이 전적으로 있습니다. 소유하지 않거나 테스트에 대한 명시적 허가를 받지 않은 애플리케이션이나 시스템에 대해 이 도구를 무단 사용하는 것은 불법일 수 있습니다.
라이선스
APKXHunter는 Apache License 2.0에 따라 라이선스가 부여됩니다.
Copyright © 2026 Devesh Kachhawaha (SyscallX-18113).