
Намеренно уязвимое Android-приложение.
Намеренно уязвимое Android-приложение для обучения безопасности
Возможности • Скриншоты • Установка • Задания • Вклад • Поддержка
Allsafe — это намеренно уязвимое Android-приложение, созданное для энтузиастов безопасности, пентестеров и разработчиков, желающих изучить безопасность Android-приложений. В отличие от типичных CTF-приложений, Allsafe имитирует реальное приложение с использованием современных библиотек и технологий, предоставляя практический опыт выявления и эксплуатации уязвимостей Android.
# Загрузите последний APK из релизов
wget https://github.com/t0thkr1s/allsafe/releases/latest/download/allsafe.apk
# Установите через ADB
adb install allsafe.apk
# Клонируйте репозиторий
git clone https://github.com/t0thkr1s/allsafe.git
cd allsafe
# Соберите APK
./gradlew assembleDebug
# Установите APK
adb install app/build/outputs/apk/debug/app-debug.apk
Приложение содержит различные задания по безопасности, упорядоченные по сложности:
Простая уязвимость раскрытия информации. Используйте утилиту командной строки logcat, чтобы обнаружить конфиденциальные данные.
adb shell 'pidof infosecadventures.allsafe'
adb shell 'logcat --pid [PID] | grep secret'
Некоторые учётные данные оставлены в коде. Ваша задача — восстановить приложение и найти чувствительную информацию.
Это чисто для практики Frida. Сделайте так, чтобы код считал, что ваше устройство не рутировано!
Безопасная загрузка модулей со сторонними приложениями — непростая задача. Напишите PoC-приложение и эксплуатацию уязвимости!
Ещё одно задание на Frida. Реальной уязвимости здесь нет, просто развлекайтесь, обходя защитные флаги!
Привязка сертификатов реализована с помощью библиотеки OkHttp. Вам нужно обойти её, чтобы просматривать трафик в Burp Suite.
В приложении есть уязвимый broadcast receiver. Запустите его с правильными данными — и готово!
Аналогично небезопасному broadcast receiver, вам нужно передать правильный параметр запроса, чтобы выполнить задание!
Обычная SQL-инъекция, которую можно найти в веб-приложениях. Не нужно декомпилировать код, чтобы обойти механизм входа.
Это задание также можно выполнить без декомпиляции приложения. Вызовите диалоговое окно и прочитайте файлы!
В этом задании вам нужно изменить поток выполнения приложения, отредактировав код Smali. Затем пересоберите и подпишите APK!
Приложение использует нативную библиотеку, которая проверяет введённый пароль. Восстановите библиотеку, чтобы найти пароль, затем используйте Frida для перехвата нативного метода.
Ознакомьтесь с моей коллекцией скриптов Frida для пентеста Android: https://github.com/t0thkr1s/frida
Любой вклад приветствуется! Если вы нашли баг, у вас есть предложение или вы хотите добавить новое задание:
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)Если этот проект оказался для вас полезным или ценным, пожалуйста, рассмотрите:
Bitcoin (BTC)
bc1qd44kvj6zatjgn27n45uxd3nprzt6rm9x9g2yc8
Ethereum (ETH)
0x1835a58E866a668C48Ee63d32432C7Fe28aF54b4
Это приложение предназначено исключительно для образовательных целей. Его следует использовать только в контролируемых средах, где у вас есть явное разрешение. Разработчики не несут ответственности за любое неправомерное использование или ущерб, причинённый этим приложением.
Не используйте это приложение:
Этот проект лицензирован под GNU General Public License v3.0 — см. файл LICENSE.