Sploitus

Exploit for APKiD

kitploit Β· 2026-09-04

Exploit Code

MARKDOWN147 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-REDNAGA-APKID
# APKiD

![Build Status](https://app.travis-ci.com/rednaga/APKiD.svg?branch=master) ![PyPI](https://img.shields.io/pypi/v/apkid.svg) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/apkid.svg) ![PyPI - Format](https://img.shields.io/pypi/format/apkid.svg) ![PyPI - License](https://img.shields.io/pypi/l/apkid.svg)

APKiD прСдоставляСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π±Ρ‹Π» создан APK. Он ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ мноТСство компиляторов, ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‰ΠΈΠΊΠΎΠ², обфускаторов ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ странныС Π²Π΅Ρ‰ΠΈ. Π­Ρ‚ΠΎ _PEiD_ для Android.

![Screen Shot 2019-05-07 at 10 55 00 AM](https://assets.kitploit.com/production/public/readmes/1304/6b02cbe6aecaf08d91e042ccdfa4bfc4b71a3ee43fd4fca6e4f45a30a4ea4e59.png)

Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚ΠΎΠΌ, для Ρ‡Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот инструмСнт, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с:

  * ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ компилятора Android
  * ΠžΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ пиратских ΠΈ врСдоносных Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ APKiD
  * APKiD: PEiD для Android-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (BlackHat EU/UK Arsenal 2018)
  * APKiD: Быстрая идСнтификация ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² AppShielding
  * APKiD: Быстрая идСнтификация ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… RASP SDK (BlackHat USA Arsenal 2023)



## Установка

root@kitploit:~
    
    
    pip install apkid
    

### Docker

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ APKiD с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Docker! ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ git ΠΈ Docker.

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Docker:

root@kitploit:~
    
    
    git clone https://github.com/rednaga/APKiD
    cd APKiD/
    docker build . -t rednaga:apkid
    docker/apkid.sh ~/reverse/targets/android/example/example.apk
    [+] APKiD 2.1.0 :: from RedNaga :: rednaga.io
    [*] example.apk!classes.dex
     |-> compiler : dx
    

## ИспользованиС

root@kitploit:~
    
    
    usage: apkid [-h] [-v] [-t TIMEOUT] [-r] [--scan-depth SCAN_DEPTH]
                 [--entry-max-scan-size ENTRY_MAX_SCAN_SIZE] [--typing {magic,filename,none}] [-j]
                 [-o DIR]
                 [FILE [FILE ...]]
    
    APKiD - Android Application Identifier v2.1.2
    
    positional arguments:
      FILE                                       apk, dex, or directory
    
    optional arguments:
      -h, --help                                 show this help message and exit
      -v, --verbose                              log debug messages
    
    scanning:
      -t TIMEOUT, --timeout TIMEOUT              Yara scan timeout (in seconds)
      -r, --recursive                            recurse into subdirectories
      --scan-depth SCAN_DEPTH                    how deep to go when scanning nested zips
      --entry-max-scan-size ENTRY_MAX_SCAN_SIZE  max zip entry size to scan in bytes, 0 = no limit
      --typing {magic,filename,none}             method to decide which files to scan
    
    output:
      -j, --json                                 output scan results in JSON format
      -o DIR, --output-dir DIR                   write individual results here (implies --json)
    

## ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π½ΠΎΠ²Ρ‹Ρ… ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‰ΠΈΠΊΠΎΠ² / компиляторов / обфускаторов

Если Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ»ΠΈΡΡŒ с APK ΠΈΠ»ΠΈ DEX, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ APKiD Π½Π΅ распознаСт, поТалуйста, ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ issue Π½Π° GitHub ΠΈ сообщитС Π½Π°ΠΌ:

  * Ρ‡Ρ‚ΠΎ, ΠΏΠΎ Π²Π°ΡˆΠ΅ΠΌΡƒ мнСнию, это β€” обфусцировано, ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½ΠΎ ΠΈ Ρ‚.Π΄.
  * Ρ…Π΅Ρˆ Ρ„Π°ΠΉΠ»Π° (MD5, SHA1 ΠΈΠ»ΠΈ SHA256)



ΠœΡ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ для Π»ΡŽΠ±Ρ‹Ρ… ΠΈΠ΄Π΅ΠΉ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ «интСрСсным» для обнаруТСния, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΠΉΡ‚Π΅ΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‰ΠΈΠΊΠ°ΠΌΠΈ, компиляторами ΠΈΠ»ΠΈ обфускаторами. Если Π΅ΡΡ‚ΡŒ интСрСсный Ρ‚Ρ€ΡŽΠΊ anti-disassembler, anti-vm, anti-*, создайтС issue.

ΠŸΡ€ΠΈΠ²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ΡΡ pull request'Ρ‹. Если Π²Ρ‹ отправляСтС Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ Ρ…Π΅Ρˆ Ρ„Π°ΠΉΠ»Π° APK/DEX, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ.

## ЛицСнзия

Π­Ρ‚ΠΎΡ‚ инструмСнт доступСн ΠΏΠΎΠ΄ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ: коммСрчСской, подходящСй для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ, ΠΈ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPL, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ.

Π’ зависимости ΠΎΡ‚ Π²Π°ΡˆΠΈΡ… потрСбностСй Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π½ΠΈΡ… ΠΈ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π°Ρ информация ΠΎ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ… ΠΈ ΡΠΎΠ³Π»Π°ΡˆΠ΅Π½ΠΈΡΡ… для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ доступна Π² Ρ„Π°ΠΉΠ»Π°Ρ… LICENSE.COMMERCIAL ΠΈ LICENSE.GPL.

## Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ послСднюю Π²Π΅Ρ€ΡΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ собствСнныС ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ Ρ‚.Π΄., просто ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ этот Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, скомпилируйтС ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ установитС ΠΏΠ°ΠΊΠ΅Ρ‚ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅:

root@kitploit:~
    
    
    git clone https://github.com/rednaga/APKiD
    cd APKiD
    python prep-release.py
    pip install -e .[dev,test]
    

Если Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈΠ·-Π·Π° ошибок Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, зависящих ΠΎΡ‚ вашСй локальной ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ мСста установки Python, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ„Π»Π°Π³ `--user`. Π­Ρ‚ΠΎ, вСроятно, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ссли Π²Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅:

root@kitploit:~
    
    
    pip install -e .[dev,test] --user
    

Если Π²Ρ‹ обновляСтС ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ запуститС `prep-release.py`, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ….

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Windows, установитС Yara 3.11.0 ΠΈ yara-python-dex ΠΏΠ΅Ρ€Π΅Π΄ компиляциСй

root@kitploit:~
    
    
    pip install yara-python==3.11.0
    pip install wheel
    pip wheel --wheel-dir=yara-python-dex git+https://github.com/MobSF/yara-python-dex.git
    pip install --no-index --find-links=yara-python-dex yara-python-dex
    

## Для ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²

ΠŸΡ€ΠΈ выпускС Π½ΠΎΠ²ΠΎΠΉ вСрсии ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ вСрсия ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° Π² apkid/**init**.py.

Π§Ρ‚ΠΎ касаСтся запуска тСстов, посмотритС .travis.yml, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ настроСны срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ тСстирования, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ тСсты.

ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ скомпилированныС ΠΏΡ€Π°Π²ΠΈΠ»Π°, readme, собСритС ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π½Π° PyPI:

root@kitploit:~
    
    
    ./prep-release.py readme
    rm -f dist/*
    python setup.py sdist bdist_wheel
    twine upload --repository-url https://upload.pypi.org/legacy/ dist/*
    

Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ смотритС Packaging Projects.