
droidground v1.0.15
Гибкая площадка для Android CTF-задач.
DroidGround
В традиционных CTF-задачах флаги часто прячут в файлах на системе, и атакующим приходится эксплуатировать уязвимости, чтобы их извлечь. Однако в мире Android такой подход плохо работает. APK-файлы легко скачать и декомпилировать, поэтому размещение флага на устройстве обычно делает его извлечение тривиальным с помощью статического анализа или трюков с эмулятором. Это серьёзно ограничивает возможность создавать реалистичные задачи, ориентированные на время выполнения.
DroidGround создан для решения этой проблемы.
Это специально разработанная платформа для проведения задач по взлому Android-приложений в контролируемой и реалистичной среде, где атакующие ограничены ровно настолько, чтобы решать задачи предполагаемым способом.
Что важно, участники могут быть заперты внутри среды приложения. Модульность инструмента позволяет настроить, может ли пользователь запустить шелл, читать произвольные файлы или устанавливать сторонние инструменты. Всё можно настроить так, чтобы единственным способом получить флаг было понимание и эксплуатация самого приложения.
📋 Содержание
- 🧭 Обзор
- ✨ Возможности
- 📸 Скриншоты
- ⚙️ Конфигурация
- 🧩 Сценарии использования
- ⚙️ Использование
- 💡 Советы
- 🛠 Разработка
- 🤝 Участие в разработке
- 📚 Благодарности
- 🪪 Лицензия
🧭 Обзор
DroidGround позволяет создавать широкий спектр Android-задач, которые иначе сложно реализовать в традиционных CTF-условиях. Например, в задаче на удалённое выполнение кода (RCE) игроки могут получить APK для локального анализа. Обнаружив уязвимость, они могут разработать Frida-скрипт и запустить его через DroidGround на реальном целевом устройстве, чтобы извлечь флаг из внутреннего хранилища. Другие типы задач могут включать скрытые активности, пользовательские broadcast-интенты, эксплуатацию сервисов или динамический анализ с помощью предзагруженных инструментов.
Благодаря потоковой передаче экрана устройства в реальном времени, тонкой настройке функций, интеграции с Frida и настраиваемым скриптам установки и сброса, DroidGround даёт организаторам CTF возможность создавать безопасные, гибкие и реалистичные Android-задачи, выходящие далеко за рамки типичных возможностей.
✨ Возможности
DroidGround предоставляет богатый набор функций, управляемых с сервера.
- Экран устройства в реальном времени (через
scrcpy), с опциональным управлением мышью, касаниями и клавиатурой - Сброс состояния задачи
- Перезапуск приложения / Запуск активности / Запуск сервиса
- Отправка broadcast-интента
- Выключение / Перезагрузка устройства
- Скачивание bugreport (bugreportz)
- Frida-скриптинг
- Запуск из предзагруженной библиотеки (режим jail)
- Запуск произвольных скриптов (полный режим)
- Файловый браузер
- Доступ к терминалу
- Управление APK
- Просмотр Logcat
- Сервер эксплойтов (если включён командный режим)
Почти все функции модульные и определяются через переменные окружения, что обеспечивает точный контроль над рамками задачи.
📸 Скриншоты
![]() | ![]() |
|---|---|
| Обзор | Запуск активности |
![]() | ![]() |
| Frida в режиме Jail | Frida в полном режиме |
![]() | ![]() |
| Файловый браузер | Менеджер приложений |
![]() | ![]() |
| Терминал | Логи |
⚙️ Конфигурация
Файл .env.sample в корневой директории — хорошая отправная точка. Ниже приведён полный список всех поддерживаемых на данный момент переменных окружения:







