Ответ
Security Testing (тестирование безопасности) — это вид нефункционального тестирования. Его цель — оценка защищённости системы, а не проверка её бизнес-логики.
Основные задачи Security Testing:
- Выявление уязвимостей (например, SQL-инъекции, XSS, CSRF).
- Проверка защиты данных (шифрование, маскирование).
- Оценка устойчивости к атакам (например, DDoS, brute force).
- Проверка соответствия стандартам и регуляторным требованиям (OWASP Top 10, PCI DSS, GDPR).
Пример тест-кейса для проверки на SQL-инъекцию:
-- В поле логина вводится: ' OR '1'='1
-- Ожидаемый результат: система должна блокировать запрос или обрабатывать его безопасно,
-- не предоставляя несанкционированный доступ.
Основные виды Security Testing:
- Статический анализ безопасности (SAST) — поиск уязвимостей в исходном коде.
- Динамический анализ безопасности (DAST) — тестирование работающего приложения.
- Тестирование на проникновение (Penetration Testing) — имитация атак злоумышленника.
- Аудит конфигураций безопасности — проверка настроек серверов, сетей, БД.