Приложение 1. Список модулей для сбора информации
Система включает более двадцати модулей для сканирования и сбора информации о приложении. Каждый из модулей отвечает за сбор «своей» информации. Список всех модулей представлен на вкладке Модули на странице Профиль. Из этого списка можно выбрать и настроить те модули, которые будут включены при сканировании приложения с этим профилем.
Модули собирают следующую информацию:
- Базы данных — модуль для сбора и анализа баз данных, которые используются в приложении (включая зашифрованные базы данных).
- Файлы приложения — модуль для сбора и анализа файлов, которые сохраняет приложение в своей директории (во внутреннем или внешнем хранилище) во время своей работы. Настройки модуля позволяют исключить из списка отдельные файлы и директории.
- Дамп памяти приложения — модуль получения и анализа дампа памяти (heapdump) приложения.
- Информация о ключах — модуль для анализа безопасности хранилищ, в которых сохраняются ключи шифрования
- Записи системного журнала — модуль для мониторинга сообщений, который приложение записывает в системный журнал.
- Отслеживание Activity — модуль для мониторинга Activity, которые запускаются во время работы с приложением. Помимо отслеживания факта запуска Activity модуль также сохраняет и анализирует Intent и его содержимое.
- Отслеживание Broadcast Receiver — модуль для мониторинга использования и регистрации BroadcastReceiver во время работы приложения. Помимо отслеживания факта использования BroadcastReceiver, модуль также сохраняет и анализирует используемый Intent и его содержимое.
- Отслеживание Broadcast — модуль для мониторинга Broadcast сообщений, которые обрабатываеются в приложении.
- Отслеживание Intent — модуль для мониторинга Intent, которые используются и обрабатываются во время работы приложения.
- Отслеживание Service — модуль для мониторинга операций с Services, которые запускает или использует приложение во время работы.
- Работа с SharedPreferences — модуль для мониторинга операций, связанных с изменением содержимого Shared Preferences.
- Сетевая активность — модуль, предназначенный для перехвата и анализа сетевого взаимодействия приложения с сервером.
- Содержимое SharedPreferences — модуль, предоставляющий информацию о содержимом Shared Prefences на момент окончания сканирования.
- Работа с SQLite — модуль для отслеживания запросов к базам данных. Обрабатываются как запросы к базам даннах, так и полученный результат выполнения запроса.
- Используемые файлы — модуль для сбора и анализа файлов, которые приложение использует во время своей работы. Это могут быть, как файлы внутри директории приложения, так и любые другие файлы в системе.
- SAST — модуль для статического анализа исходного кода приложения и содержимого сборки.
- Поиск ранее найденной чувствительной информации — модуль для поиска чувствительной информации, найденной ранее в других модулях. Например, если была найдена чувствительная информация «session_id=111222333444555», то будет произведен поиск значения «111222333444555» во всех ранее собранных данных, но уже без привязки к имени параметра «session_id».
- Интеграция с AppScreener — модуль для интеграции с системой статического анализа Solar AppScreener.
- Интеграция с Oversecured — модуль для интеграции c системой статического анализа Oversecured.
- Построения графа вызовов (taint-анализ) — модуль для построения графа вызовов методов, которые потенциально могут использоваться в построении tainted flow. Этот модуль позволяет отследить распространение непроверенных внешних данных по программе в процессе ее работы. Если такие данные попадают в ключевые точки кода, то такая ситуация может привести к появлению различных уязвимостей, включая SQL-инъекции, межсайтовый скриптинг (XSS) и другие.
- Поиск чувствительной информации по энтропии — модуль для поиска в собранных данных уникальных последовательностей символов, потенциально являющихся чувствительной информацией. Модуль зависим от модулей SAST, Файлы приложений, Записи системного журнала и Используемые файлы — если все перечисленные модули отключены, то энтропийный анализ будет недоступен.
- Проверка на рут и эмулятор — данный модуль обходит проверки приложений на эмулятор и права root и одновременно отслеживает их. Если приложение не осуществляет проверок, или осуществляет недостаточные проверки, то будет добавлен соответствующий дефект (-ы).