Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
apk-info — APK 완전 기능 파서 | Kitploit
도구/GitHubGitHub/delvinru/apk-info
Android SecurityStatic AnalysisReverse EngineeringForensicsMalware AnalysisBinary Analysis
GitHubdelvinru/apk-info

apk-info

APK 완전 기능 파서

저장소 보기
133173일 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

apk-info

Crates.io Version docs.rs PyPI - Version

풀 기능을 갖춘 apk 파서입니다.

특징

  • 멀웨어에 친화적인 zip 추출기. BadPack 기술에 관한 훌륭한 문서;
  • 멀웨어에 친화적인 axml 및 arsc 추출기;
  • 완전한 AXML (Android Binary XML) 구현;
  • 완전한 ARSC (Android Resource) 구현;
  • APK Signature Block 42에 포함된 정보 추출 지원:
    • APK 시그니처 스키마 v1;
    • APK 시그니처 스키마 v2;
    • APK 시그니처 스키마 v3;
    • APK 시그니처 스키마 v3.1;
    • Stamp Block v1 & v2;
    • Apk Channel Block;
    • Packer NG v2;
    • Vasdolly v2
    • Google Play Frosting (계획은 있지만, 이에 대한 정보가 극히 부족합니다);
  • Android OS가 수행하는 방식에 기반한 MainActivity의 올바른 추출;
  • 타이핑이 포함된 python 3.10+ 바인딩 - 더 이상 # type: ignore 필요 없음;
  • 그리고 물론 빠른 파서 - 🙃

시작하기

cli

설치

root@kitploit:~
cargo install apk-info-cli

도움말

root@kitploit:~
A command-line tool to inspect and extract APK files

Usage: apk-info [COMMAND]

Commands:
  show        Show basic information about apk file
  extract     Unpack apk files as zip archive [aliases: x]
  axml        Read and pretty-print binary AndroidManifest.xml
  completion  Generate shell completion
  help        Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

Python

설치

root@kitploit:~
uv pip install apk-info

APK의 기본 정보 가져오기

root@kitploit:~
from apk_info import APK

apk = APK("./path-to-file.apk")
package_name = apk.get_package_name()
main_activities = apk.get_main_activities()
min_sdk = apk.get_min_sdk_version()

print(f"Package Name: {package_name}")
print(f"Minimal SDK: {min_sdk}")

if not main_activities:
    print("apk is not launchable!")
    exit()

print(f"Main Activity: {package_name}/{main_activities[0]}")

시그니처 정보 가져오기

root@kitploit:~
import sys

from apk_info import APK, Signature

if len(sys.argv) < 2:
    print(f"usage: {sys.argv[0]} <apk>")
    sys.exit(1)

file = sys.argv[1]
apk = APK(file)

signatures = apk.get_signatures()
for signature in signatures:
    match signature:
        case Signature.V1() | Signature.V2() | Signature.V3() | Signature.V31():
            for cert in signature.certificates:
                print(f"{cert.subject=} {cert.issuer=} {cert.valid_from=} {cert.valid_until=}")
        case Signature.ApkChannelBlock():
            print(f"got apk channel block: {signature.value}")
        case _:
            print(f"oh, cool, library added some new feature - {signature}")

성능 분석

환경:

  • OS: macOS Tahoe 26.0.1 arm64
  • CPU: Apple M3 Pro (12) @ 4.06 GHz

스크립트 script:

  1. 파일에서 사용 가능한 모든 시그니처 추출;
  2. 패키지 이름 추출;
  3. 최소 SDK 버전 추출;
  4. 모든 Main Activity 목록 가져오기;
  5. 애플리케이션 이름 가져오기;

apk-info 라이브러리:

  • 빌드 - release-lto;
  • Python 바인딩 (공정한 비교);

테스트 케이스 (클린 컬렉션):

  • 152개의 apk 파일;
  • 총 크기 - 20GB;
  • 로깅 모드 - 경고;
#apk-infoandroguard
1

테스트 케이스 (멀웨어 컬렉션):

  • 3084개의 apk 파일;
  • 총 크기 - 23GB;
  • 로깅 모드 - 경고;

[!IMPORTANT] 이 세트에는 androguard가 파싱할 수 없는 많은 악성 샘플이 포함되어 있습니다.

#apk-infoandroguard
1

평균적으로 속도 향상은 약 10배입니다.

주요 장점은 apk-info가 androguard보다 더 많은 악성 파일을 파싱할 수 있다는 것입니다.

FAQ

  • 왜 androguard를 사용하지 않나요?

제 프로젝트의 대부분은 사용하기 불편한 것에서 탄생했습니다. Androguard는 그 자체로 훌륭한 도구이지만 (제 생각에는) 유지 관리가 불가능하고 프로덕션 준비 코드에는 적합하지 않습니다. 또한 모든 로직이 최적화되지 않은 방식으로 작성되어 있어 많은 수의 파일을 분석하는 데 적합하지 않습니다.

  • apk를 수정하고 싶은데, 이 라이브러리로 어떻게 하나요?

이 라이브러리는 읽기 전용 모드로만 설계되었습니다. apk에서 정보를 쉽고 빠르게 추출할 수 있는 좋은 도구가 필요했기 때문입니다. 다른 좋은 도구들이 많이 있습니다.

크레딧

  • androguard
  • apkInspector
도구 다운로드
0.98s user 4.32s system 80% cpu 6.584 total
57.39s user 4.88s system 97% cpu 1:03.85 total
20.96s user 4.23s system 79% cpu 6.486 total57.98s user 5.04s system 97% cpu 1:04.80 total
30.95s user 4.15s system 79% cpu 6.422 total55.56s user 4.48s system 97% cpu 1:01.55 total
2.49s user 4.74s system 73% cpu 9.840 total
141.29s user 6.86s system 98% cpu 2:31.09 total
22.50s user 4.77s system 75% cpu 9.641 total138.04s user 6.32s system 97% cpu 2:27.33 total
32.49s user 4.78s system 75% cpu 9.650 total139.33s user 6.65s system 98% cpu 2:28.87 total