Приложение 2. Список обнаруживаемых уязвимостей
Все уязвимости, обнаруживаемые во время сканирований, относятся к какому-либо из требований стандартов информационной безопасности, на соответствие которым проверяется приложение. На каждую выявленную уязвимость в системе заводится дефект. С требованием соотносятся определенные типы дефектов, при нахождении которых в приложении требование будет считаться не выполненным. Работа с выявленными уязвимостями в системе проводится на странице с результатами сканирования на вкладке Дефекты, см. подробности в разделе «Результаты сканирований».
Полный список обнаруживаемых системой уязвимостей и уровень критичности соответствующих им дефектов выглядит так:
Рекомендации для Android
Небезопасное хранение ключевой информации
-
Доступное на чтение хранилище ключей со слабым паролем, содержащее закрытые ключи
-
Доступное на чтение хранилище ключей со слабым паролем, содержащее открытые ключи
-
Доступное на чтение хранилище ключей с приватными ключами, защищёнными слабым паролем
-
Хранилище ключей со слабым паролем, содержащее закрытые ключи
-
Хранилище ключей со слабым паролем, содержащее открытые ключи
-
Хранилище ключей с приватными ключами, защищёнными слабым паролем
Передача sensitive-информации в Activity
Передача sensitive-информации в Service
-
Небезопасная передача sensitive-информации во внешний Service
-
Небезопасная передача sensitive-информации во внутренний Service
Передача sensitive-информации по сети
Хранение sensitive-информации
-
Хранение sensitive-информации в общедоступном файле вне директории приложения
-
Хранение sensitive-информации в общедоступном файле внутри директории приложения
-
Хранение sensitive-информации в приватном файле вне директории приложения
-
Хранение sensitive-информации в приватном файле внутри директории приложения
-
Хранение sensitive-информации в общедоступной защищённой базе данных
-
Хранение чувствительной информации в незащищённой базе данных
-
Хранение sensitive-информации в общедоступной незащищённой базе данных
-
Хранение или использование ранее найденной sensitive-информации
Хранение ключей/сертификатов
-
Хранение приватного ключа/сертификата, не защищенного паролем, в директории/ресурсах приложения
-
Хранение публичного ключа/сертификата в директории/ресурсах приложения
-
Хранение приватного ключа/сертификата, защищенного паролем, в директории/ресурсах приложения
Анализ разрешений
Прочие
-
Потенциальное выполнение произвольного кода в контексте приложения
-
Небезопасные настройки в AndroidManifest.xml. Флаг android:hasFragileUserData
-
Небезопасные настройки в AndroidManifest.xml. Флаг android:requestLegacyExternalStorage
-
Возможность открытия произвольных данных в контексте WebView
-
Возможность получения доступа к произвольному ContentProvider
-
Возможность доступа к произвольному файлу через ContentProvider
-
Потенциально чувствительная информация, найденная энтропийным анализом
-
Возможность перезаписи файлов в приватной директории приложения при работе с zip-архивами
-
Возможна атака на цепочку поставок через атаку MavenGate (домен обновлен)
-
Возможность посылки произвольного широковещательного сообщения через Intent
-
Использована трансформация ECB для шифрования данных, превышающих размер блока
-
Приложение осуществляет сетевое взаимодействие по протоколу HTTP
-
Обнаружены расхождения между сравниваемыми версиями приложения
- Обнаружены «внутренние домены», доступные извне
- Обнаружены «внутренние домены», заданные для поиска
- Сравниваемые версии приложения идентичны
- SCA. Список компонентов
- Обнаружены домены из публичного списка malware
- Обнаружены домены из списка, опубликованного Роскомнадзором
- Уязвимость в OpenSource компоненте
- Приложение использует Android KeyStore, но не проверяет, что ключ аппаратно защищён (Hardware-Backed)
- Доступ к ключам из AndroidKeyStore без требования аутентификации
- Ключи в AndroidKeyStore создаются без требования биометрической инвалидации
- Отстуствует проверка блокировки экрана
Рекомендации для iOS
Хранение ключей/сертификатов
-
Хранение приватного ключа/сертификата, защищенного паролем, в директории/ресурсах приложения
-
Хранение публичного ключа/сертификата в директории/ресурсах приложения
-
Хранение приватного ключа/сертификата, не защищенного паролем, в директории/ресурсах приложения
Небезопасное хранение ключевой информации
-
Доступное на чтение хранилище ключей со слабым паролем, содержащее закрытые ключи
-
Доступное на чтение хранилище ключей со слабым паролем, содержащее открытые ключи
-
Доступное на чтение хранилище ключей с приватными ключами, защищёнными слабым паролем
-
Хранилище ключей со слабым паролем, содержащее закрытые ключи
-
Хранилище ключей со слабым паролем, содержащее открытые ключи
-
Хранилище ключей с приватными ключами, защищёнными слабым паролем
Прочие
-
Наличие файла со списком сторонних зависимостей в собранном пакете приложения
-
Хранение или использование ранее найденной чувствительной информации
-
Приложение не запрещает использование пользовательских клавиатур
-
Потенциально чувствительная информация, найденная энтропийным анализом
- Обнаружены «внутренние домены», заданные для поиска
- SCA. Список компонентов
- Обнаружены домены из публичного списка malware
- Обнаружены домены из реестров Роскомнадзора
- Уязвимость в OpenSource компоненте (iOS)