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

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

OWASP MASVS 스캐닝 지원
Apkx-Hunter는 이제 15개 카테고리와 166개 탐지 패턴을 갖춘 OWASP MASVS 보안 스캐닝을 포함합니다:
| # | 카테고리 | 패턴 |
|---|---|---|
| 1 | 취약한 암호화 | 28 |
| 2 | 인증서 고정 | 13 |
| 3 | 루트 탐지 | 20 |
| 4 | 안티 디버깅 | 9 |
| 5 | 안티 변조 | 3 |
| 6 | SharedPreferences | 8 |
| 7 | SQLite | 9 |
| 8 | 외부 저장소 | 11 |
| 9 | 동적 코드 로딩 | 10 |
| 10 | 리플렉션 | 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 권한 분석 — 권한 및 내보낸 활동 분석
- 네이티브(.so) 라이브러리 탐지 — 앱에 포함된 네이티브 라이브러리 탐지
- 파일 인벤토리 생성 — 완전한 파일 인벤토리 보고서 생성
- 머신러닝 기반 시크릿 분류 (주요 기능) — 탐지된 시크릿에 대한 ML 지원 신뢰도 점수로 분류 작업을 가속화하고 시크릿 발견의 오탐을 줄임
- 재귀적 멀티-APK 스캐닝 — 대규모 Android 애플리케이션 분석을 위해 여러 APK를 재귀적으로 자동 스캔
- 자동 패키지 추출 — APKS, APKM, XAPK, ZIP 패키지 형식에서 APK를 자동으로 추출 및 분석
- 무음 배치 모드 — 분석 결과를 유지하면서 대규모 스캔 중 더 깔끔한 터미널 출력
- 스캔 종료 통계 — 스캔된 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 언어로 작성된 경량 머신러닝 기반 시크릿 분류 엔진을 통합합니다. 이는 통계적 머신러닝 모델입니다 — 대규모 언어 모델, ChatGPT, 생성형 AI 또는 딥러닝 시스템이 아닙니다.
- APKXHunter가 탐지한 시크릿은 통합된 머신러닝 분류 엔진에 의해 분석됩니다.
- 모델은 탐지된 시크릿이 유효하거나 보안에 민감할 확률을 추정합니다.
- 결과는 신뢰도 기반 심각도 점수를 사용하여 우선순위가 지정됩니다.
- ML 엔진은 연구원이 결과를 더 빠르게 분류하는 데 도움을 줍니다.
- ML 엔진은 수동 검증을 대체하기보다 인간 분석을 지원하도록 설계되었습니다.
작동 방식
- 잠재적 시크릿 탐지.
- 통계적 특징 추출(엔트로피, 문자 분포, 길이, 대문자/소문자 비율, 숫자, 기호 및 기타 통계적 토큰 특성).
- 훈련된 모델(
model.bin) 로드. - ML 추론 수행.
- 신뢰도 확률 생성.
- 수동 검증을 위해 사용자에게 결과 제시.
보안 참고 사항
모든 머신러닝 추론은 훈련된 model.bin 파일에서 로컬로 수행됩니다. APKXHunter는 스캔된 데이터, 탐지된 시크릿 또는 기타 분석 출력을 외부로 전송하지 않습니다 — 클라우드 API가 사용되지 않으며, ML 추론에 인터넷 연결이 필요하지 않습니다.
설치
Debian / Kali / Ubuntu
Debian 패키지 설치:
sudo dpkg -i apkx-hunter_2.7.2-1_amd64.deb
의존성 관리: JADX, Apktool, Java 및 기타 필수 도구를 자동으로 확인하고 설치합니다.
--install-dependencies
사용법
USAGE
apkxhunter <package/folder> [options] [options]
일반 옵션
| 플래그 | 설명 |
|---|---|
--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 권한 또는 내보낸 활동을 분석합니다. |
--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
예정 기능
다음 업데이트는 보안 결과를 더 정확하고, 체계적이며, 실행 가능하고, 분석하기 쉽게 만드는 동시에 불필요한 오탐을 크게 줄이는 데 초점을 맞출 것입니다.
개선된 결과 분석
- 보안 카테고리별로 MASVS 분석 분리.
- MASVS 결과의 체계적인 구성 개선.
- 더 정밀한 MASVS 탐지 규칙.
- 각 MASVS 결과와 연관된 더 나은 증거.
- 개선된 심각도 분류.
- 명확한 심각 / 높음 / 중간 심각도 수준.
- 보안 카테고리별 결과 그룹화.
- 파일별 및 줄별 증거.
- 일반적인 비-시크릿 문자열에 대한 오탐 감소.
- 높은 신뢰도의 시크릿에 대한 더 나은 우선순위화.
- 대규모 APK에 대한 확장성 개선.
- 수만 개의 파일을 포함하는 대규모 프로젝트 처리 개선.
- 추가 오류 처리 및 검증.
- 새로운 보안 탐지 패턴.
피드백 및 지원
APKXHunter는 활발히 유지 관리되는 오픈소스 프로젝트입니다.
다음과 같은 경우:
- 버그를 발견한 경우
- 기능 요청이 있는 경우
- 개선 사항을 제안하고 싶은 경우
- 보안 문제를 발견한 경우
- 문서 제안이 있는 경우
GitHub Issue를 열거나 저에게 직접 연락해 주세요:
여러분의 피드백은 모든 사람을 위한 APKXHunter 개선에 도움이 됩니다.
개발 및 기여
APKX-Hunter는 현재 작성자에 의해서만 유지 관리됩니다. 현재 외부 코드 기여는 받지 않습니다. 제안, 버그 보고서 및 보안 관련 피드백은 여전히 환영합니다.
면책 조항
APKXHunter는 다음 용도로만 사용하도록 엄격히 의도되었습니다:
- 교육 목적
- 승인된 침투 테스트
- 방어적 보안 연구
사용자는 애플리케이션을 분석하기 전에 적절한 승인을 받았는지 확인할 책임이 전적으로 있습니다. 소유하지 않거나 테스트할 명시적 권한이 없는 애플리케이션이나 시스템에 대해 이 도구를 무단으로 사용하는 것은 불법일 수 있습니다.
라이선스
APKXHunter는 Apache License 2.0에 따라 라이선스가 부여됩니다.
Copyright © 2026 Devesh Kachhawaha (SyscallX-18113).