Сканирование файла APK для URI, конечных точек и секретов.

Установить ApkLeaks довольно просто:
$ pip3 install apkleaksРепозиторий клона и установить требования:
$ git clone https://github.com/dwisiswant0/apkleaks
$ cd apkleaks/
$ pip3 install -r requirements.txtПотяните изображение Docker, работая:
$ docker pull dwisiswant0/apkleaks:latestApkleaks использует Jadx Disassassembler для декомпиляции файлов APK. Если JADX не присутствует в вашей системе, он побудит вас загрузить его.
Просто,
$ apkleaks -f ~ /path/to/file.apk
# from Source
$ python3 apkleaks.py -f ~ /path/to/file.apk
# or with Docker
$ docker run -it --rm -v /tmp:/tmp dwisiswant0/apkleaks:latest -f /tmp/file.apkВот все варианты, которые он поддерживает.
| Аргумент | Описание | Пример |
|---|---|---|
| -f, - -file | Файл APK для сканирования | apkleaks -f file.apk |
| -О, - -вывод | Записать в результаты файла (случайное, если не установлено) | apkleaks -f file.apk -o results.txt |
| -p, - -pattern | Путь к пользовательским узорам json | apkleaks -f file.apk -p custom-rules.json |
| -a, -args | Дизассемблер аргументы | apkleaks -f file.apk --args="--deobf --log-level DEBUG" |
| -Джсон | Сохранить как формат JSON | apkleaks -f file.apk -o results.json --json |
В общем, если вы не предоставите аргумент -o , то он автоматически генерирует файл результатов.
Кончик
По умолчанию он также сохранит результаты в формате текста, используйте аргумент --json , если вы хотите формат вывода JSON.
Пользовательские шаблоны могут быть добавлены со следующим аргументом для предоставления конфиденциальных правил поиска в формате файла JSON: --pattern /path/to/custom-rules.json . Если файл не установлен, инструмент будет использовать шаблоны по умолчанию, найденные в файле regexes.json.
Вот пример того, как может выглядеть пользовательский файл шаблонов:
// custom-rules.json
{
"Amazon AWS Access Key ID" : " AKIA[0-9A-Z]{16} " ,
// ...
}Чтобы запустить инструмент, используя эти пользовательские правила, используйте следующую команду:
$ apkleaks -f /path/to/file.apk -p rules.json -o ~ /Documents/apkleaks-results.txt Мы даем пользователю полное усмотрение для передачи аргументов Disasssembler. Например, если вы хотите активировать потоки в процессе декомпиляции jadx , вы можете добавить его с аргументом -a/--args , пример: --args="--threads-count 5" .
$ apkleaks -f /path/to/file.apk -a "--deobf --log-level DEBUG"
Предупреждение
Пожалуйста, обратите внимание на аргументы по умолчанию, которые мы используем для предотвращения столкновений.
apkleaks распределяется в соответствии с Apache 2.
Поскольку этот инструмент включает в себя некоторые вклады, а я не мудак, я публично благодарен следующим пользователям за помощь и ресурсы:
apkurlgrep , поэтому этот инструмент был сделан.truffleHogRegexes .LinkFinder .gf Patterns.dex2jar .SHA2048#4361 (пользователь Discord) , которые помогают мне переносить код в Python3.NotKeyHacks .