Контакты
Подписка
МЕНЮ
Контакты
Подписка

Penetration Test: что и зачем?

Penetration Test: что и зачем?

В рубрику "Оборудование и технологии" | К списку рубрик  |  К списку авторов  |  К списку публикаций

Penetration Test: что и зачем?

Penetration Test – метод оценки безопасности компьютерных систем или сетей передачи данных посредством моделирования атаки нарушителя, как правило, являющийся частью аудита информационной безопасности организации. В чем заключается указанный метод оценки безопасности, является ли он обязательным, как организовать его с получением максимального эффекта, читайте в данной статье.
Константин Саматов
Руководитель направления в Аналитическом центре
Уральского центра систем безопасности, член Ассоциации
руководителей служб информационной безопасности,
преподаватель дисциплин информационной безопасности
в УрГЭУ и УРТК им. А.С. Попова

Что такое Penetration Тest?

Тестирование на проникновение, как правило, является частью аудита информационной безопасности и относится к так называемому активному анализу, дополняющему "пассивный" анализ уязвимостей информационной системы, осуществляемый при помощи инструментальных средств – сканеров безопасности.

Целью тестирования на проникновение является оценка возможности успешного проведения злоумышленником атаки (в т.ч. целевой) на информационную систему и ее последствий, а его задачи следующие:

  • выявление недостатков в применяемых в информационной системе мерах безопасности и оценка возможности использования их нарушителем;
  • получение на основе объективных свидетельств оценки текущего уровня защищенности;
  • практическая демонстрация возможности использования уязвимостей;
  • выработка рекомендаций по устранению выявленных уязвимостей и недостатков для повышения уровня защищенности.
Тестирование на проникновение (Penetration Тest, жаргонно "Пентест") – метод оценки безопасности компьютерных систем или сетей передачи данных посредством моделирования атаки нарушителя.

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

Как правило, при проведении тестирования на проникновение осуществляется моделирование поведения следующих видов нарушителей:

  1. Квалифицированный внешний нарушитель – действует извне, по сути, проникает в систему в точке подключения к сети общего доступа (международного обмена), не имеет привилегий (например, прав пользователя) и осуществляет атаки, направленные на получение несанкционированного доступа к ресурсам информационной системы или узлам сети передачи данных, так называемая модель черного ящика.
  2. Квалифицированный внешний нарушитель, имеющий привилегии пользователя в системе, – действует извне, по сути, проникает в систему в точке подключения к сети общего доступа (международного обмена) и осуществляет атаки, направленные на повышение привилегий и получение несанкционированного доступа к ресурсам информационной системы или узлам сети передачи данных, не предусмотренным для его роли (например, попытка получить права администратора), так называемая модель серого ящика.
  3. Квалифицированный внутренний нарушитель, имеющий привилегии пользователя в системе, – действует внутри информационной системы и осуществляет атаки, направленные на повышение привилегий и получение несанкционированного доступа к ресурсам информационной системы или узлам сети передачи данных, не предусмотренным для его роли, так называемая модель белого ящика.

Зачем и кому нужен Penetration Тest?

Стандартный классический подход к защите информации, обрабатываемой в информационных системах, базируется на гипотетической оценке поведения потенциального нарушителя, моделировании угроз и построении на их основе системы защиты. При этом моделирование поведения нарушителя применительно к реально функционирующей информационной системе, как правило, не используется. Отсюда давно известная проблема: применяемые меры безопасности во многих случаях не могут обеспечить эффективную защиту информационной системы, несмотря на то что по документации все идеально (преобладание "бумажной безопасности").

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

С учетом этого, по мнению автора, проведение тестирования на проникновение необходимо для любой информационной системы, но прежде всего для информационной системы, являющейся объектом критической информационной инфраструктуры1.

Так, в соответствии со ст. 1 и ст. 4 Федерального закона от 26.07.2017 г. № 187-ФЗ "О безопасности критической информационной инфраструктуры Российской Федерации" целью данного федерального закона является устойчивое функционирование критической информационной инфраструктуры Российской Федерации при проведении в отношении нее компьютерных атак, а одним из принципов обеспечения безопасности – приоритет предотвращения компьютерных атак.

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

Как эффективно организовать Penetration Тest?

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

Первое, что необходимо определить в процессе организации тестирования на проникновение, – кто будет его проводить: собственные ИТ-, ИБ-специалисты или внешние. По мнению автора, качественное тестирование в большинстве случаев может провести специалист, имеющий квалификацию CEH (Certificated Ethical Hacker) или OSCP (Offensive Security Certified Professional), подтвержденную соответствующим сертификатом.

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

Следующим шагом после принятия решения о том, кто будет проводить тестирование на проникновение, является определение тех методов, которые будут использоваться: "черный ящик", "серый ящик", "белый ящик" или комбинированный метод.

В своей практической деятельности автор встречал лишь малое количество организаций, в штате которых в качестве "внутренних" специалистов по информационной безопасности работают специалисты подобной квалификации. Как правило, наличие сертифицированных "белых хакеров" является прерогативой так называемых интеграторов – организаций, оказывающих услуги по информационной безопасности.
Причинами нехватки на рынке труда специалистов подобной квалификации, по мнению автора, являются особенности существующей системы подготовки специалистов в сфере информационной безопасности в учреждениях высшего и среднего профессионального образования. В настоящее время практически отсутствуют учебные заведения, в которых осуществляется подготовка специалистов с уклоном в компьютерную безопасность (Сyber-security), равно как и соответствующие программы и стандарты подготовки по направлению "Компьютерная безопасность" (именно "компьютерная", а не "информационная").

На данном этапе необходимо проанализировать действующую модель нарушителя с целью выявления наиболее вероятных для конкретной информационной системы категорий злоумышленников. При этом следует иметь в виду, что согласно официальной статистике наиболее распространенным и наиболее опасным является внутренний нарушитель. При этом под внутренним нарушителем не всегда необходимо понимать работника организации. В корпоративных информационных системах нередко в качестве внутреннего нарушителя может выступать работник (представитель) контрагента, имеющий легальный (санкционированный) доступ в информационную систему. К примеру, автор много лет проработал в системе обязательного медицинского страхования, где для корпоративных информационных систем характерна следующая особенность: к информационным системам территориальных фондов обязательного медицинского страхования имеют санкционированный доступ работники медицинских учреждений и страховых медицинских организаций, в части своих сегментов. При этом нередки случаи, когда указанный внутренний нарушитель (именно внутренний, т.к. круг субъектов ограничен, они имеют санкционированный доступ к ресурсам информационной системы и подключаются к ней по защищенным каналам связи) пытается расширить свои привилегии (залезть в чужой сегмент).

После определения методов проведения тестирования на проникновение можно начинать саму процедуру. На данном этапе, в случае привлечения внешних специалистов, необходимо осуществлять контроль за ходом работ, т.к. их проведение в ряде случаев может приводить к нарушению работоспособности системы. Как правило, работы по тестированию на проникновение включают в себя следующие этапы:

  1. Сбор и анализ сведений об информационной системе. На данном этапе производится сканирование портов исследуемого ресурса, а также идентификация доступных сервисов, служб, средств защиты. Как правило, при этом используются различные сканеры безопасности, как коммерческие, так и свободного распространения. Проведение сканирования может повлиять на функционирование информационной системы и в ряде случаев привести к нарушению работы ее компонентов. Поэтому на данном этапе необходимо осуществлять контроль за проведением сканирования и быть готовым нормализовать работу компонентов системы в случае нарушения.
  2. Идентификация уязвимостей. На этом этапе происходит выявление способов использования уязвимостей и оценка рисков их использования. Перед тем как начать само тестирование на проникновение, необходимо спрогнозировать, к каким последствиям может привести эксплуатация той или иной уязвимости.
  3. Реализация атаки. Данный этап, по сути, и есть само тестирование на проникновение, которое заключается в выполнении произвольного кода на стороне сервера, получении прав на чтение или запись файлов, получении доступа к базам данных или приватной информации. Как и на этапе сканирования, на этом этапе возможен отказ компонентов информационной системы.
  4. Анализ хода реализации тестирования на проникновение и составление отчета. На данном этапе происходит объединение и упорядочивание информации, полученной в процессе тестирования. Составляется отчет, который содержит обзорный отчет, отчет об обнаруженных уязвимостях, вывод о состоянии информационной безопасности исследуемого ресурса и план по устранению выявленных уязвимостей.

Заключительным этапом тестирования на проникновение является разработка плана мероприятий по устранению выявленных уязвимостей безопасности информационной системы. Конкретные меры по устранению уязвимостей вырабатываются исходя из полученного по результатам тестирования отчета, с учетом специфики информационной системы, поэтому конкретные рекомендации в этой части дать, пожалуй, не представляется возможным. Единственным предложением, которое хотел бы высказать автор, является проведение последующего тестирования на проникновение после завершения мероприятий по устранению выявленных уязвимостей, чтобы убедиться в их устранении.

___________________________________________
1 Что такое объект критической информационной инфраструктуры – см. статью Саматов К.М., КИИ: Чего ожидать и что делать? // InformationSecurity/Информационная безопасность. – 2018. – № 1. – С. 16–18.
2 Автор считает, что в ближайшее время подобное требование будет введено.

Опубликовано: Журнал "Information Security/ Информационная безопасность" #2, 2018

Приобрести этот номер или подписаться

Статьи про теме