Пентест представляет собой процесс проверки уровня ИБ-защиты путем симуляции атаки киберпреступников. Такое тестирование позволяет выявить бреши в защите компании, не дожидаясь, пока их найдут злоумышленники и используют в своих преступных целях.
Проведение пентеста требует знания методологии, опыта работы со специальными инструментами и навыков «белого хакера».
Что такое пентест простыми словами
Penetration test / тест на проникновение или сокращенно «пентест» — это форма проверки ИТ-системы (например, веб-приложения, сайта в интернете или ИТ-инфраструктуры компании в комплексе) на наличие уязвимостей, которые могут быть использованы кибепреступниками.
Тестирование представляет собой контролируемую имитацию кибератаки на информационную систему — то есть это контролируемый взлом, который проводят эксперты по заданию самой компании — владельца ИТ-системы. Главная особенность пентеста, которая отличает его от других форм проверок в сфере ИБ, заключается в том, что пентестер пытается реально проникнуть в систему, как это сделал бы настоящий хакер.
Проведение пентестов позволяет найти и устранить слабые места в ИБ до того, как настоящие злоумышленники обнаруживают и используют их.
Кто такой пентестер
В роли пентестеров выступают эксперты специализированных организаций, работающих в сфере ИБ. Пентестеров также называют «этичными» или «белыми» хакерами. Эти специалисты легально ищут уязвимостти в ИТ-системах, сайтах, приложениях, а их основной «инструмент» — профессиональная имитация кибератак. Однако в отличие от киберпреступников пентестеры не используют найденные уязвимости для нанесения ущерба ИТ-инфраструктуре компании, а уведомляют ее об итогах своей работы и дают рекомендации по устранению обнаруженных «слабых мест».
Зачем нужен пентест бизнесу
Пентест — это своеобразный «стресс-тест» ИБ-системы компании. Он позволяет выявить реальные уязвимости, оценить текущий уровень защищенности системы и выполнить требования законодательства.
Выявление реальных уязвимостей
Одна из главных целей любого пентеста — выявить реальные «бреши» в ИБ, через которые хакер может проникнуть в ИТ-инфраструктуру. Пентестеры обнаруживают практически любые уязвимости — от слабых паролей и слишком доверчивых сотрудников до ошибок в коде. При этом есть узявимости, которые пентест обнаруживает лучше любых других методов проверки уровня ИБ, например:
- цепочки комбинированных атак — несколько слабых мест, которые в комплексе могут дать серьезную угрозу;
- уязвимости бизнес-логики — эта уязвимость предполагает, что ошибки в работе приложений связаны с неправильной реализацией бизнес-процесса, а не с классическими уязвимостями типа SQLi, XSS. Для сканеров они «невидимы», так как требуют понимания логики работы системы;
- уязвимости, связанные с человеческим фактором — реальную реакцию сотрудников компании покажет только практический тест;
- уязвимости физической безопасности — бреши в защите оборудования и помещений проверить удаленно или автоматически невозможно;
- настройки, которые формально корректны, но могут создавать риски в процессе работы (например, учетные записи с избыточными правами или сервисы с анонимным доступом там, где в нем нет необходимости);
- уязвимости постэксплуатации.
Также пентест позволяет определить глубину потенциального проникновения в ИТ-инфраструктуру и оценить вероятный ущерб от действий злоумышленников.
Оценка эффективности защиты
Пентест позволяет объективно оценить, насколько эффективно защита ИТ-инфраструктуры способна противостоять реальным кибератакам. По итогам тестирования при формировании оценки учитываются следующие критерии:
- скорость реагирования службы ИБ и длительность локализации угрозы;
- объем потенциальных потерь в результате действий «злоумышленников»;
- глубина проникновения (до какого уровня удалось дойти атакующему — остановили ли его на уровне пользователя или он добрался до баз данных клиентов);
- время обнаружения атаки.
Кроме того, пентестеры учитывают наличие «слепых зон» — участков ИТ-инфраструктуры с очень слабой защитой или вовсе невидимые для ИБ-мониторинга.
Симуляция реальных атак
Как поведет себя служба ИБ, рядовые сотрудники, техника и технологии в случае реальной атаки киберпреступников? Ни одни учения или тесты не дадут объективного ответа, тогда как пентест — это единственный способ «погрузиться» в ситуацию настоящей кибератаки, организованной профессиональными хакерами.
Выполнение требований регуляторов и стандартов
Пентест — не просто техническая проверка. Это полноценный инструмент, который позволяет подтвердить соответствие нормам ИБ, закрепленным в нормативных правовых актах, а значит:
избежать штрафов и иных санкций со стороны контролирующих органов;
пройти сертификацию (при необходимости);
повысить уровень доверия со стороны партнеров и клиентов.
К ключевым стандартам, требующим проведения пентеста, относятся:
- №152-ФЗ;
- №187-ФЗ;
- ГОСТ Р ИСО/МЭК 27001;
- ГОСТ Р 56938-2016;
- PCI DSS;
- GDPR;
- ISO/IEC 27001;
- NIST SP 800-115.
Также не следует забывать о положениях ЦБ РФ, в которых предписывается проведение пентестов банками и финансовыми организациями.
Виды пентеста
Пентесты обычно классифицируют по объему тестирования, формату проверки и направленности. У каждого вида есть свои особенности, которые стоит учесть прежде, чем выбирать, какой именно тест на проникновение следует провести в компании.
По объёму тестирования: Black Box, Grey Box, White Box
Три основных вида по объему тестирования будут различаться как по продолжительности и направленности, так и по исходным данным, доступным пентестеру.
|
Black Box |
Grey Box |
White Box | |
| Суть пентеста | Пентестер действует как внешний хакер с «нулевыми» исходными данными | Пентестер действует как инсайдер или хакер, каким-либо способом получивший ограниченный доступ к интересующей ИС | Пентестер действует как атакующий с максимальными знаниями о системе (например, в роли недавно уволенного администратора) |
| Основные этапы тестирования |
|
|
|
| Типичный сценарий | Взлом извне | Кража данных инсайдером | Злоупотребление правами со стороны администратора |
| Примеры применения |
|
|
|
| Достоинства |
|
|
Максимально глубокая проверка;
Комплексный подход к аудиту безопасности; Выявление скрытых уязвимостей в настройках и коде |
| Недостатки |
|
|
|
Если говорить коротко, то для проверки защиты от внешних киберпреступников стоит выбрать тестирование Black Box, чтобы провести аудит доступов и внутренних процессов больше подойдет Grey Box, а глубокий анализ кода и конфигураций возможен при проведении тестирования White Box.
По направленности: внешний, внутренний, тестирование веб-приложений, мобильных приложений, социальная инженерия
Получить общее представление о пентестах по направленности можно с помощью сравнительной таблицы.
|
Параметры |
Внешний |
Внутренний |
Тестирование веб-приложений |
Пентест мобильных приложений | Социальная инженерия |
| Что проверяется | Внешний периметр | Внутренняя сеть | Логика веб-приложений | Клиент-серверная модель | Человеческий фактор |
| «Роль» пентестера | Внешний хакер | Инсайдер | Внешний хакер (специализация — веб- приложения) | Внешний хакер (специализация — мобильные приложения) | Социальный инженер |
| Средняя длительность | До 2 недель | До 4 недель | До 3 недель | До 2 недель | До 2 недель |
| Основные инструменты | Nmap, Nessus | BloodHound, Mimikatz | Burp Suite, ZAP | MobSF, Frida | SET, Gophish |
Вкратце: внешний пентест позволяет проверить защиту от атак извне (обычно из сети Интернет), внутренний позволяет оценить риски проникновения во внутреннюю сеть, пентест веб-приложений оценивает безопасность сайтов и онлайн-сервисов. Тестирование мобильных приложений дает возможность проверить состояние защиты данных на планшетах и смартфонах, а тестирование на «социальную инженерию» позволяет снизить негативное влияние человеческого фактора.
Наиболее полную картину защищенности организации дает комплексный подход к пентесту.
По формату: классический пентест, Red Team, Continuous Pentesting
Формат пентеста тоже может быть различным.
|
Параметры |
Классический пентест |
Red Team |
Continuous Pentesting |
| Цели | Поиск уязвимостей | Проверка готовности к атакам APT-групп | Постоянное снижение рисков в сфере ИБ |
| Длительность | 1 — 4 недели | 1 — 12 месяцев | Постоянно либо с заданной регулярностью (к примеру, еженедельное сканирование) |
| Состояние средств защиты | Часто отключают средства защиты (IDS/IPS, антивирусы),
чтобы не мешать тестированию |
Включены (одна из задач пентестеров — обойти средства защиты) | Включены, тестирование ведется в режиме реального времени |
| Методы | Техническая атака (ряд атак) | Комплексная атака (кибератака в сочетании с социальной инженерией и попытками физического проникновения на объект) | Сочетание использования автоматизированных сканеров и ручных проверок |
| Scope | Конкретная ИС | Вся организация (включая персонал) | Новые компоненты, изменения в ИС, ИТ-инфраструктура в динамике |
| Когда проводится |
|
|
|
| Результаты тестирования | Отчет с описанием выявленных уязвимостей и рекомендациями по их устранению | Комплексная оценка готовности компании к APT-атакам, подробный разбор действий Blue Team | Улучшение защищенности как непрерывный процесс |
Таким образом, классический вариант выбирают, если нужно точечено проверить защищенность конкретного объекта, Red Team больше подойдет для комплексной оценки готовности системы ИБ к отражению сложных атак, а Continuous Pentesting позволяет поддерживать высокий уровень защищенности в динамичной среде.
Методики и стандарты тестирования на проникновение
Существует целый ряд стандартов, которыми могут руководствоваться пентестеры. На какой из документов опираться, выбирают в зависимости от целей проверки и особенностей компании-заказчика.
OWASP
Открытое сообщество в глобальной сети, предлагающее эффективные и исчерпывающие методики для тестирования API, веб-сайтов и приложений. Документация Open Web Application Security Project (именно так расшифровывается эта аббревиатура) пригодится ИТ-компаниям, заинтересованным в создании безопасного ПО.
Главные преимущества:
- подробное описание процесса тестирования на каждом этапе жизненного цикла создания приложения — от определения требований и разработки до внедрения и поддержки;
- помимо самого приложения также тестируются процессы, технологии и даже люди;
- могут применять не только пентестеры, но и разработчики.
PTES
Penetration Testing Methodologies and Standards представляет комплекс рекомендаций для базового тестирования на проникновение. Организации с повышенными требованиями к ИБ могут найти в PTES также несколько вариантов расширенного пентеста. Помимо подробного описания целей и ожиданий от тестирования PTES также содержит руководство по проведению постэксплуатационного пентеста, что позволяет понять, были ли закрыты найденные уязвимости и насколько эффективно это было сделано.
PTES проводится поэтапно — после обследования осуществляется моделирование угроз, проводится анализ и эксплуатация уязвимостей после чего составляется отчет.
NIST SP 800-115
NIST Special Publications 800 Series — представляет собой техническое руководство и подходит для применения при проверке уровня ИБ в компаниях разных сфер деятельности. Входит в число обязательных методологий тестирования на проникновение, используемых профессиональными аудиторскими компаниями.
Содержит описание технических вопросов оценки уровня ИБ, порядка проведения пентеста, а также рекомендации по анализу результатов и разработке корректирующих мер. В последней версии NIST SP 800-115 пристальное внимание уделяется минимизации рисков от кибератак.
OSSTMM
The Open Source Security Testing Methodology Manual входит в число наиболее популярных стандаров. Он универсален и может использоваться как базовое руководство при проведении пентеста.
Стандартом предложено 5 направлений тестирования, в том числе:
- сети передачи данных;
- беспроводная связь;
- телекоммуникации;
- физическая безопасность;
- безопасность человека.
В последнем случае подразумевается та часть ИБ, которая напрямую зависит от человеческого фактора — то есть психологического и / или физического взаимодействия людей.
ISSAF
Information System Security Assessment Framework содержит комплекс подробных рекомендаций по пентестам с описанием утилит, указаниями по их использованию, подробными разъяснениями и примечаниями касательно анализа результатом тестирования. Также предусматривается тщательное документирование каждого этапа и присутствуют советы по использованию конкретных инструментов на каждом этапе.
Этот документ считается достаточно сложным и подробным, его можно адаптировать для проведения пентестов практически любой организации.
Этапы проведения пентеста
Пентест — это сложный комплексный процесс, состоящий из нескольких этапов, на каждом из которых решается определенный комплекс задач.
Планирование и согласование правил взаимодействия
На первом этапе тестирования заказчик и исполнитель должны формализовать условия пентеста и минимизировать риски неконтролируемых сбоев. Какие задачи решаются на этой стадии:
- определяют цели и задачи тестирования;
- согласовывают объемы работ;
- разрабатывают правила взаимодействия;
- подписывают договор и соглашение о неразглашении (NDA);
- определяют каналы связи и порядок реагирования на инциденты в рамках тестирования.
Также на этапе планирования необходимо согласовать временные рамки пентеста.
Разведка (Reconnaissance)
Цель разведки — собрать максимум информации о тестируемой системе, при этом взаимодействие с ней либо отсутствует, либо сводится к минимуму. На этом этапе пентестер создает «карту» инфраструктуры цели, определяет потенциальные векторы атак и планирует стратегию проверки.
Если разведка проведена качественно, то эффективность всего пентеста будет выше благодаря фокусу на реальных уязвимостях, сокращению длительности последующих этапов и росту вероятности успешного выявления «брешей» в защите заказчика.
Сканирование и анализ уязвимостей
На этой стадии пентестер активно исследует целевую систему и ищет уязвимости, используя информацию, собранную на этапе разведки. По итогам сканирования и анализа уязвимостей общие данные об инфраструктуре преобразуются в конкретные сведения о ее сабых местах и формируется понимание реального текущего уровня защиты. На выходе из этапа перечень уязвимостей с оценкой критичности уже сформирован.
Эксплуатация уязвимостей (Exploitation)
На этом этапе пентестер подтверждает эксплуатируемость уязвимостей — то есть тот факт, что они действительно представляют угрозу для компании и могут стать «точкой входа» для злоумышленника. Используя данные с предыдущих этапов пентестер превращает теоретические риски в практические доказательства — пытается проникнуть в тестируемую систему и отслеживает реакции механизмов защиты на свои действия.
Анализ результатов и пост-эксплуатация
На этой стадии пентестеры систематизируют данные о проведенной «атаке», оценивают риски и готовят рекомендации на основании собранной информации. В части пост-эксплуатации проводится исследование возможностей киберпреступника после того, как он получил первичный доступ — есть ли у него возможность перемещаться по сети, закрепляться в ней незаметно для специалистов по ИБ, собирать данные, совершать иные действия.
Составление отчета и рекомендаций
Заключительная стадия пентеста, в рамках которой систематизируются результаты проверки. Пентестеры должны:
- Подготовить структурированный документ на основании собранной информации;
- Дать оценку рисков для организации;
- Провести приоритезацию уязвимостей;
- Дать конкретные практические рекомендации по устранению уязвимостей;
- Обеспечить фиксацию результатов в соответствии с договорными обязательствами.
Важно учитывать, что отчет — это не просто список узявимостей. Он должен быть написан на понятном для целевой аудитории языке, давать четкие инструкции по устранению брешей в защите, а также служить основой для улучшения ИБ в перспективе.
Как часто стоит проводить тестирование на проникновение?
ИТ — это сфера постоянного развития, динамики, изменений, без которых системы быстро устареют как морально, так и физически. Результаты пентестов тоже имеют свой «срок годности».
В большинстве отраслевых стандартов указана минимальная периодичность проведения пентестов. К примеру, PCI DSS рекомендует проводить тестирование не реже 1 раза в 6 месяцев. Однако это не означает, что тесты не нужно проводить чаще.
Как правило, во внутренних нормативных актах компании стоит прописывать периодичность пентестов в таком формате — 1 раз в полугодие или при наступлении одного из следующих событий:
- любые значимые изменения в ИТ-инфраструктуре;
- после нового киберинцидента;
- критичные изменения в законодательстве, регламентирующем ИБ-сферу организации.
В некоторых случаях обновление кадрового состава тоже должно стать поводом для внеочередного пентеста. К примеру, если сменился ключевой сотрудник подразделения, обеспечивающего ИБ, или в целом значительно обновился персонал компании.
Популярные инструменты для пентеста
Для разведки и сканирования (Nmap, Shodan, Maltego)
Здесь пригодятся классические «поисковики» и сканеры, например:
- Maltego — инструмент, позволяющий визуализировать связи между IP-адресами, электронной почтой, домеными и иными данными из открытых источников;
- Shodan — выполняет поиск по устройствам, подключенным к интернету (серверам, IoT-гаджетам, камерам), дает возможность находить открытые сервисы и потенциальные уязвимости по этому направлению;
- Nmap — эффективный сетевой сканер, который помогает определять версии ПО и ОС, обнаруживать хосты, открытые порты и сервисы.
Для тестирования веб-приложений (Burp Suite, OWASP ZAP)
В этом направлении обычно применяют инструменты, работающие как прокси-серверы между приложением и браузером. Это позволяет проводить анализ и вносить изменения в запросы и ответы в режиме реального времени. Примеры:
- Burp Suite — осуществляет перехват HTTP/HTTPS-трафика и его модификацию, выполняет сканирование уязвимостей (SQLi, XSS), поддержку расширений через BApp Store.
- OWASP ZAP (Zed Attack Proxy) — бесплатный инструмент тестирования с функциями пассивного и активного сканирования, перехвата трафика, поддержкой плагинов.
OWASP ZAP чаще выбирают новички и команды, которые хотят сэкономить, а Burp Suite предпочитают профессионалы — за более «продвинутый» функционал.
Для эксплуатации уязвимостей (Metasploit, Cobalt Strike)
Cobalt Strike представляет собой коммерческий инструмент для Red Team, подходит для реалистичной имитации атак. Он чаще используется для комплексных симуляций кибератак повышенной сложности (APT).
Metasploit — фреймворк, который дает возможность разработки и запуска эксплойтов, создания payload-нагрузки, эскалазии привелегий и управления скомпрометированными системами. Больше подходит для точечной эксплуатации уязвимостей.
Некорректная работа с любым из подобных инструментов может серьезно нарушить работу систем, поэтому использовать их могут только пентестеры с высокой квалификацией.
Для анализа сетей и Active Directory (BloodHound, Mimikatz)
BloodHound дает возможность проводить анализ и визуализацию связей в Active Directory. Этот инструмент построит графы отношений, выявит пути эскалации привилегий. Он помогает найти слабости в конфигурации Active Directory и выявить потенциальные цепочки атак.
Mimikatz представляет собой утилиту, которая извлекает учетные данные (пароли, хэши) из памяти Windows-систем. Это инструмент для дальнейшей эксплуатации уязвимостей, так как добывает информацию для перемешения по сети после проникновения.
Инструменты анализа сетей и Active Directory считаются критически важными при тестировании любых корпоративных сетей на базе Windows
Стоимость и сроки пентеста
Ни одна профессиональная экспертная организация не назовет фиксированную стоимость пентеста при «первом знакомстве». Стоимость этой услуги варьируется и зависит от целого комплекса факторов, в число которых входят:
- объем тестирования (количество объектов и компонентов, требующих проверки);
- уровень сложности тестируемой системы, глубина и объем проверки;
- тип тестирования;
- методы проведения пентеста;
- квалификация пентестеров и наличие у них сертификатов;
- необходимость командировки (физический выезд и присутствие на территории компании — заказчика) и географическая удаленность заказчика.
К примеру, стоимость базового пентеста стартует от 450 тысяч рублей, средний будет стоит около 1-3 миллионов, а за комплексный Red Team запросят от 3 миллионов и более.
Часто задаваемые вопросы (FAQ) для примера
Пентест проводят не реже 1 раза в полугодие или при наступлении событий, прямо влияющих на сферу ИБ в компании. Например, если произошел киберинцидент, изменились требования регулятора или сменился ключевой персонал, стоит подумать о внеплановом тестировании.
Цена услуги зависит от множества факторов — от объема и глубины проверки до сложности ИТ-инфраструктуры и географической удаленности компании-заказчика (последнее особенно значимо, если тестирование требует выезда пентестеров на объект).
Всем. Обеспечить высокий уровень ИБ — это вопрос выживания любой компании в современном мире. Без постоянного поиска уязвимостей и совершенствования ИТ-инфраструктуры, обновления средств защиты любая организация становится легкой мишенью для хакеров.
Теоретически самостоятельное проведение пентестов не запрещено. Достаточно изучить методики, освоить инструменты, изучить законодательство. Однако если требуется провести комплексное и безопасное тестирование (устранив риски сбоев в работе систем), результаты которого также будут признаны регуляторами, партнерами и клиентами — лучше привлечь сертифицированных специалистов.
Заключение
Пренебрегать проведением пентеста, конечно же, не стоит. Если компания заинтересована в эффективном и исчерпывающем тестировании на проникновение — стоит обратить внимание на услугу security по пентесту.
https://text.ru/antiplagiat/69aee535d6c4f