Как превратить Android-смартфон в портативный инструмент для пентеста
Носить с собой ноутбук на каждую вылазку или проверку безопасности Wi-Fi в офисе не всегда удобно. Когда нужно быстро заглянуть в локальную сеть или проверить точку доступа, телефон подходит куда лучше. Долгое время стандартом в этой нише оставался Kali NetHunter, но его установка обычно превращается в квест с пересборкой ядра и подбором правильной кастомной прошивки.
Недавно я наткнулся на репозиторий StrykerOSS от разработчика zalexdev. Это бесплатный набор инструментов для аудита безопасности на Android, который объединяет консольные утилиты вроде Nmap, Metasploit и Nuclei в единый графический интерфейс.
Как устроен StrykerOSS под капотом
Вместо того чтобы переписывать известные утилиты под Android, автор пошел простым и логичным путем. При первом запуске приложение скачивает и разворачивает окружение Alpine Linux в chroot по пути /data/local/stryker/release.
Внутри этого окружения крутятся полноценные версии Nmap, Metasploit, Nuclei, Hydra и SearchSploit.
На верхнем уровне находится обычное Android-приложение на Java. Графическая оболочка выполнена в стиле Material 3. Когда вы нажимаете кнопку в меню (например, запускаете сканирование портов), Stryker формирует нужную команду и отправляет её в chroot через root-доступ. Если вам нужен прямой доступ к консоли, в боковом меню есть встроенный эмулятор терминала, который сразу сбрасывает сессию внутрь Alpine Linux.
Разбор основных возможностей
Разработчик разделил функционал на несколько логических модулей. Посмотрим, что здесь есть.
Беспроводные сети и Wi-Fi
Модуль работы с Wi-Fi умеет сканировать эфир, перехватывать хэндшейки, проводить деаутентификацию и атаковать WPS (включая Pixie Dust и перебор PIN-кодов).
Перехваченные хэндшейки сохраняются локально. Их можно экспортировать в сервис OnlineHashCrack или попытаться расшифровать прямо на телефоне через Hashcat. Также есть модуль GeoMac, который наносит найденные BSSID на карту OpenStreetMap и выгружает точки в формате KML или CSV.
Для работы с беспроводными атаками встроенного Wi-Fi чипа смартфона чаще всего не хватит. Приложению потребуется внешний USB Wi-Fi адаптер с поддержкой режимa мониторинга (monitor mode), подключенный через OTG-переходник. В описании рекомендуют адаптеры на чипах Atheros AR9271 или Realtek RTL88XXAU.
USB-атаки и эмуляция устройств
Если ядро вашего смартфона поддерживает подсистему configfs, Stryker превращается в аппаратный инструмент для эмуляции USB-устройств.
- В режиме HID Attacks телефон притворяется USB-клавиатурой и исполняет скрипты на языке DuckyScript. Приложение содержит парсер с поддержкой раскладок для 7 языков, включая русский, и поставляется с готовым набором пейлоадов.
- В модуле USB Arsenal можно на лету менять VID/PID устройства, эмулировать сетевую карту (RNDIS/ECM) или монтировать образ
.isoкак обычную флешку.
Сетевое сканирование и поиск уязвимостей
Для работы с IP-сетями в Stryker встроен полноценный интерфейс для Nmap с поддержкой NSE-скриптов и экспортом отчетов.
Веб-сканер на базе Nuclei группирует найденные проблемные места по уровню критичности и показывает доказательства уязвимости для каждой находки. Модуль RouterScan помогает перебирать учётные данные на роутерах, а встроенная база Arsenal дает возможность создавать собственные шаблоны сканирования с подстановкой параметров IP, порта и MAC-адреса.
Из свежего и интересного: в проект добавили модуль WhisperPair для работы с Bluetooth Low Energy. Он проверяет устройства на уязвимость CVE-2025-36911 в протоколе Google Fast Pair и умеет перехватывать аудиопоток HFP.
Для любителей полной свободы в приложение даже встроили запуск рабочего стола XFCE внутри chroot с выводом картинки через VNC.
Что нужно для запуска
Запустить StrykerOSS на любом телефоне из магазина не получится. Проекту требуются специфические права и окружение:
- Root-права (подойдут Magisk или KernelSU).
- Около 1 ГБ свободного места во внутренней памяти под распаковку Alpine chroot и утилит.
- Внешняя Wi-Fi карта для захвата хэндшейков и атак на беспроводные сети.
- Поддержка USB Gadget в ядре для работы DuckyScript и эмуляции накопителей.
Что внутри исходного кода
Проект написан на Java с использованием Native Development Kit (NDK) для сборки C-компонентов. В качестве баз данных используются SQLite и SharedPreferences.
Структура исходников в папке app/src/main/java/com/zalexdev/stryker/ разбита по модулям. Для каждого инструмента создана отдельная директория: nmap, metasploit, nuclei, hid, wpair и так далее. Вызовы системных команд унифицированы через класс Core.java и метод Core.generateSuProcess(), что избавляет от дублирования кода при работе с su.
Интересный момент в конфигурации сборки: проект использует targetSdk = 28 (Android 9.0). Это сделано сознательно, чтобы не упираться в жесткие ограничения на доступ к файловой системе и фоновым процессам, которые появились в более новых версиях Android.
Итоговое впечатление
StrykerOSS не пытаются позиционировать как волшебную кнопку. Это скорее аккуратный швейцарский нож, который избавляет от необходимости вводить длинные консольные команды на маленьком экране телефона.
Проект пригодится специалистам по безопасности и системным администраторам, которым удобнее держать набор сетевых утилит в одном мобильном устройстве. Если у вас уже есть телефон с root-правами и подходящим ядром, StrykerOSS сэкономит кучу времени на настройку консольного окружения.
