80 Гибкая методология разработки программного обеcпечения
Документирование Выделите и опишите этапы тестирования, что
этапов тестирования бы тестировщики могли единообразно выпол
нять и интерпретировать тесты. Ошибки
на этом шаге могут привести к неверной оцен
ке производительности. Везде, где это возмож
но, автоматизируйте создание тестовых заданий
Операция: Создание теста безопасности
Тесты безопасности или испытания на проникновение (penetration tests)
имеют дело с угрозами, выявленными при проектировании. Тестирование
этого типа делится на три части: изучение, определение нарушений и розыск.
В результате испытания на проникновение могут быть обнаружены новые
уязвимости, что повлечет за собой формулирование новых требований к
качеству или идентификацию дефекта. В результате реализации такого тре
бования или устранения дефекта должны быть заблокированы соответству
ющие точки входа и доступ к ресурсам. Из этого следует, что тестировщики
должны быть осведомлены об элементах модели угроз не хуже архитекто
ров. Данный вид тестирования требует специальных навыков: нужно уметь
имитировать действия потенциального злоумышленника. Доступ к модели
угроз дает тестировщикам возможность систематически атаковать систему
в целях проверки, не нарушая ее работу.
Изучение точек входа Определите точки входа системы и ее функ
циональных блоков для защиты внутренних
объектов. Используйте сведения из модели
угроз для определения возможных направле
ний атак
Идентификация проблем Напишите тестовые задания с запуском тестов
прямого или псевдослучайного доступа к объек
там. Для проверки специальных защитных функ
ций требуется прямое вмешательство. Например,
посмотрите, нельзя ли из URL получить иденти
фикатор сеанса и изменить номер счета
Использование слабостей Добавьте тестовые задания с использованием
защиты любых слабостей защиты. Некоторые из этих
тестов будут исследовательскими, а не наце
ленными на исправление проблем. Учитывайте
время, необходимое для описания способов
обхода защиты. Несанкционированный доступ
к системе является дефектом и для его исправ
ления надо знать способ доступа к защищенно
му ресурсу. Сценарии запуска тестов безопас
ности должны отражать общую тактику защи
ты секретных данных, предохранения от не
санкционированного доступа и запрета досту
па для нелегитимных пользователей