Тестирование на проникновение что это
Тестирование на проникновение что это
Данная методика также может быть использована в качестве дополнения к другим методам проверки для оценки эффективности комплекса защиты системы от различных типов неожиданных вредоносных атак.
Каковы причины уязвимостей системы?
Пробелы в безопасности появляются на разных стадиях процесса и зависят от множества факторов:
Чем отличаются тестирование на проникновение и оценка уязвимости?
Обе эти методики преследуют одну цель – сделать программный продукт безопасным, но имеют разные рабочие процессы.
Тестирование на проникновение – это проверка в реальном времени вручную или с помощью инструментов автоматизации; система и связанный с ней компонент подвергаются воздействию сэмулированных злонамеренных атак для выявления недостатков безопасности.
Оценка уязвимости включает в себя изучение и анализ системы с помощью инструментов тестирования с целью обнаружения лазеек в защите для нескольких вариантов вредоносных атак. Благодаря этой методике выявляются уязвимые области, которые могут предоставить хакерам возможность скомпрометировать систему. Кроме того, в процессе оценки уязвимости предусмотрены различные корректирующие меры, направленные на устранение выявленных недостатков.
Оценка уязвимости следует заранее определенной и установленной процедуре, в то время как тестирование на проникновение решает единственную задачу — разрушения системы вне зависимости от принятых подходов.
Для чего нужно тестирование на проникновение?
Как указывалось ранее, пробелы в безопасности обеспечивают неавторизованному пользователю или незаконному объекту возможность для атаки на систему, влияющей на ее целостность и конфиденциальность. Таким образом, тестирование программных продуктов на проникновение помогает избавиться от этих уязвимостей и сделать систему достаточно компетентной для защиты от ожидаемых и даже неожиданных вредоносных угроз и атак.
Рассмотрим результаты применения данной методики подробнее. Итак, тестирование на проникновение предоставляет:
Как выполнить тестирование на проникновение?
Тестирование на проникновение системы может осуществляться с использованием любого из следующих подходов:
1. Ручное тестирование на проникновение
Для проведения ручного тестирования на проникновение программного продукта используется последовательный стандартный подход, включающий следующие этапы:
2. Автоматическое тестирование на проникновение
Этот полезный и эффективный подход к проведению испытаний на проникновение предполагает использование специализированного инструментария. Автоматическое тестирование надежно, удобно, оно происходит очень быстро и легко поддается анализу. Инструменты проверки эффективны для точного обнаружения дефектов безопасности, присутствующих в системе, за короткий промежуток времени, а также для создания «кристально чистых» отчетов.
Назовем лишь некоторые из популярных и широко используемых инструментов тестирования на проникновение:
Многие инструменты для автоматизированного тестирования можно найти в готовых сборках Linux (Kali Linux, Mantra OS).
Для работы над конкретным проектом придется выбирать инструмент, отвечающий целому ряду требований и критериев:
3. Сочетание ручного и автоматического тестирования на проникновение
Данный подход может быть признан оптимальным, так как он сочетает в себе преимущества первых двух вариантов и обеспечивает оперативный контроль с помощью надежного и точного проникновения в программный продукт.
Типы испытаний на проникновение
Тестирование на проникновение в зависимости от используемых элементов и объектов может быть отнесено к следующим типам:
Классифицировать тестирование на проникновение также можно и на основе используемых подходов к тестированию:
Ограничения тестирования на проникновение.
У тестирования на проникновение существует ряд ограничений:
Вывод:
Хакеры, вооруженные усовершенствованными технологиями с широким спектром ресурсов и инструментов, зачастую легко врываются в систему или сеть с намерением причинить вред репутации и активам компании. Проверка на проникновение в большей мере, чем другие виды тестирования, может рассматриваться как инструмент выявления различных пробелов в безопасности, помогающий свести на нет потенциальные угрозы для системы в целом.
В завершение приведу несколько полезных ссылок.
Проект Awesome Penetration Testing постоянно обновляет инструменты, статьи, книги по тестированию на проникновение.
ПЕНТЕСТ – РЕАЛЬНЫЙ ВЗГЛЯД НА ИНФОРМАЦИОННУЮ БЕЗОПАСНОСТЬ ОРГАНИЗАЦИИ
Тестирование на проникновение (сокр. ПенТестинг, от англ. Penetration Testing) – это процедура (попытка) оценки реальной защищенности информационной системы с использованием контролируемых и максимально безопасных для инфраструктуры и бизнес-процессов атак, а также выявление и попытки эксплуатации уязвимостей. Пентест позволяет предоставить детальную информацию о существующих проблемах безопасности, распланировать наиболее важные направления по улучшению реальной защищённости информационной системы.
Не все пентест что зовётся «пентестом».
Не каждую услугу можно назвать «пентестом». В последнее время на рынке сложилась ситуация, что ряд вендоров программных продуктов и интеграторов предлагают в качестве пентеста отчеты сканеров уязвимостей. Иногда, даже не проводят ручную верификацию (проверку) найденных уязвимостей.
В результате, по сути, простая услуга продается под видом более дорогой. Полноценный пентест – это не только автоматизированное сканирование с использованием существующих сканеров уязвимостей (хотя это один из этапов тестирования) или проверка вручную на уязвимости, к примеру, веб-сайта; это скорее полноценной анализ IT-инфраструктуры на предмет защищенности. Важно не просто запустить сканер, важно понять, какие проблемы в текущей инфраструктуре могут быть и как ими может воспользоваться злоумышленник.
Вторым важным отличием тестирования на проникновение от простого сканирования является выдача рекомендаций по устранению обнаруженных уязвимостей. Важно не только выявить проблемы безопасности, но и решить (избавиться от них) их наиболее экономически эффективным способом.
Третьей особенностью является то, что пентест включает и анализ инфраструктуры – недостатков в топологии сети, настройках оборудования (в т.ч. и WiFi-оборудования), мобильных устройств и мобильных приложений, и других потенциальных точек воздействия.
Пентест как он есть.
Тестирование на проникновение предполагает 2 направления работ:
Внешний пентест | Внутренний пентест |
В данном случае проверке подвергаются все пограничные ресурсы, расположенные в DMZ (веб-сайты, средства удаленного доступа, сервера SIP-телефонии и конференцсвязи), межсетевые экраны и иные устройства, доступные с публичных IP-адресов. Цель нарушителя – проникновение во внутреннюю сеть, либо получение контроля над внешними ресурсами. | В данном случае проверке подвергаются внутренние сервера, АРМ пользователей, сетевое оборудование, средства виртуализации. Выявляются недостатки в организации сети, проверяются гостевые участки сети, Wi-Fi сети. Также проверяются те же ресурсы, что и при внешнем пентесте, но с доступом из внутренней сети (внутренних IP-адресов), т.е. нарушитель действует из сегмента локальной сети. Как при проведении, так и при планировании работа по пентесту рекомендуется руководствоваться методиками по их проведению. Наиболее полными являются методологии PTES (Penetration Testing Execution Standard), OWASP (Open Web Application Security Project), OSSTMM (Open Source Security Testing Methodology Manual). Однако, никто не запрещает обратиться и к другим стандартам и методологиям, к примеру, к NIST SP 800-115 (Technical Guide to Information Security Testing and Assessment) или к ISSAF (Information Systems Security Assessment Framework). Отдельные требования к пентесту представлены и в отраслевых стандартах, к примеру, PCI DSS. При выявлении уязвимостей и подготовке отчета рекомендуется пользоваться базами известных уязвимостей (CVE, OSVDB, бюллетени безопасности Microsoft) или к описанию слабостей программного обеспечения (CWE), а при оценке выявленных уязвимостей обращаться к базам NVD или метрикам CVSS. Не бойтесь проводить тестирование своих ресурсов и инфраструктуры – это один из наиболее эффективных и безопасных способ выявить проблемы в защищенности вашей корпоративной информационной системы. И помните, защищенность всей информационной системы определяется защищённостью самого слабого звена. Кому и зачем нужен пентест и как правильно выбрать пентестераТестирование на проникновение (pentest, Penetration Testing) является одним из наиболее эффективных способов анализа защищённости информационной системы компании или отдельных её элементов. Однако практическое воплощение пентеста вызывает много вопросов у заказчиков. Мы пригласили ведущих экспертов этого сектора отечественного ИБ-рынка, чтобы понять, кому нужна эта услуга, как правильно выбрать исполнителя и чего ожидать в результате пентеста. ВведениеПрактически одновременно с появлением систем информационной безопасности и понятия «периметр» стал проводиться анализ защищённости компаний и отдельных компонентов их инфраструктуры. Одним из инструментов такого анализа является тест на проникновение, или пентест. Однако, несмотря на известность и широкое применение такого метода проверки безопасности, он по-прежнему вызывает много вопросов у потенциальных заказчиков. Отчасти виной тому несогласованность в терминологии — ведь под пентестом нередко понимают схожие, но не тождественные понятия из той же предметной области. Ещё один важный аспект — непонимание клиентом методов работы команды пентестеров и неправильные ожидания от результата тестирования. Мы собрали ведущих экспертов, можно сказать элиту отечественного пентестинга, в студии Anti-Malware.ru, чтобы в рамках проекта AM Live разобраться, что они вкладывают в понятие «тестирование на проникновение», кому нужен подобный анализ, кто и как его должен проводить. Прямой эфир получился насыщенным и интересным — представляем вам ключевые тезисы беседы, длившейся более 2,5 часов. В дискуссии приняли участие: Модератор и ведущий конференции — Алексей Лукацкий, бизнес-консультант по безопасности Cisco. Что такое пентест и для чего он нуженДалёкий от информационной безопасности человек не всегда отделяет понятие «пентест» от смежных терминов, таких как тестирование на уязвимости, имитация атак или редтиминг (Red Teaming), программы Bug Bounty, а также сервисы и продукты класса Breach and Attack Simulation (BAS). Модератор дискуссии предложил гостям студии дать определение пентеста, а также рассказать, в чём отличие этого метода тестирования от других средств проверки состояния системы безопасности. Омар Ганиев:
Александр Зайцев:
Артём Мелёхин:
Вячеслав Васин:
Сергей Зеленский:
Александр Колесов:
Эксперты выделили два ключевых отличия пентеста и редтиминга от других проверок: Зрители прямого эфира онлайн-конференции при анализе защищённости в первую очередь обращаются к сканированию уязвимостей. Этот вариант выбрала почти половина участников опроса — 48 %. Аудиты и Red Teaming используют в качестве первоочередной меры по 18 % опрошенных. На долю пентестов пришлось 14 % ответов респондентов. Программы Bug Bounty отметили лишь 2 % респондентов. Рисунок 1. Какие методы анализа защищённости вы практикуете в своей компании в первую очередь? Спикеры AM Live отметили большое влияние регулирующих актов на отрасль. Как рассказали некоторые эксперты, большинство клиентов обращаются к специалистам по тестированию защищённости только получив соответствующие требования контролирующих органов. Лишь незначительная часть заказчиков покупает услуги пентеста для экспертной оценки состояния периметра и средств безопасности. Ключевым драйвером рынка с точки зрения регуляторики сейчас является Банк России. Вместе с тем часть собравшихся в студии специалистов высказали мнение, что рынок тестирования на проникновение очень пёстр и запросы клиентов могут быть самыми разнообразными — от пентеста топливного датчика до задач уровня «application security». Как выбрать хорошего пентестераВ следующей части беседы модератор предложил поговорить о проблемах выбора подрядчика для тестирования на проникновение. Какие факторы необходимо учитывать заказчикам, обращаясь к специализированным компаниям, как за громкими маркетинговыми заявлениями найти настоящих профессионалов, какие подводные камни есть у этого процесса? Наши эксперты отметили следующие важные критерии оценки пентестеров: Однако, как точно подметил ведущий онлайн-конференции, многие из этих факторов трудно формализуемы и не всегда дают адекватную картину. Спикеры возразили на это, что рынок тестирования на проникновение в России весьма узок — квалифицированные команды пентестеров есть у 10–20 специализированных компаний. Эксперты порекомендовали потенциальным заказчикам предварительно поинтересоваться личностями конкретных исполнителей анализа защищённости, ознакомиться с их резюме и на основании этих данных делать вывод о квалификации подрядчика. Гости студии подчеркнули важность референсов (отзывов от других заказчиков), однако отметили, что в России их получить весьма сложно, поскольку организации не желают афишировать факт проведения пентеста и возможное обнаружение уязвимостей. Один из вопросов, которые мы задали зрителям прямого эфира, также касался выбора пентестера. Результаты опроса на эту тему показали, что большинство компаний выбирают поставщиков таких услуг по референсам — этот вариант отметили 36 % респондентов. Известность компании является ключевым фактором для 21 % опрошенных, а сертификация специалистов — для 17 %. Цена имеет решающее значение для 15 %. Ещё 11 % в первую очередь обращают внимание на число выполненных проектов. Рисунок 2. Как вы выбираете пентестера? Другой интересный вопрос касался причин, по которым принимают решение обратиться к пентестерам. Большая часть — 41 % — зрителей прямого эфира заявили, что инициатором первого обращения к специалистам по тестированию на проникновение был бизнес. Ещё 17 % заказали подобные услуги по требованию законодательства, а 7 % подвигнул к этому инцидент, произошедший у коллег или в своей компании. Ответы «Реклама и хайп», а также «Интегратор предложил попробовать» набрали по 4 % голосов. Другие причины побудили впервые обратиться к пентестерам 27 % респондентов. Рисунок 3. Что повлияло на ваше первое обращение к пентестерам? Как долго выполняется пентест и как часто он должен проводитьсяИнтересная дискуссия развернулась на тему сроков выполнения тестирования на проникновение. Большинство экспертов согласились, что срок проведения пентеста обычно составляет от трёх недель до месяца. Тем не менее период работ может быть как увеличен, так и незначительно уменьшен, в зависимости от задачи. При этом специалисты отметили, что даже для ограниченного охвата (скоупа) можно потратить «лишнее» время на углублённое тестирование и изучение путей проникновения. К сожалению, заключение договора на оказание услуг по тестированию на проникновение обычно занимает больше времени, чем сам пентест. По мнению спикеров конференции, различные согласования могут продолжаться от двух до четырёх месяцев — и чем больше компания заказчика, тем больше бюрократических препон нужно преодолеть. Эксперты также отметили, что при работе со стартапами этап согласования проекта проходит гораздо быстрее. Что касается частоты проведения тестирования на проникновение, то, по мнению спикеров AM Live, в идеале пентест должен проводиться с такой же частотой, с какой обновляется целевое приложение. Если же речь идёт о тестировании системы безопасности, то непрерывный пентест неэффективен — большинство экспертов согласились, что такой анализ достаточно проводить 2–3 раза в год. Мы поинтересовались у зрителей прямого эфира тем, как часто в их компаниях проводится тестирование на проникновение. Более половины респондентов — 52 % — ответили, что это непрерывный процесс. Противоположный вариант «Как на душу положит» набрал 23 % голосов. При этом 17 % участников опроса проводят пентесты один раз в год, а 5 % — раз в квартал. Реактивный подход исповедуют 3 % опрошенных — они выполняют пентесты после произошедших инцидентов. Рисунок 4. Как часто вы проводите пентест? Что должен включать в себя отчёт о пентестеПо мнению участников дискуссии, результатами тестирования на проникновение должны быть не только перечень найденных уязвимостей или слабых мест системы безопасности заказчика, но и рекомендации по их устранению. При этом наши спикеры отметили, что подобные рекомендации чаще всего будут носить общий характер, поскольку для детального плана устранения проблем требуется более глубокое погружение в процессы заказчика. Структура отчёта чаще всего включает в себя резюме с основными выводами (executive summary), перечень найденных уязвимостей, рекомендации, а также детальное описание процесса тестирования. По желанию заказчика в отчёт могут быть включены ссылки на базы уязвимостей ФСТЭК России или техник MITRE, но это явление не носит массового характера. Такие требования более характерны для отчёта о работе Red Team. Кто должен проводить пентестЕщё один блок вопросов был посвящён исполнителям тестирования. Может ли организация самостоятельно выполнять пентесты? В чём преимущества и недостатки работы со специализированной организацией? Должен ли пентестер быть независим от вендора? Эти и другие вопросы обсудили гости студии Anti-Malware.ru. Ключевой проблемой самостоятельных пентестов эксперты назвали «замыливание» взгляда специалистов, долгое время занимающихся одной и той же задачей. Чтобы этого не происходило, рекомендуется время от времени привлекать внешних пентестеров для обогащения арсенала инструментов и методов собственной команды. Другой проблемой такого подхода является кадровый голод — недостаток квалифицированных специалистов, способных качественно выполнять тестирование на проникновение. Эксперты отметили, что в их компаниях существует правило регулярно обновлять команду тестировщиков, работающих на одном проекте; кроме того, подобные требования иногда выставляет и сам заказчик. Кто проводит пентест у зрителей онлайн конференции? Большинство участников опроса (37 %) утверждают, что выполняют тестирование на проникновение самостоятельно. Ещё 23 % пользуются услугами компании специализирующейся на анализе защищённости. Обращаются за помощью к интеграторам 13 % респондентов, а 3 % размещаются на краудсорсинговых площадках Bug Bounty. Другими вариантами проведения пентеста пользуются 24 % участников опроса. Рисунок 5. Кто проводит у вас пентест? В заключении беседы мы узнали у зрителей прямого эфира, изменилось ли их мнение относительно пентестов после просмотра онлайн-конференции. Большинство (40 %) опрошенных заявили, что заинтересовались этой темой и планируют начать пользоваться этим средством обеспечения безопасности. Четверть респондентов отметили, что это — интересный способ повышения уровня ИБ, но их компания ещё не готова к его использованию. Считают тестирование на проникновение более хайпом, чем рабочим ИБ-инструментом, 13 % опрошенных, а ещё 11 % отметили, что участники дискуссии были недостаточно убедительны и не смогли объяснить преимуществ пентеста. Не поняли, о чём шла речь во время прямого эфира, также 11 % зрителей. Рисунок 6. Каково ваше мнение относительно пентестов после эфира? ВыводыПентест — это универсальный инструмент анализа защищённости. Он может быть использован как для тестирования всей инфраструктуры безопасности компании, так и для поиска уязвимостей в отдельных её компонентах и даже конкретных программных продуктах. Тестирование на проникновение по своим методам отличается от редтиминга, сканирования уязвимостей и работы BAS-систем. Результатом пентеста является не только перечень обнаруженных недостатков, но и отчёт с рекомендациями по их устранению. Пентестер старается не просто найти уязвимость, но пройти путь потенциального злоумышленника — из заданной скоупом точки начала атаки до целевой системы. Специализированные компании, имеющие большой опыт проведения пентестов и готовые команды, позволяют проводить тестирование на проникновение с наибольшей эффективностью. Привлечение таких подрядчиков для проведения анализа защищённости поможет улучшить систему безопасности, даже если у заказчика сложилась практика выполнения пентеста своими силами. Регулярность проведения тестирования обычно определяется исходя из специфики конкретной компании, а срок проведения самих работ вместе с этапом согласования может составлять от месяца до полугода.
|