Сбор информации

Результатом теста является отчет, собранная информация и список обнаруженных уязвимостей

тестированию     Testing Stage


Есть ли разница между «security testing» и «penetration test»? С вопросом, ответ на который, как мне казалось, лежит на поверхности, я столкнулся на конференции для специалистов по тестированию Testing Stage в начале июня.

И хотя выступал я с другой темой, именно этот момент вызвал интерес и резонанс публики. 

Для большей части моих коллег термины «security testing» и «penetration test» равнозначны. penetration test Так ли это на самом деле?

Давайте разбираться!


В общем понимании «тестирование на проникновение» представляет собой продукт или услугу по санкционированной попытке обхода средств защиты информационной системы.

Результатом теста является отчет, который может/должен содержать собранную информацию и список обнаруженных уязвимостей, использованных векторов атаки, достигнутых результатов, рекомендаций по исправлению.

Обращаю ваше внимание именно на термин «информационная сис» в связи с тем, что это понятие включает в себя не только программное или аппаратное обеспечение, а также данные, персонал, организационные мероприятия, документацию и иные процессы penetration testing

Т. е. результаты «пентеста» информационной системы зависят не только от качества и условий настройки и эксплуатации реализации программного обеспечения, а также от аналогичных метрик аппаратного обеспечения, корректности действий персонала, налаженности и согласованности операционных процессов и т. д.

В то же время «security testing» — это итеративный процесс тестирования безопасности функционирования инфраструктуры в целом, который учитывает все этапы и контроли, и в этом случае «penetration test» — обязательный элемент общей модели «security testing».


Очень классно этот подход описан в OSSTM (Open Source Security Testing Methodology).

Он включает в себя: тестирование периметра, человеческого фактора, всех видов коммуникаций и взаимодействий, операций над данными в любой форме и т. д.

Данная модель отлично подходит для любого типа аудита: от формального «compliance» до практического «pentest».

Кроме нее, существует еще достаточное количество иных моделей и методологий, каждая из которых обладает собственными особенностями.


В иной трактовке «security testing» — процесс тестирования безопасности функционирования программного и аппаратного обеспечения, начиная с этапов проектирования и дизайна и заканчивая тестированием готовой продукции. Данный процесс включает в себя оценку рисков, сканирование уязвимостей, контроль кода, нагрузочное тестирование и т. д., и, что самое главное, предусматривает опять же итеративность этих процессов.


Очень часто встречается ситуация следующего характера: «Нам нужен пентест приложения». cone penetration test В этом случае подразумевается разовая проверка безопасности функционирования программного обеспечения (по опыту — чаще всего уже готового релиза, выход которого намечен на ближайшее время). Эффективен ли такой подход? Идеалисты скажут — нет, реалисты — да, но это уже для дальнейших дискуссий.

Так же как и использование разнообразных средств и методологий. Но я обращаю ваше внимание на следующий момент: подобный подход — это демонстрация или простого отсутствия средств, или незнания/непонимания принципов «application security», частью которого является «software security testing» (именно этот термин, на мой взгляд, более точно отражает контекст данной публикации).

«software security testing» — часть общего процесса тестирования программного обеспечения, которая отлично встраивается в общую модель SDLC (Software development lifecycle).

Похожие статьи Pentest

  • Информационная безопасность

    Примечательная особенность нынешнего периода - переход от индустриального общества к информационному, в котором информация становится более важным...

информационная безопасность