Запуск 14-й лаборатории состоится 10 декабря 2019 года. Специалисты в области ИБ смогут легально оценить силы в поиске и эксплуатации уязвимостей, закрепить навыки и определить лидеров этого сезона.

О лабораториях

Лаборатории Test lab — бесплатные площадки для развития навыков тестирования на проникновение и анализа защищённости корпоративных сетей и систем. Каждая лаборатория имеет единую инфраструктуру, полноценную легенду и множество векторов атак, из которых участникам необходимо составить результативный сценарий для компрометации информационной системы. При разработке лабораторий основными критериями являются реалистичность, актуальность заложенных уязвимостей и методов их эксплуатации. В отличие от CTF, лаборатории представляют собой взаимосвязанную ИТ-структуру уязвимых и неуязвимых компонентов (серверов, сетевого оборудования и рабочих станций), таким образом максимально приближая действия атакующих к реальных условиям.

Карта атак и описание

После регистрации в личном кабинете будет доступна информация для подключения к лаборатории через OpenVPN. Установив соединение, атакующий получает доступ к шлюзам, за которыми расположена корпоративная сеть виртуальной компании. Выполнив успешный сценарий, участник развивает атаку уже на внутренние сети. В зависимости от структуры каждой конкретной лаборатории, используются различные техники продвижения во внутрь (pivoting), например, с использованием доступных со шлюзов сервисов (SSH, OpenVPN, веб-приложения). Лаборатории разрабатываются таким образом, чтобы участники как можно меньше мешали своими действиями друг другу. Все попытки произвести атаку на лабораторию отображаются в виде онлайн-карты на главной странице, сопоставляя внешний и внутренний адрес атакующего.

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

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

В лаборатории используются:

  • различные сетевые сервисы (Mail, DNS, AD, VPN, IDS, WAF, DB и т.д);
  • веб-приложения, API и микросервсисы (PHP, Python, Django, Java);
  • различные Desktop- и клиент-серверные приложения;
  • дополнительные вспомогательные сервисы для придания реалистичности.

Для прохождения лаборатории потребуются:

  • навыки работы с различными сетевыми сервисами и протоколами;
  • знание лучших практик при проведении тестирования на проникновение (OSINT, OWASP и т.д.);
  • навыки работы со специализированным инструментарием (Nmap, SQLmap, Burp Suite, WPScan, Nikto/DirBuster/w3af, Dig, Patator/Hydra, IDA Pro и т.д.);
  • опыт разработки и обратной разработки (реверс-инжиниринг);
  • опыт фаззинга и поиска уязвимостей в сетевых сервисах и веб-приложениях.

О разработчике

Pentestit специализируется в области практической информационной безопасности, предоставляет услуги анализа защищённости информационных систем, проводит обучение в области практической ИБ, а также осуществляет разработку комплексного программного обеспечения для защиты от хакерских атак на основе машинного обучения — Nemesida WAF.

Pentestit сотрудничает с компаниями из России, США, Великобритании, Чехии, Канады, Украины, Молдавии, Азербайджана и Казахстана.

Статистика по Test lab 12

В настоящий момент на сайте лабораторий зарегистрировано почти 30K участников со всего мира. Первое задание из прошедшей лаборатории выполнили 959 участников, но только 50 из них смогли скомпрометировать ИТ-структуру виртуальной компании полностью.

Разбор нескольких заданий из Test lab 12

Helpdesk

В форме сброса пароля, доступной на странице форума, используется небезопасная передача параметра.

Если посмотреть код страницы с формой для смены пароля или перехватить запрос с использованием Burp Suite, то можно обнаружить некий токен в скрытом поле. При обновлении страницы скрытый параметр не изменился, значит, это не CSRF-токен, а надпись, похожая на закодированный в base64 текст. Учитывая, что в форме для смены пароля запрашивается только новый пароль и его подтверждение, то можно предположить, что этот параметр как-то связан с самим пользователем и, попробовав его декодировать, видим, что он похож на ID пользователя. Если правильно подставить параметр, то можно задать новый пароль другому пользователю.

DB

В задании необходимо произвести разбор и модификацию Java-приложения для последующей атаки на серверную часть. Декомпилировав обнаруженный в процессе прохождения лаборатории jar-файл, видим, что на сервер отправляется объект класса Request, и в одном из режимов передается строка с фамилией пользователя. Проверим теорию на наличие SQL-уязвимости, изменив соответствующий конструктор этого класса и добавив запрос строки от пользователя для последующей отправки на сервер.

Компилируем класс, заменяем его в исходном jar-файле и запускаем обновленное приложение с подстановкой нашего SQL-пейлоада:

Image

Задание не является типичным при проведении тестирования на проникновение, тем не менее, мы решили его включить в состав лаборатории.

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

Искомая картинка вернула нам зашифрованный в ней токен.

Регистрация

Доступ к лаборатории предоставляется бесплатно и без ограничений. Для регистрации на площадке необходимо перейти по ссылке. После подтверждения электронной почты участнику выдается логин и пароль для удалённого подключения к лаборатории.

Предварительная подготовка

Чтобы быстрее освоиться в предстоящей лаборатории, мы подготовили небольшой список материалов и инструментов:

До встречи в «The c[RU].sh»!