«Кальдера» атакует. Учимся имитировать и обнаруживать атаки с помощью MITRE Caldera

Содержание статьи

  • Подготовка стенда
  • Начало работы с Caldera
  • Подготовка мониторинга событий — Sysmon и журналы Windows
  • Запуск Caldera-агента
  • Начало атаки
  • Выводы

Мы при­вык­ли думать, что у нас всег­да все хорошо в пла­не информа­цион­ной безопас­ности. Что­бы удос­товерить­ся в этом, некото­рые ком­пании про­водят пен­тест. Но сущес­тву­ет спо­соб убе­дить­ся в сво­ей готов­ности к кибер­нападе­ниям и без пен­теста. Какой? Сей­час рас­ска­жем!

Речь пой­дет об авто­мати­зиро­ван­ной сис­теме эму­ляции дей­ствий зло­умыш­ленни­ков под наз­вани­ем Caldera. Мы рас­ска­жем об ее устрой­стве, нас­трой­ке и о том, как эти нехоро­шие активнос­ти мож­но пой­мать с помощью бес­плат­ных средств для вин­ды — ути­литы Sysmon и пра­виль­ной нас­трой­ки политик ауди­та в сис­теме. Статья рас­счи­тана на нович­ков и содер­жит мно­го полез­ных прак­тичес­ких советов. Пог­нали!

warning

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

Caldera — это авто­мати­зиро­ван­ная сис­тема эму­ляции дей­ствий зло­умыш­ленни­ков на конеч­ных рабочих стан­циях, соз­данная ком­пани­ей MITRE. Caldera поз­воля­ет про­водить прак­тичес­кие тес­ты информа­цион­ной безопас­ности с исполь­зовани­ем раз­личных сце­нари­ев атак. Сис­тема с помощью фрей­мвор­ка ATT&CK эму­лиру­ет поведе­ние ата­кующе­го, как буд­то про­исхо­дит реаль­ное втор­жение. Caldera пос­тавля­ется с нес­коль­кими заранее соз­данны­ми шаб­лонами поведе­ния зло­умыш­ленни­ков, а допол­нитель­ные пла­гины к сис­теме под­клю­чают новые фун­кции и пат­терны атак.

В сис­теме Caldera два ком­понен­та:

  • ос­новная сис­тема. Это код фрей­мвор­ка из репози­тория. Он вклю­чает в себя асин­хрон­ный C&C-сер­вер (C2) с REST API и веб‑интерфей­сом;
  • пла­гины. Рас­ширя­ют основные воз­можнос­ти фрей­мвор­ка и пре­дос­тавля­ют допол­нитель­ные фун­кции. К при­меру, поль­зователь может вес­ти отчетность и прив­лекать раз­личных аген­тов для уста­нов­ки на конеч­ные точ­ки.

Вот спи­сок всех акту­аль­ных на текущий момент пла­гинов, уста­нов­ленных по умол­чанию в кон­тей­нере:

  • Access — инс­тру­мен­ты пер­воначаль­ного дос­тупа для Red Team (ата­кующей коман­ды);
  • Atomic — про­ект Atomic Red Team, пла­гин поз­воля­ет сопос­тавлять вре­донос­ную активность с соот­ветс­тву­ющей так­тикой и запус­кать мини‑активнос­ти;
  • Builder — динами­чес­кая ком­пиляция полез­ных наг­рузок для аген­та;
  • CalTack — встра­ивает в Caldera веб‑сайт ATT&CK;
  • Compass — добав­ляет визу­али­зацию ATT&CK;
  • Debrief — выпол­няет ана­лиз про­води­мых ком­паний и ана­лити­ку;
  • Emu — пла­ны эму­ляции дей­ствий раз­личных групп зло­умыш­ленни­ков от CTID (Center for Threat-Informed Defense);
  • Fieldmanual — ведение докумен­тации;
  • GameBoard — монито­ринг сов­мес­тных дей­ствий «крас­ных» и «синих» команд;
  • Human — ими­тация дей­ствий поль­зовате­лей на конеч­ных точ­ках, что­бы запутать ата­кующих;
  • Manx — под­дер­жка полез­ных наг­рузок Shell и Reverse Shell;
  • Mock — ими­тация аген­тов в опе­раци­ях;
  • Response — пла­гин для авто­ном­ного реаги­рова­ния на инци­ден­ты (да, мож­но нас­тро­ить авто­мати­чес­кий «блю­тиминг» от Caldera на ее же собс­твен­ный «ред­тиминг»);
  • Sandcat — агент по умол­чанию, исполь­зуемый в опе­раци­ях;
  • SSL — добав­ление под­дер­жки HTTPS для Caldera;
  • Stockpile — склад раз­личных тех­ник и готовых про­филей зло­умыш­ленни­ка;
  • Training — сер­тифика­ция и учеб­ный курс, поз­воля­ющий стать экспер­том в сфе­ре Caldera; сос­тоит из заданий, которые надо выпол­нить в Caldera для получе­ния ста­туса спе­циалис­та.

 

Подготовка стенда

Мож­но уста­новить Caldera в виде Docker-кон­тей­нера на машину с Windows. В таком слу­чае не нуж­но будет возить­ся с интер­пре­тато­рами Python и дру­гими свя­зан­ными ком­понен­тами, да и кон­тей­нер про­ще в нас­трой­ке для нович­ков. Кон­тей­нер уста­нав­лива­ем с помощью при­ложе­ния Docker Desktop, на хос­те дол­жно при­сутс­тво­вать хотя бы два ненаг­ружен­ных ядра про­цес­сора и два гигабай­та опе­рати­вы.

Вот так выг­лядит уста­нов­ленный и запущен­ный кон­тей­нер. Обра­ти вни­мание на проб­рошен­ные пор­ты.

За­пущен­ный кон­тей­нер Caldera в Docker Desktop на ОС Windows

Нам нуж­но перей­ти в логи кон­тей­нера, что­бы пос­мотреть логин и пароль для вхо­да на веб‑интерфейс. Для это­го щел­кни на име­ни кон­тей­нера, затем перей­ди на вклад­ку Logs. Дан­ные для вхо­да выделе­ны крас­ным, они генери­руют­ся каж­дый раз заново при запус­ке кон­тей­нера. Учти, что при раз­ворачи­вании про­екта из сыр­цов имя поль­зовате­ля по умол­чанию — red, пароль — admin (или ищи их в кон­фигах — conf/local.yml, conf/default.yml). Интерфейс может нес­коль­ко отли­чать­ся от пред­став­ленно­го вари­анта.

Ло­ги кон­тей­нера Caldera в Docker Desktop

Для вхо­да в веб‑интерфейс на машине с Docker Desktop исполь­зует­ся адрес http://127.0.0.1:18890 (такой порт слу­шает­ся на локал­хосте и проб­расыва­ется внутрь кон­тей­нера на порт 8888). Исполь­зуй най­ден­ные логин и пароль из логов кон­тей­нера.

Пе­ред тем как начать нашу ата­кующую опе­рацию, давай под­робно рас­смот­рим мат­часть.

 

Начало работы с Caldera

Прак­тичес­ки любая ата­ка всег­да выпол­няет­ся с внеш­ним управле­нием — то есть с при­мене­нием коман­дно­го сер­вера (C&C). Что­бы «дер­гать за ниточ­ки» цель, необ­ходимо обес­печить связь с ата­куемо­го хос­та, поэто­му на него уста­нав­лива­ется спе­циаль­ный агент.

Источник: xakep.ru

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *