Главное отличие лабораторий PentestIT от CTF-соревнований заключается в том, что «Test.lab» создается на основе ИТ-структуры реальных компаний (AD, GW, File, телефония и пр.), хотя уязвимости схожи (связанные с недостатками вреализациях сетевых протоколов, ошибками в конфигурациях и коде, человеческим фактором).
Константин Левин (PentestIT Team)
«Мы создаем лаборатории, максимально приближенные к реальной ИТ-структуре компаний, чтобы участники могли работать с полноценными уязвимостями, а не наигранными по какому-нибудь сценарию».
Участники (атакующие) выполняют действия, аналогичные действиям специалистов, проводящих пентест по методу «Серый ящик» («Grey Box»). Это метод проведения тестирования на проникновение, при котором доступна только часть информации об атакуемой среде/системе. Участие в «Test.lab» включает в себя практически все фазы «этичного взлома» – от сбора информации до получения доступа к системе.
В момент запуска каждой лаборатории (на сегодняшний день было запущено четыре) участники получают подробную схему сети, доступ к технической площадке и модулю статистики.
Константин Ковалев (PentestIT Team)
«Разрабатывая веб-приложения (например, модули статистики lab.pentestit.ru, samag.pentestit.ru) с учетом нашей аудитории, необходимо писать максимально безопасный код».
«Test.lab» представляют собой варианты типичных компьютерных сетей (с серверами и рабочими станциями), в которые намеренно вносятся уязвимости, охватывающие практически все направления ИБ (сетевая безопасность, безопасность веб-приложений, криптография, реверс-инженерия, анализ кода и т.д.).
Вадим Колисниченко (PentestIT Team)
«На каждом узле в «Test.lab» имеется как минимум один вектор атаки. Для стабильной работы серверов важно учитывать все возможные варианты эксплуатации не только заложенных уязвимостей, но и других компонентов, доступных участникам».
Компоненты лаборатории разделяются на логические сегменты (External, DMZ, Internal) для большей реалистичности. Все участники начинают атаки из зоны External и в случае успеха получают доступ к DMZ и Internal-зонам. На каждом атакуемом узле в «Test.lab» заложен как минимум один вектор атаки.
Обнаружив уязвимость, участник пытается выполнить ее эксплуатацию и в случае успеха получает доступ к узлу, на котором находится флаг. Полученный флаг вносится в модуль статистики.
Победителем считается тот участник, кто собрал все флаги первым, то есть, по сути, тот, кому первому удастся выполнить компрометацию всей ИТ-структуры виртуальной компании.
Срок работы каждой из лабораторий – примерно календарный месяц.
Максим Майоровский (PentestIT Team)
«При разработке заданий мы используем не только бинарные уязвимости, но и ошибки конфигурации, что в реальных условиях встречается чаще».
Кстати, лаборатория разрабатывается таким образом, что даже после эксплуатации заложенных «дыр» она сохраняет свое первоначальное состояние, позволяя другим участникам продолжать сбор флагов. Это очень важный и сложный момент, поскольку в большинстве случаев эксплуатация уязвимости позволяет атакующему ограничить доступ других участников к серверу или службе.
Организовать доступность сервера с заложенной уязвимостью даже после эксплуатации – вот одна из главных и сложных задач для команды PentestIT.
Алексей Белоусов (PentestIT Team)
«Лабораторные задания с заложенными уязвимостями требуют разработки очень безопасного кода, который не позволит атакующему выходить за пределы заложенных уязвимостей».
Запуск новой лаборатории для команды PentestIT – это целый процесс, включающий согласование заданий (обязательно актуальных, распространенных), принципы взаимодействия узлов, реализацию и контроль доступа. Такая работа требует от команды не только глубоких знаний в области обеспечения ИБ, но и большой практической подготовки. Также необходимо обеспечивать защиту других ресурсов, не входящих в лабораторию, но позволяющих ей функционировать.
Лука Сафонов (PentestIT Team)
«Это пентест-лаборатория, а не конкурс домохозяек».
Также PentestIT проводит «Train.lab» – обучающие лаборатории, в которых рассказывает о методах выполнения тестирования на проникновение, способах и инструментах. Такие занятия позволяют расширитькругозор в области обеспечения ИБ, освоить способы проведения пентеста, повысить свою квалификацию.
На занятиях в «Train.lab» специалисты из PentestIT делятся опытом проведения тестирования на проникновение, рассказывают о различных способах эксплуатации «дыр» (таких как SQLi, XSS, Shell, MiTM и прочих).
PentestIT Team – команда этичных хакеров, специалистов в области ИБ, выполняющих консультирование, аудит и тестирование на проникновение информационных систем.
Роман Романов (PentestIT Team): «Для того чтобы успешно выполнять пентест, необходимо знать не только уязвимости и способы их эксплуатации, но и модель поведения предполагаемого злоумышленника. Каждая лаборатория для нас – это работа со специфической аудиторией, способ проверить себя, свои возможности обеспечения ИБ, и мы с этим успешно справляемся».
Действительно, учитывая специфику аудитории PentestIT, очень сложно обеспечить безопасность технических компонентов проекта, поскольку у многих появляется желание проверить «на стойкость» всю техническую площадку, а не только узлы лаборатории.
Приглашаем всех желающих принять участия в лабораториях PentestIT, которые собирают вокруг себя людей с абсолютно разным уровнем подготовки – от начинающих специалистов в области ИБ до профессиональных хакеров, при этом каждый открывает для себя что-то новое в области обеспечения ИБ. Информация о прошедших, текущих и будущих лабораториях доступна на сайте www.pentestit.ru.
«PentesIT «Test.lab» – это атмосфера реальных угроз и нестандартного мышления, это – вызов!»