Introspy-Android - Инструмент для анализа Android App Blackbox
2:29 УТРА Android , Android-инструменты , SecurityTools
Introspy-Android — это инструмент Blackbox, предназначенный для того, чтобы помочь тестерам на проникновение понять, что делает приложение во время выполнения, и помочь в выявлении потенциальных проблем безопасности.
Инструмент состоит из двух отдельных компонентов: интерфейс GUI для настройки крючков, фильтров и опций и расширение Cydia Substrate, содержащее ядро функциональности инструмента, включая крючки и анализ потенциальных проблем.
Он может быть установлен на корневом устройстве и динамически настроен для подключения чувствительных к безопасности API Android . Инструмент записывает все соответствующие вызовы API, сделанные приложением, включая вызовы функций, аргументы и значения возврата. Затем он выполняет тесты на проблемы безопасности в режиме реального времени и сохраняет результаты в базе данных и в системе регистрации Android.
Анализатор Introspy может быть использован для анализа базы данных, генерируемой трассировщиком, и создания HTML-отчетов, содержащих список зарегистрированных вызовов функций, а также список потенциальных уязвимостей, влияющих на приложение.
После установки, инструмент будет хранить в базе данных S'Lite (и в системных журналах) звонки, сделанные приложениями Android для чувствительных к безопасности API, а также потенциальных проблем.
Пример данных, сбрасываемых в бревенчатый кот:
Пример html-отчета (использование анализатора):
Графический интерфейс позволяет пользователю выбирать, какие Android App следует контролировать и какие API для мониторинга. Опция "NO DB" отключает вход в базу данных (что делает приложения быстрее) и опция "STACK TRACE" сохранит и заготовит минимальный стек вызова для выбранных фильтров.
Использования:
1. Убедитесь, что Cydia Substrate был развернут на вашем тестовом устройстве. Установщик требует корневого устройства и может быть найден в Google Play
2. Загрузите предварительно составленные APKs (ссылки на загрузку находятся в конце этой статьи).
3. Установите Introspy-Android Core.apk на устройство, где Cydia Substrate установлен с:
4. Установить интроспи-Android Config.apk:
Instrospy-Android Config отображает Core приложение и различные фильтры и опции, применяемые к ним. Это приложение нуждается в корневом доступе (вы можете использовать superSU, чтобы дать временный корневой доступ к приложению). Изменения динамичны, и вам не нужно перезапускать приложения, чтобы они были эффективными.
Примере:
Как удалить Instrospy-Android:
Соответствующие данные, включая потенциальные проблемы, связанные с зацепленными API, сбрасываются в базу данных и в системные журналы. Вы можете выставить следующие команды для их отображения:
Отображение полных журналов:
Отображение потенциальных проблем:
Что анализируется/регистрируется?
Общий Крипто:
Хэш:
Ключ:
Fs:
Ipc:
Pref:
Ssl:
Webview:
Sqlite:
2:29 УТРА Android , Android-инструменты , SecurityTools
Introspy-Android — это инструмент Blackbox, предназначенный для того, чтобы помочь тестерам на проникновение понять, что делает приложение во время выполнения, и помочь в выявлении потенциальных проблем безопасности.
Инструмент состоит из двух отдельных компонентов: интерфейс GUI для настройки крючков, фильтров и опций и расширение Cydia Substrate, содержащее ядро функциональности инструмента, включая крючки и анализ потенциальных проблем.
Он может быть установлен на корневом устройстве и динамически настроен для подключения чувствительных к безопасности API Android . Инструмент записывает все соответствующие вызовы API, сделанные приложением, включая вызовы функций, аргументы и значения возврата. Затем он выполняет тесты на проблемы безопасности в режиме реального времени и сохраняет результаты в базе данных и в системе регистрации Android.
Анализатор Introspy может быть использован для анализа базы данных, генерируемой трассировщиком, и создания HTML-отчетов, содержащих список зарегистрированных вызовов функций, а также список потенциальных уязвимостей, влияющих на приложение.
После установки, инструмент будет хранить в базе данных S'Lite (и в системных журналах) звонки, сделанные приложениями Android для чувствительных к безопасности API, а также потенциальных проблем.
Пример данных, сбрасываемых в бревенчатый кот:
Пример html-отчета (использование анализатора):
Графический интерфейс позволяет пользователю выбирать, какие Android App следует контролировать и какие API для мониторинга. Опция "NO DB" отключает вход в базу данных (что делает приложения быстрее) и опция "STACK TRACE" сохранит и заготовит минимальный стек вызова для выбранных фильтров.
Использования:
1. Убедитесь, что Cydia Substrate был развернут на вашем тестовом устройстве. Установщик требует корневого устройства и может быть найден в Google Play
2. Загрузите предварительно составленные APKs (ссылки на загрузку находятся в конце этой статьи).
3. Установите Introspy-Android Core.apk на устройство, где Cydia Substrate установлен с:
adb install Introspy-Android Core.apk
4. Установить интроспи-Android Config.apk:
adb install Introspy-Android Config.apk
Instrospy-Android Config отображает Core приложение и различные фильтры и опции, применяемые к ним. Это приложение нуждается в корневом доступе (вы можете использовать superSU, чтобы дать временный корневой доступ к приложению). Изменения динамичны, и вам не нужно перезапускать приложения, чтобы они были эффективными.
- После настройки с приложением Config журналы сбрасываются в системные журналы и в базу данных в каталоге подключенного приложения (в databases/introspy.db).
- Для создания HTML-отчета с помощью сгенерированной базы данных можно использовать Introspy-Analyzer.
Примере:
adb shell su -c echo "GENERAL CRYPTO, KEY, HASH, FS, IPC, PREF, URI, WEBVIEW" > /data/
data/com.YOUR_APP_NAME/introspy.config
Как удалить Instrospy-Android:
adb uninstall com.introspy.core
adb uninstall com.introspy.config
Соответствующие данные, включая потенциальные проблемы, связанные с зацепленными API, сбрасываются в базу данных и в системные журналы. Вы можете выставить следующие команды для их отображения:
Отображение полных журналов:
adb logcat -s "Introspy"
Отображение потенциальных проблем:
adb logcat -s "Introspy:W"
Что анализируется/регистрируется?
Общий Крипто:
- зашифрованные / расшифрованные данные до / после звонков и algo используется (Примечание: "читаемые данные отображаются, если по крайней мере 75% символов читаемы, нечитаемые символы хранятся как ".". Если данные не читаемы, они хранятся в качестве базы 64)
- Обнаружить статические IVs и сломанные алгоритмы
- Обнаружить слабый RNG
Хэш:
- данные, которые хэшированы
- Отображение альго используется и предупреждает, если слабый (MD5)
Ключ:
- любые ключи, используемые для шифрования
- Создание ключа журнала PBKDF (ключ, пароль, итерации)
- Код доступа журнала, используемый в магазине ключей
Fs:
- только некоторые файлы системы доступа, поскольку они очень шумно
- читать / писать на SD-карты и создание файла (или установить свойство) как мир читаемым / writable
Ipc:
- Создание журнала IPC с подробной информацией
- некоторые логи отправлены с подробной информацией (и дополнительно)
- Программные разрешения и создание
Pref:
- Чтение/записи предпочтений с его данными, типом и значением по умолчанию (набор значений, если ничего не возвращается)
- Dump - все предпочтения, когда getAll - только один раз
- Предупреждение о доступе к несуществующим предпочтениям (может быть скрытым предпочтением для включения журналов, например)
Ssl:
- Предупреждение, используется ли SSL, но любое имя хоста проверяется для действительного сертификата
- Предупреждение, проверяет ли приложение какой-либо сертификат (само подписался и т.д.)
- Вход, если закрепление сертификата потенциально реализовано
- Вход, если SSL не используется
Webview:
- Войти, когда JS, плагины или FS доступ включен для веб-просмотр
- Предупреждение/журнал при использовании интерфейса JS (мост JS)
Sqlite:
- Данные журнала передаются в execS'L, обновляются, вставляются, заменяются