Проект (Project) – верхнеуровневая сущность, внутри которой определяются настройки и профили сканирования для конкретного приложения. На уровне проекта могут быть переопределены правила сканирования, которые будут применяться только для этого проекта. Имя проекта уникально в рамках системы.

Профиль (Profile) – профиль сканирования, включающий в себя настройки каждого модуля, список проверяемых стандартов и требований информационной безопасности. Имя профиля уникально в рамках проекта, к которому он относится.

Модуль (Module) – компоненты для сбора различной информации во время сканирования приложения на устройстве (мониторинг системного журнала, использование файлов, операции с базой данных и т.д.). Каждый модуль имеет свои уникальные настройки и может быть зависимым от результатов других модулей.

Тест-кейсы (Test Case) — записанный сценарий работы пользователя с приложением. Включает в себя все действия пользователя (нажатия, передаваемый текст, любые взаимодействия с интерфейсом приложения и т.д.). Тест-кейс привязывается к конкретному проекту и может быть воспроизведен только в рамках него. Тест-кейс запускается только если имя приложения (package_id) при запуске совпадает с именем приложения, для которого был записан тест-кейс.

Сканирование – процесс анализа, во время которого пользователь вручную или система по записанным ранее тест-кейсам взаимодействуют с приложением. Во время сканирования система «Стингрей» собирает всю доступную информацию о работе приложения и затем проводит поиск уязвимостей и проверку на соответствие стандартам безопасности.

Метод сканирования \ Запуска — Способ сканирования, определяющий, запускать ли записанный ранее тест-кейс или ожидать ручных операций с приложением. Возможные варианты:
• Автоматический — запускает сканирование и запускает выбранный тест-кейс.
• Ручной — после запуска сканирования необходимо вручную совершать операции с запущенным приложением.

Правила анализа (Rules) – правила анализа, по которым происходит поиск части уязвимостей. Правила представляют собой набор строк или регулярных выражений, которые необходимо искать в собранных данных. Для удобства добавление правил оформлено в виде конструктора, в котором необходимо указать какую строку искать, в результатах каких модулей и в каком месте данных (XML-тэг, значение в json и т.д.)

Требование (Requirement) – требования информационной безопасности, на соответствие которому будет проверено приложение. С требованием соотносятся определенные типы дефектов, при нахождении которых в приложении требование будет считаться не выполненным. Требования могут быть сгруппированы в виде категорий или относиться напрямую к стандартам.

Категория (Category) – группировка требований информационной безопасности по различным признакам.

Стандарт (Standard) – совокупность требований или категорий требований информационной безопасности, на соответствие которым может проверяться приложение. Стандарты могут быть как общемировые, так и внутренние стандарты компании.

Дефекты (Defects) – выявленные во время сканирования дефекты приложения или, по-другому, уязвимости. У каждого дефекта есть тип, описание и рекомендации по устранению.
Собранные данные (Collected Data) – вся собранная информация о работе приложения за время сканирования. Данные разделены по модулям, каждый из которых отвечает за сбор определенной информации. Эти данные так же можно скачать и проанализировать локально, при желании.

CI/CD (Continuous Integration / Continuous Delivery) – системы для непрерывной интеграции и непрерывных поставок приложения. Примерами таких систем могут быть Jenkins, Teamcity, Gitlab CI.

Эмулятор (Emulator) – виртуальный эмулятор имитирующее реальное устройство Android. Характеризуется различной архитектурой и версией операционной системы.

Следующая Приложение 1. Список модулей для сбора информации
Содержание: