
* APKiD: Быстрая идентификация продуктов AppShielding
* APKiD: Быстрая идентификация мобильных RASP SDK (BlackHat USA Arsenal 2023)
Вы также можете запустить APKiD с помощью Docker! Конечно, для этого необходимо установить git и Docker.
git clone
docker/apkid.sh ~/reverse/targets/android/example/example.apk
[+] APKiD 2.1.0 :: from RedNaga :: rednaga.io
usage: apkid [-h] [-v] [-t TIMEOUT] [-r] [--scan-depth SCAN_DEPTH]
[--entry-max-scan-size ENTRY_MAX_SCAN_SIZE] [--typing {magic,filename,none}] [-j]
APKiD - Android Application Identifier v2.1.2
FILE apk, dex, or directory
-h, --help show this help message and exit
-v, --verbose log debug messages
-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
-j, --json output scan results in JSON format
-o DIR, --output-dir DIR write individual results here (implies --json)
## Отправка новых упаковщиков / компиляторов / обфускаторов
Если вы столкнулись с APK или DEX, которые APKiD не распознает, пожалуйста, откройте issue на GitHub и сообщите нам:
* что, по вашему мнению, это — обфусцировано, упаковано и т.д.
Мы открыты для любых идей о том, что может быть «интересным» для обнаружения, так что не ограничивайтесь только упаковщиками, компиляторами или обфускаторами. Если есть интересный трюк anti-disassembler, anti-vm, anti-*, создайте issue.
Приветствуются pull request'ы. Если вы отправляете новое правило, обязательно укажите хеш файла APK/DEX, чтобы мы могли проверить правило.
Этот инструмент доступен под двойной лицензией: коммерческой, подходящей для проектов с закрытым исходным кодом, и лицензией GPL, которую можно использовать в программном обеспечении с открытым исходным кодом.
В зависимости от ваших потребностей вы должны выбрать одну из них и следовать ее политике. Подробная информация о политиках и соглашениях для каждого типа лицензии доступна в файлах LICENSE.COMMERCIAL и LICENSE.GPL.
Если вы хотите установить последнюю версию, чтобы вносить изменения, разрабатывать собственные правила и т.д., просто клонируйте этот репозиторий, скомпилируйте правила и установите пакет в редактируемом режиме:
git clone
Если вышеуказанное не работает из-за ошибок разрешений, зависящих от вашей локальной машины и места установки Python, попробуйте указать флаг `--user`. Это, вероятно, необходимо, если вы не используете виртуальное окружение:
Если вы обновляете какие-либо правила, обязательно запустите `prep-release.py`, чтобы перекомпилировать их.
Если вы используете Windows, установите Yara 3.11.0 и yara-python-dex перед компиляцией
pip wheel --wheel-dir=yara-python-dex git+
pip install --no-index --find-links=yara-python-dex yara-python-dex
При выпуске новой версии убедитесь, что версия обновлена в apkid/**init**.py.
Что касается запуска тестов, посмотрите .travis.yml, чтобы узнать, как настроены среда разработки и тестирования, а также как запускаются тесты.
Обновите скомпилированные правила, readme, соберите пакет и загрузите его на PyPI:
twine upload --repository-url dist/*
Для получения дополнительной информации смотрите Packaging Projects.
The full story
This article is one source in a clustered incident — the cluster page carries the summary, timeline and every other outlet covering it.
