Здравствуйте, наш дорогой читатель! Хочу представиться: меня зовут Станислав( @clevergod ), я вице-капитан команды Codeby.net, и этой статьей мы начинаем серию из 3-4 материалов, посвященных нашему участию в кибер-тренировочный полигон The Standoff .
По старой привычке постараемся без эмоций описать всю боль, слезы и радость удивительного 123-часового марафона, который состоялся для нашей команды под названием Противостояние 2020 .
В этой статье мы расскажем, почему правильная подготовка – это более половины успеха и почему так важно организовать взаимодействие.
Нет пентест-команды в рамках одного отдельного проекта.
Мы постараемся поэтапно передать атмосферу, но поверьте, 5 дней безудержного веселья можно описать в бесконечной серии статей или даже снять как боевик.
Кто такие Кодби - форум энтузиастов, неравнодушных ребят, проживающих в разных странах и регионах, которых объединяет стремление к саморазвитию и бесплатной подготовке подрастающего поколения специалистов в различных областях как ИТ, так и информационной безопасности.
P.S. - Хочу сказать, что мы с капитаном (BadBlackHat) шли к этой победе очень долго, преодолевая одну преграду за другой, отдавая все свои силы и ресурсы, чтобы воплотить в жизнь нашу общую мечту.
Внимание, в статье много скриншотов!
Противостояние The Standoff — это уникальная киберсреда, созданная экспертами в области ИТ и информационной безопасности для безопасного развития ИТ-инфраструктуры, которая позволяет смоделировать цифрового двойника современного мегаполиса и продемонстрировать, как киберпреступники могут повлиять на его высокотехнологичную инфраструктуру.
Виртуальный город Standoff содержит те же аппаратные и программные компоненты со всеми существующими уязвимостями, что и реальный город. В этом году построены аэропорт, морской порт, железная дорога, бизнес-центр, банк, парк развлечений, городские системы (светофоры и уличное освещение), система телерадиовещания, нефтедобывающая станция, электрическая подстанция, Здесь воссозданы газораспределительная станция, теплоэлектростанция, ветроэлектростанция, нефтехимический завод. .
На платформе The Standoff специалисты по киберзащите ( синий команды - 6 команд) и нападающие ( красный команды — 29 команд) отыгрывают целый ряд реальных сценариев кибератак и моделируют полные циклы тестирования.
Оговорюсь: «Противостояние» как концепция выросло из «противостояния», проводившегося на протяжении нескольких лет в рамках международного Форум Positive Hack Days , в котором мы участвовали год назад (в 2019 году).
А о том, как прошло наше первое знакомство с мероприятием, почему мы опустились с 5-го места на 12-е и о наших планах подготовки, вы можете прочитать здесь.
Противостояние
Противостояние В целом цели злоумышленников в этом году были ясны: нарушить нормальное состояние этого большого и красивого виртуального города или реализовать бизнес-риски иным способом, например:
- украсть персональные данные пользователей или документы с компьютера топ-менеджера;
- снять все деньги со счетов клиентов банка;
- порвать багажную ленту в аэропорту;
- переместить рампу при высадке пассажиров;
- разлить нефть, остановить добычу;
- выключить светофор;
- стать причиной железнодорожной катастрофы;
и другие риски, присущие и не предусмотренные организаторами.
Помимо этих задач перед хакерами также стояла задача найти как можно больше уязвимостей за вознаграждение (программа Bug Bounty).
# Удаленный
Удаленный Итак, в начале текущего, смею сказать, «ковидного» года мы были включены в 15 отборочных команд и начали предпринимать попытки подготовиться к мероприятию с учетом всех прошлогодних «косяков и неровностей».
Организаторы поставили условия обязательного присутствия в команде определенного наставника (общественного деятеля, ранее имевшего опыт участия в мероприятии и не участвующего в этом году) и.
мы с капитаном ни о чем другом придумать не могли.
а пригласить нашего товарища Батыра, ныне успешного бизнесмена и технических директоров казахстанских компаний НитроТим и Спектр , Батыржан Тютеев (@b4trjan) отозвался о нас положительно, и мы были рады принять его в свою команду в качестве нашего наставника и проводника.
Но вы, наверное, уже слышали, что первоначальная дата мероприятия (11 марта) перенесено на осень 2020 г.
.
Здесь вся запланированная нами подготовка была отложена на второй план; вся собравшаяся команда, без единого дня подготовки, разбежалась по своим делам.
я ( @clevergod ) готовился к экзамену OSCP, привлек Тимура ( @BadBlackHat ) и еще несколько ребят для решения ряда задач на различных CTF-платформах, таких как HackTheBox, priviahub, TryHackMe. Мы делали работу и проекты, уроки с детьми, наблюдали за ситуацией в стране и мире, а также за теми коллапсами, которые возникали локально в Казахстане, Киргизии, России, Украине и Белоруссии.
Но в один момент меня охватила горячка – а вдруг организаторы действительно сдержат свое слово и кибербитва пройдет удаленно, что на фоне общей финансовой расхлябанности в этом году казалось нереальным.
И вот она Новости :
Начинать После этого объявления мы с Тимуром, как истинные старейшины, за полтора месяца до мероприятия начали думать, а что же нам вообще делать?! Мы вообще не готовились, не было ни встреч, ни игр нападения-защиты.
Еще хочу отметить, что на тот момент мы не знали ни регламента, ни состава команд, но начали потихоньку задумываться об участии.
Мы принимали участие в конкурсе от организаторов 18 сентября, я выиграл несколько "приятных вещей" и отказался от них в связи с тем, что наш любимый Казахстан в очередной раз был "набит плотно" (Аркадий Самсонов, Вам личный привет).
Объявление Мы просмотрели свои прошлогодние записи и поняли, что самым неожиданным для нашей команды в прошлом году стала личная встреча, как бы плохо это ни звучало.
Но парадокс ситуации именно в том, что все, кто до нас участвовал и побеждал, - это достаточно крупные и именитые компании, штат участников которых был огромен и они не только знали друг друга, но и выполняли друг с другом реальные проекты, и вопросы инструментов, контрольных списков и других орг.
их моменты были реализованы на уровне ВНД и ДНК.
И до 7 ноября вся наша команда находилась в напряжении, ожидая вердикта организаторов по составу команд. И да, за 5 дней до старта мы были последними, кого включили в список участников!
Список команд Но мы знаем каждого из участников команды нашего форума, их сильные и слабые стороны, и мы играли в «дистанционном» режиме, нам просто нужно немного реструктурировать вектор подготовки и найти инструмент для накопления данных, отточить навыки проведения захваченная точка (здесь сервис нам очень помог Царь горы (КоТХ) .
Со слезами на глазах вспоминаю 2019 год, когда мы внедрили 1-День одной услуги, и с удивлением обнаружила, что там нас, мягко говоря, не ждали эти мастодонты, которые управляли всеми офисами и делали все, чтобы обеспечить что наши обратные связи были уничтожены, даже не успев поработать.
Бегать В процессе организационных вопросов после очередных новостей о том, что один из наших лучших багхантеров Рамазан (r0hack) покидает гонку внутри нашей команды и примет участие в «своем DeteAct», а также при объявлении новости о новых правилах в удаленном режиме - 30 красных, 5 синих и 6 VPN-подключений для атакующей команды, некоторые ребята из предыдущего состава также оказались вне команды по ряду причин.
Почему «Бегайте дураки»? — Опыт участия в прошлом году имеет влияние.
Участвовало 15 команд, в результате чего вся ИС (инфраструктура) довольно часто была парализована, организаторы несколько раз «переворачивали» ИС, и наша команда, как и другие участники, находилась в локальной сети, а не в VPN-туннелях.
Мы очень начали волноваться за техническую составляющую организаторов, потому что, во-первых, нагрузка на узлы VPN-серверов.
во-вторых, простое и банальное сканирование сети может привести к накоплению огромного трафика, не говоря уже об автоматизированных скриптах на высокоуровневых моделях OSI. Мы поняли, что нам нужно не только найти замену, но и усилить нашу команду, разбросанную по всему СНГ.
Выделить из всего этого региональную и почасовую выгоду, привлечь очень нужных узкопрофильных и невероятно талантливых ребят. В итоге собрались люди из Европы во Владивосток (привет Доброфлоту): Олег (@undefi) из Костаная, Александр (@tgrmofficial), Кирилл (@K1R0Byte) и Мурат ( @manfromkz ) из Алматы, Magick из Барселоны, Богдан (Mister_Bert0ni) из Украины, гости команды из России и другие.
Каждому человеку в команде была отведена отдельная роль.
Мы с Тимуром решили разделить людей на 2 команды с 2-мя отдельными суб-капитанами и линиями связи (и даже заместителями капитана на всякий случай), отдельными голосовыми каналами и разными задачами, чтобы никто никому не мешал.
При этом данные заполнялись и накапливались четко и без помех.
В результате мы слегка перенасытили наш дискорд-канал информацией.
Как ни пытались его структурировать, все равно получался бардак, поэтому решили создать отдельный канал, а старый использовали как личную Википедию.
«Почему ДискордЭ» - спросите вы, ведь мы с рядом ребят уже довольно давно им пользуемся, и геймерами мы ни разу не были.
Это единственная платформа, где можно писать тексты, публиковать скриншоты, говорить голосом и транслировать экран без потери качества (ни одно письмо моих текстов не содержит платной рекламы, только полезные заметки).
Мы несколько раз играли с помощью этого чата в дискорд на нескольких платформах, собирая одновременно в лучшем случае 2-6 человек.
Вот как это выглядело - наш разлад:
Раздор # Первая боль За 2 дня до старта была развернута большая, лично для нас, ИС на «забугорных дедушках» и «казахстанских серверах» (Александр А.
, спасибо за железо):
- У нас были сканеры уязвимостей «всех видов и марок» (сознательно не упоминаю производителей);
- Различные сервисы и сервисы для связи;
- Фишинговые сервисы с заранее приобретенными отдельно доменными именами, соответствующими конторе.
сайт конференции и организаторов;
- Белые IP-адреса (Сергей Д.
, спасибо за Интернет);
- Различные самописные скрипты и инъекции
- Брут и прокси-серверы и т.д.
Самое смешное, что за пару часов до старта мы запутались при настройке VLAN и сбросили Ethernet-интерфейс с доступом в Интернет на одном из серверов с ESXi, а сам сервер в это время уже находился в Костанайском дата-центре .
И как вы, наверное, догадались, Костанайская область и сам город Костанай в очередной раз оказались в изоляции, ограждение подъездов и въездов в город кордонами .
Наш Олег через 6 часов наконец-то добрался до сервера и "передернул".
ну да ладно, речь о сетевом интерфейсе, пошляки :) Также хотелось бы отметить, что у нас был «туз в рукаве» — это новая веха в тестировании на проникновение, платформа автоматизации пентестов PenTera от Pcysys (Citum и Axxtel hi), на которую мы очень надеялись перед началом тестирования.
марафон.
В 98% сетей L2, даже сильно VLANed, он показал невероятные результаты! # Вторая боль В ночь перед началом соревнований организаторы присылают нам данные VPN-туннеля и это, господа, L2tp + IPSEC .
Да, представьте себе, в 21 веке.
Мы были в ужасе, почему-то надеясь, что к нам прилетят конфиги OpenVPN — видимо, мы слишком наигрались на современных CTF-сайтах.
Ну а боль в том, что мы находились в часовых поясах от -7 GMT до +10 GMT, кроме того, прошла неделя с тех пор, как мы развернули PFSence и настроили маршрутизацию, прописали правила для обратных соединений (Bind и обратный шелл), создали, Мы настроил и раздал всем персональные конфиги, для которых были написаны правила, протестированы на CTF сайтах для всех.
И представьте себе, из-за отсутствия поддержки устаревших протоколов PFSence и OpenSence нам пришлось в одночасье придумывать аналог, а их в виртуальной среде не так уж и много (например, MikrotikOS, который, кстати, , не совсем бесплатно), переписать все роллы, проверить хоть как-то и раздать всем желающим.
# Старт 12.11.2020 Начали мы довольно быстро, без ссор и эмоций, без паники и лишних рассуждений.
Все в команде понимали свою роль и действовали четко и позиционно.
Конечно, нам пришлось поначалу изрядно попотеть, когда мы увидели на приборной панели целую серию принятых очков от соперников.
Панель приборов Мы постарались сосредоточиться на действительно большой инфраструктуре, нашли векторы, провели RCE и постарались не отказываться от них, но все же добиться максимальной консолидации.
Но были ошибки.
Мы вошли в 120-ю подсеть, используя «любимые» пароли организаторов и РДГ от Microsoft (кстати, это был тот самый «хваленый» Банк), и в расслабленном настроении совершили фатальную ошибку — запустили Mimikatz, для чего их сразу выгнали из подсети.
И снова раздор Большую часть проблем в первые 2-3 дня нам лично доставили СОЦ и защитники, которым надо отдать должное и похвалу, но некоторые "синие" не остались без претензий.
Например, самого весёлого и озорного хоста, с которым боролись не только мы, но и другие команды в 80-й подсети (BBG.GQS офис 4), окрестили «группой».
Ниже я объясню почему.
Здесь мы видим дырку:
Уязвимость Вот код:
Код Код редактируется на лету:
Редактирование кода И мы не можем лить, как раньше, Attack Detect! Понимаете:
Закрыто После огромного количества времени и использованных навыков обхода находим еще одну уязвимость, получаем рут:
корень А потом порка.
И это продолжалось довольно долго.
Для этого ведущего у нас даже был отдельный человек-мастодонт, который играл в «царя горы» (об этом термине вы поймете в продолжении статьи или посмотрев изображение ниже) почти 2 дня, отвлекаясь на другое, никакое менее интересные векторы.
В итоге в капитанском чате кто-то выложил этот мем, который нас не только развеселил, но и придал сил и наградил всю команду зарядом положительных эмоций, которых катастрофически не хватало, спасибо автору изображения :
Мем Также было 247 хостов в 40-й подсети и 135 хостов в 20-й подсети — во всех случаях в первые два дня были пропатчены все успешно эксплуатируемые точки входа и вложения, причем на одной из машин было совершенно отчетливо видно, что аттач из рута получить не удалось, но код рулил с диким шорохом, и это точно были защитники.
Знаете, в такой дерганой и мелкой ситуации в начале игры, когда позиции меняются, все пытаются бежать впереди локомотива и играть в позиционные гонки, один из соперников делает что-то безумное - мы начали размениваться частью заработанные баллы, проверяя, что будет с данными RCE, LFI - они закроются или оставятся.
Нам нужно было реально понять, сдавать ли пустые векторы или удерживать все позиции до победы.
Список Поясню, точек входа было приличное количество, за которыми дальше просто ничего не было, и мы их называли «пустышками».
По крайней мере, в первые два дня мы, то обмениваясь пощечинами с другими командами, то сбрасывая всех со своих позиций, то начинали сначала.
Так продолжалось до тех пор, пока инфраструктурщики нашей команды не раскопали реальные точки входа во внутренние сети ряда офисов, и тогда мы были по-настоящему ошеломлены, когда увидели всю ту инфраструктуру, которую заложили организаторы.
Инфраструктура Ребята, он был огромный, в нем реально можно было заблудиться.
Немного расскажу: первоначальное сканирование всех 6 подсетей содержало внутри каждой не менее 10 машин, всего более 60 хостов.
Внутри первого взятого вектора также была целая офисная сеть, состоящая из леса доменов, первичных, вторичных и доступных только для чтения контроллеров, различных серверов wsus, db, backup, fileserver, Exchange, rdg, SharePoint и других, за которыми были пользовательские ПК и сервисы подключения, но обо всем этом мы поговорим во второй части, которую подготовим совсем скоро! В первый день мы почувствовали, что вся наша страсть к победе, азарт и желание только усиливаются.
Я покажу вам, как выглядел внутренний портал через 8 часов после старта и мы были первыми! – до конца марафона осталось 116 часов 16 минут.
Марафон Для тех, кто не любит читать, оставлю результат марафона ниже.
Для тех, кого еще интересует продолжение, оно появится в ближайшее время.
Вторая часть истории будет содержать технические подробности и новые эмоциональные всплески с реализацией бизнес-рисков.
а пока смотрите аналитику от организаторов По следам The Standoff: расследование успешных атак на город
Победа! В заключение хотелось бы отметить всех, кто так или иначе участвовал в марафоне и подготовке к нему, предоставил оборудование и серверные мощности, причем совершенно не важно, зашли они на минутку или были с нас за все 123 часа без сна, спасибо вам, ребята:
- Джоан Агусти Мартинес Карбонелл
- Александр Калединов
- Александр Ким
- Алексей Морозов
- Антон Шепеленко
- Батыржан Тютеев
- Богдан Лукин
- Дмитрий Комиссаренко
- Дмитрий Федоров
- Евгений Шадрин
- Кирилл Мурзин
- Кутлымурат Мамбетниязов
- Олег Юрченко
- Павел Никитин
- Сергей Песков
- Станислав Итягин
- Тимур Молдалиев
-
Варианты Веб-Хостинга Mac
19 Oct, 24 -
Google Внедрил Алгоритм Ориона?
19 Oct, 24 -
Переход С Windows На Linux. Были Ли Попытки?
19 Oct, 24