Пентест (от англ. penetration test) буквально означает тест на проникновение. Суть пентеста заключается в том, что эксперт моделирует действия злоумышленника, пытающегося получить несанкционированный доступ к защищаемой информации или нарушить функционирование информационной инфраструктуры или ее частей. То есть буквально пытается ее взломать, используя те же подходы и инструменты, что и реальные хакеры. Для этого применяются как ручные методы тестирования, так и автоматизированные инструменты. В этом заключается отличие пентеста от анализа уязвимостей, который так же направлен на оценку безопасности компьютерных систем, но который при обнаружении недостатка, не включают в себя выполнение атаки с эксплуатацией найденной уязвимости.
Почему возникает необходимость тестирования на проникновение?
Современные информационные системы представляют собой сложные объекты, состоящие из большого числа компонентов. Выход из строя любого из них или нарушение доступности, конфиденциальности, целостности могут привести к компрометации всей системы. К сожалению, при проектировании, эксплуатации и обслуживании возможно возникновение ошибок. Например, на этапе проектирования — использование слабых алгоритмов шифрования, на этапе программирования — недостатки в процессах управления памятью, на этапе эксплуатации — использование слабых паролей, на этапе обслуживания — несвоевременная актуализация версий ПО и так далее.
Часть из этих уязвимостей могут привести к незначительным последствиям, которые не приведут к нарушению безопасности информации. А часть может привести к катастрофическим потерям для бизнеса. Например, утечке клиентской базы, уничтожению информационных ресурсов организации или подготовке и исполнению подложных платежных документов.
Информация об обнаружении новых уязвимостей в том или ином ПО появляется постоянно и требует регулярного мониторинга. Обычно, специалисты IT, эксплуатирующие информационные системы в компании, в первую очередь, занимаются обеспечением информационных процессов в компании, и лишь во вторую — обеспечением информационной безопасности. Следует отметить, что зачастую они не могут эффективно оценить защищенность информационной системы, так как сами же являются ее авторами и создателями. Необходимо независимое тестирование на проникновение.
Проведение тестирования на проникновение позволяет реализовать концепцию «Red Team vs Blue Team».
Задача Blue Team — спроектировать и внедрить систему защиты информации в информационную систему организации.
Задача Red Team — обнаружить в ней уязвимости.
Командная работа Red Team и Blue Team позволяет создать максимально эффективную и безопасную информационную систему для бизнеса.
При этом информационная система в некотором смысле является живым организмом, который постоянно изменяется и развивается. В процессе такого развития могут возникать уязвимости в новых компонентах, а также появляться информация об обнаружении уязвимостей в старых. Поэтому тестирование на проникновение должно осуществляться на регулярной основе, например, раз в год.
Немного статистики
Для оценки степени опасности уязвимостей используется стандарт CVSS (Common Vulnerability Scoring System), позволяющий количественно оценить степень опасности той или иной уязвимости. Стандарт предложен Национальным советом по инфраструктуре (National Infrastructure Advisory Council, NIAC) США. Также в создании и обновлении стандарта участвовали коммерческие компании, такие как Microsoft, Cisco и другие.
При оценке опасности уязвимости оценивается насколько уязвимость проста в эксплуатации, последствия эксплуатации, наличие готового эксплойта и патча и другие.
Критический и высокий уровень опасности обычно означают, что злоумышленник с низкой квалификацией (как говорят, «любой школьник») имея общий доступ к информационной системе через открытый интернет, без какой-либо авторизации может влиять на доступность, конфиденциальность и целостность информации, хранящейся в информационной системе. И для этого существует готовый эксплойт. Наличие таких уязвимостей, к сожалению, не редкость.
Анализ проведенных экспертами компании RTM Group пентестов в 2022 году показывает, что 83% протестированных компаний имели в своих информационных системах уязвимости среднего уровня, 69% — высокого и 46% — критического!
К сожалению, в связи с уходом с российского рынка части производителей ПО ситуация с ростом количества АИС, имеющих уязвимости только усугубляется.
В каждом отчете по пентесту Заказчик получает информацию об обнаруженных уязвимостях, оценку опасности, описание способа, которым обнаружены и которым могут быть использованы злоумышленником, а также конкретные рекомендации по устранению.
Виды пентеста
Существует несколько классификаций пентеста по различным классификационным признакам.
По доступности тестируемых ресурсов из открытых сетей:
- Тест внешнего периметра
Моделируются действия злоумышленника, не являющегося сотрудником компании и имеющего общий доступ к ресурсу из открытого интернета. - Тест внутренней сети
Моделируются действия злоумышленника, являющегося сотрудником компании и имеющего стандартный ограниченный доступ рядового пользователя к внутренней сети организации.
По количеству исходной информации о тестируемой системе, предоставляемой пентестеру:
- «Белый ящик»
В данном случае эксперт получает полную информацию о тестируемой системе, включая состав, структуру, возможно, учетную запись с правами администратора. - «Черный ящик»
В этом случае, имитируются действия реального злоумышленника, не владеющего никакой существенной информацией о тестируемой системе. Всю информацию эксперт должен попытаться добыть самостоятельно. - «Серый ящик»
Этот вариант являет комбинацией первых двух. Данные о тестируемой системе предоставляются в зависимости от стоящих задач.
По используемому инструментарию и способу воздействия:
- Инструментальное исследование – при помощи различного специализированного ПО и технических средств.
- OSINT (Open Source INTelligence - разведка по открытым источникам).
- Социальная инженерия – доступ к конфиденциальной информации без использования технических средств путем психологического манипулирования персоналом.
По объекту исследования:
- Пентест беспроводных сетей
- Пентест контроллера домена
- Пентест информационной инфраструктуры
- Пентест СКУД
- Другое
Благодаря такой классификации мы можем четко очертить стоящие перед экспертом задачи. Например, провести инструментальное исследование контроллера домена во внутренней сети организации методом черного ящика. Или провести тестирование системы контроля и управления доступом методом социальной инженерии.
Чтобы Заказчик мог точнее сформулировать свои потребности для экспертов в компании RTM Group разработаны специальные опросные листы. Поэтому Заказчику не нужно разбираться в тонкостях классификации пентестов. Наши специалисты помогут грамотно составить техническое задание.
Методики пентеста
Круг вопросов, подлежащий исследованию в рамках пентеста обширен. К сожалению, из-за огромного разнообразия уязвимостей, число которых постоянно растет, и уникальности каждой информационной системы, подлежащей пентесту, в настоящее время не существует руководства, предлагающего всеобъемлющую программу тестирования или оценки информационной безопасности.
Однако, существуют ряд документов, представляющих обзор ключевых элементов тестирования и оценки технической безопасности с акцентом на конкретные методы, их преимущества и ограничения, а также рекомендации по их использованию. Специалисты в области пентеста, в зависимости от стоящих задач, могут пользоваться такими методологиями, опираясь, в первую очередь, на свою экспертность.
Среди общепризнанных методологий следует выделить:
- PTES (Penetration Testing Execution Standard - Стандарт выполнения тестирования на проникновение) – предложен группой практиков в сфере информационной безопасности. Цель стандарта - определить минимальный уровень проведения базового пентеста, включая взаимодействие перед тестированием, сбор разведданных, моделирование угроз, анализ уязвимостей, эксплуатацию, постэксплуатацию и отчётность.
- WSTG (Web Security Testing Guide - Руководство по тестированию веб-безопасности) - представляет собой руководство по тестированию безопасности веб-приложений и веб-сервисов, предложенное некоммерческим фондом OWASP (Open Web Application Security Project - Проект безопасности открытого веб-приложения).
- OSSTMM (Open Source Security Testing Methodology Manual - Руководство по методологии тестирования безопасности с открытым исходным кодом). Это методология для проверки знаний персонала в области безопасности, защищенности методам социальной инженерией, защищенности компьютерных и телекоммуникационных сетей, беспроводных устройств, мобильных устройств, контроля физического доступа, предложенная открытым исследовательским сообществом в области безопасности ISECOM (The Institute for Security and Open Methodologies - Институтом безопасности и открытых методологий).
- NIST SP 800-115 (Technical Guide to Information Security Testing and Assessment - Техническое руководство по тестированию и оценке информационной безопасности) содержит подходы к планированию и проведению тестирования и оценки информационной безопасности, анализа результатов и разработки стратегий смягчения последствий. Предложено NIST (National Institute of Standards and Technology - Национальным институтом стандартов и технологий США).
- ISSAF (Information Systems Security Assessment Framework – Фреймворк оценки безопасности информационной системы) – представляет собой структурированный фреймворк, который классифицирует оценку безопасности информационной системы по различным доменам и детализирует конкретные критерии оценки или тестирования для каждого из этих доменов.
Кто может проводить пентест
Эксперт, занимающийся пентестами должен обладать обширным набором знаний и навыков в области информационных технологий, проектирования и эксплуатации информационных систем, программировании, специальными знаниями в области оценки уязвимостей, жизненного цикла ПО, криптографии, различных протоколов передачи информации, авторизации и аутентификации и других сферах. Помимо знаний эксперт должен обладать гибким интеллектом, навыками поиска и анализа информации, широким кругозором не только в сфере IT, но и в смежных, иногда даже быть хорошим психологом.
В законодательстве РФ нет четких требований к эксперту, проводящему тестирование на проникновение. В значительной степени доверие к экспертам в данной области базируется на институте репутации.
Однако, существуют международные системы сертификации, не являющиеся обязательными, но позволяющие подтвердить уровень квалификации эксперта в области проведения тестирования на проникновение.
Наиболее признанные из них:
- CEH (Certified Ethical Hacker)
- OSCP (Offensive Security Certified Professional)
Сертификация происходит путем сдачи квалификационного экзамена, позволяющего выявить не только глубокие теоретические знания в области тестирование на проникновение, но и владение инструментарием проведения пентестов, а также практическими навыками.
Эксперты компании RTM Group постоянно повышают квалификацию в области тестирования на проникновение и имеют соответствующие сертификаты.
Сроки проведения пентеста
Сроки проведения пентестов зависят от сложности и масштаба тестируемой информационной инфраструктуры, от целей тестирования, от выбранного способа информационного воздействия и других факторов. Однако, обычно сроки проведения пентеста составляют 2 недели для внешнего тестирования и 4 недели - для внутреннего.
Стоимость пентеста
Стоимость пентеста составляет от 150 000 рублей за простое сканирование и до 10 миллионов, в зависимости от ряда факторов.
Первый (трудно выделить главный) — объем тестируемой инфраструктуры, который измеряется числом серверов, рабочих станций, сетевого оборудования и приложений.
Второй — глубина тестирования, "посмотреть, где можно взломать", "попробовать взломать", "взломать грубой силой". Обычно придерживаются подхода анализа уязвимостей и, по договоренности с клиентом, их реализация.
Зачастую имеющаяся уязвимость не может быть проэксплуатирована за счет применения компенсирующих мер. Например, устаревшая операционная система защищена антивирусом, и пользователи в ней сильно ограничены в правах. Объективно установить такую ситуацию может только полноценный пентест, стоимость которого начинается от 500 000 рублей.
Социальная инженерия стоит немного отдельно. Здесь трудоемкость и стоимость во многом зависят не только от количества тестируемых сотрудников, но и от объема информации, предоставляемого Заказчиком. Так, если требуется сбор данных из открытых источников (OSINT) по компании с 1000+ сотрудников, то данная услуга уже может стоить более 1 миллиона рублей.