
Инструмент аудита безопасности мобильных приложений, ориентированный на автоматизацию SAST-анализа, выявление используемых технологий (React Native, Flutter, Xamarin, нативные) и обеспечение более глубокого тестирования на рутованных или джейлбрейкнутых устройствах.
Швейцарский армейский червь для мобильной безопасности
Единый фреймворк для статического анализа кода и динамического поиска уязвимостей на iOS и Android.
Slythestx — это набор инструментов для обеспечения безопасности мобильных устройств, объединяющий статический анализ (SAST) и динамический анализ (DAST) под единым интерфейсом. Он создан для исследователей безопасности и мобильных пентестеров, которым необходимо быстро определить технологический стек целевого приложения, проверить его исходный код на наличие заведомо опасных паттернов и взаимодействовать с реальным устройством — и всё это без необходимости жонглировать дюжиной разрозненных инструментов.
Движок поставляется в виде контейнеризованного веб-приложения с браузерной панелью управления (http://localhost:3000), работающей на базе аналитического ядра Node.js/TypeScript.
Slythestx построен вокруг двух ключевых компонентов: анализаторов (статических модулей проверки, учитывающих технологический стек) и драйверов устройств (динамическое взаимодействие с подключённым оборудованием iOS/Android).
Каждый анализатор подключается к основному движку и запускается при обнаружении соответствующей технологии, что делает сканирование быстрым и без лишнего шума.
libimobiledevice# Clone the repository
git clone https://github.com/stuxctf/slythestx/
cd slythestx
# --- Windows ---
docker-compose.exe -f docker-compose.yml -f docker-compose.windows.yml build
# --- Linux ---
docker-compose -f docker-compose.yml -f docker-compose.linux.yml build
# Launch the engine
docker-compose up -d
Когда контейнеры запущены, откройте в браузере:
http://localhost:3000
libimobiledeviceideviceinstallerPayload, быстрая загрузка по SFTP, эндпоинты управления IPA (list/delete/clear)PlistBuddy, совместимость с современными джейлбрейк-средами🔜 В разработке: дамп Keychain, интеграция Cycript и дополнительные инструменты безопасности; потоковая передача syslog по SSH.
Ядро движка и мобильные основы
/data/data/)Приветствуются вклады, отчёты об ошибках и запросы новых функций. Пожалуйста, создавайте issue или pull request в репозитории GitHub.
Slythestx разработан строго в образовательных целях и для этичного тестирования безопасности. Использование этого инструмента против целей без предварительного письменного разрешения является незаконным. Разработчики не несут ответственности за неправомерное использование, юридические последствия или ущерб, возникший в результате использования этого программного обеспечения.
Распространяется под лицензией MIT.
Сделано с 🐍 автором stuxctf — поддержите проект на Buy Me a Coffee
| Категория | Возможность |
|---|
| Определение технологий | Автоматическое определение базового фреймворка — React Native, Flutter, Xamarin, .NET MAUI, Cordova или нативный iOS/Android |
| Статический анализ (SAST) | Движок сканирования на основе правил, управляемый настраиваемыми JSON-наборами правил для глубокого аудита кода |
| Определение уровня защиты | Эвристический regex-движок, помечающий активные механизмы защиты: обнаружение root/jailbreak, SSL pinning, проверки отладки и защиту от модификации |
| Поиск секретов | Обнаружение захардкоженных учётных данных, API-ключей и других чувствительных строк в коде приложения |
| Аудит разрешений и манифестов | Разбор Android-манифестов и разрешений приложений на предмет избыточных или рискованных деклараций |
| Android Toolkit (ADB) | Полная интеграция с ADB для извлечения пакетов и прямого исследования хранилища приложений /data/data/ |
| iOS Toolkit | Подключение к джейлбрейкнутым устройствам через USB/SSH с использованием libimobiledevice и автоматическим определением устройства |
| Перечисление приложений | Кроссплатформенный список установленных приложений (bundle ID, имя пакета, версия) |
| Определение контейнеров и песочниц | Автоматическое определение путей песочницы приложения — Documents, Library, Preferences, Caches |
| Извлечение IPA | Извлечение IPA непосредственно на устройстве с автоматическим восстановлением структуры Payload и быстрой загрузкой по SFTP |
| Мониторинг журналов в реальном времени | Потоковая передача Logcat в реальном времени с настраиваемыми фильтрами для точечной отладки |
| Умные подсказки инструментов | Контекстные рекомендации внешних инструментов безопасности на основе обнаруженного стека |
| Анализатор | Целевой стек | Назначение |
|---|
technologyDetector | Все | Определяет базовый фреймворк приложения |
appInfoAnalyzer | Все | Извлекает общие метаданные приложения |
manifestAnalyzer | Android | Разбирает AndroidManifest.xml |
permissionAnalyzer | Android / iOS | Проверяет объявленные разрешения |
securityMeasuresAnalyzer | Все | Обнаруживает проверки root/jailbreak, SSL pinning, анти-отладочную логику |
secretScanner | Все | Сканирует исходники и бинарные файлы на предмет захардкоженных секретов |
nativeAnalyzer | Нативные iOS/Android | Анализирует нативные пути кода |
reactAnalyzer | React Native | Статический анализ для React Native |
flutterAnalyzer | Flutter | Статический анализ для Flutter |
xamarinAnalyzer | Xamarin | Статический анализ для Xamarin |
dotnetMauiAnalyzer | .NET MAUI | Статический анализ для .NET MAUI |
cordovaAnalyzer | Cordova/PhoneGap | Статический анализ для Cordova |