Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

31 August

В первой части я разобрал GravityZone Ultra и EDR. Данная же статья содержит:

  • Ransomware Attack на основе RDP-брутфорсинга как начального вектора заражения.
  • Тройная угроза, Emotet, Trickbot и Ryuk, нацеливаются на активы предприятия и требуют денег на восстановление данных.

Для демонстрации как Bitdefender детектирует атаки, я обзавелся боевыми скриптами, сценариями атак и небольшим стендом, состоящим из облачной консоли Gravity Zone Ultra, Облачной консоли NTSA. В одной сети развернуты виртуальные машины датчика BDProbe, Windows 10 c установленным агентом BEST (Bitdefender Endpoint Security Tools) и Windows 7 (для демонстрации атак через RDP).

Все модули политики настроены в режим «только оповещения», для демонстрации.

Начнем с Ransomware Attack

В 2019 году одним из типов атак, о которых говорили больше всех были шифровальщики. Более того, одним из наиболее тревожных сценариев были атаки с использованием протокола удаленного рабочего стола (Remote Desktop Protocol) в качестве начального входного вектора.

После проникновения в незащищенную систему сеть видна насквозь. Защита конечных точек будет обойдена, резервные копии будут стерты/зашифрованы, и, наконец, важнейшие серверы будут атакованы и препарированы. Протокол RDP может использоваться для перемещения внутри сети и распространения заражения на другие системы.

Кроме того, еще одной опасной комбинацией с вредоносными программами для получения выкупа, которая была очень популярна в 2019 году, являлось использование CobaltStrike pen-testing framework для распространения программ и получения выкупа с предприятия.

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

На примере сценария, рассматриваемого в естественных условиях, это выглядит следующим образом:

  • На предприятии есть несколько компьютеров, имеющих RDP сервис, который позволяет некоторым сотрудникам получить доступ к своим компьютерам из дома.
  • Угроза обнаруживает эти системы после сканирования в интернете и запускает атаку типа bruteforce.
  • Обнаруживаются учетные данные, и субъект, представляющий угрозу, будет подключаться к корпоративной сети через RDP.

В этом случае есть два возможных направления:

  • Он «убьет» решение по защите и развернет шифровальщика.
  • Или он может развернуть маячок CobaltStrike для того, чтобы скомпрометировать другие конечные точки в сети.

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

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

Примерами программ-вымогателей, использующих bruteforce в качестве первичного вектора атаки, являются CryptON (также известный как Nemesis), Crisis или Samsam. Примерами программ выкупа, развернутых CobaltStrike, являются Crypmod, Rapid, Amnesia, GrandCrab.

Например, для того, чтобы эта проверка концепции не длилась очень долго, я использую минимальный список паролей (adobe top 100 паролей после печально известного нарушения в 2013 году) и вручную добавлю правильный пароль в конце списка.

На машинке Kali я запускаю скрипт brute-force.sh:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2
Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

В результате я вижу логин и пароль «жертвы».

Посмотрим, что говорит нам антивирус на компьютере жертвы:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Консоль EDR в данном случае покажет нам инцидент:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Тройная угроза: Emotet, Trickbot и Ryuk

В 2019 году было проведено несколько кампаний, в ходе которых была использована тройная комбинация, нацеленная на ресурсы предприятия и требующая денег за восстановление данных. В этих кампаниях использовались три типа вредоносных программ для повышения успешности атак: Emotet (из-за его огромных спам-кампаний), Trickbot ( из-за его возможностей по распространению) и Ryuk ransomware (в качестве конечного пункта).

Способы распространения трикботов по сети были следующими: Преступники, нацеленные на крупные предприятия, использовали спам-сообщения для доставки трояна Emotet с целью распространения вредоносной программы TrickBot. Как только машина заражается вредоносной программой TrickBot, она начинает красть конфиденциальную информацию, и преступная группа пытается определить, является ли компания отраслевой мишенью. Если да, то они распространяют вымогатель Ryuk.

Emotet:

Он был обнаружен в 2014 году и использовался в качестве трояна злоумышленниками для кражи банковских реквизитов. В последнее время он использовался в качестве дроппера других изощренных вредоносных программ.

В течение многих лет Emotet представила несколько расширенных возможностей, используя модульную структуру, которая включает в себя несколько модулей, в том числе модуль установки, банковский модуль и модуль DDoS.

Основным методом распространения Emotet остается фишинговая электронная почта, в которой используются различные методы социальной инженерии, чтобы обмануть пользователя, перейдя по вредоносной ссылке или загрузив вредоносный файл Microsoft Office.

TrickBot:

С момента своего открытия в 2016 году TrickBot остается постоянно активным и очень адаптивным игроком в сфере угроз киберпреступности. То, что когда-то было семейством вредоносных программ, сосредоточенных на краже финансовых данных, теперь представляет собой надежную, продуманную и хорошо продуманную угрозу, предназначенную для различных видов вредоносных действий.

Трикбот имеет несколько плагинов для различных типов операций – похитители банковской информации, разведка систем, сбор пользовательских данных, а также выделенный модуль для отправки спама с машины-жертвы (Trickbooster).

Похитители банковской информации:

  • LoaderDll/InjectDll – мониторы для деятельности банковского веб-сайта и использует веб-инъекции (например, всплывающие окна и дополнительные поля) для кражи финансовой информации.
  • Sinj – этот файл содержит информацию об интернет-банках, на которые нацелен TrickBot, и использует перенаправление атак (также известное как веб-поддельные инъекции).
  • Dinj – этот файл содержит информацию об интернет-банках, направленных на TrickBot и он использует веб-инъекции стороне сервера.
  • Dpost – включает в себя IP-адрес и порт для кражи банковской информации. Если пользователь вводит банковскую информацию для одного из перечисленных банков, то информация отправляется на IP-адрес dpost. Большая часть данных, отфильтрованных TrickBot, отправляется на IP-адрес dpost.

Разведка системы/сети:

  • Systeminfo – собирает системную информацию, чтобы атакующий знал, что работает на пораженной системе.
  • Mailsearchher – сравнивает все файлы на диске со списком расширений файлов.
  • NetworkDll – собирает больше системной информации и картирует сеть.

Сбор информации о наследниках и пользователях:

  • ModuleDll/ImportDll – собирает данные браузера (например, cookies и конфигурации браузера).
  • DomainDll – использует LDAP для сбора учетных данных и конфигурационных данных с контроллера домена путем доступа к общим файлам SYSVOL.
  • OutlookDll – собирает сохраненные учетные данные Microsoft Outlook, запрашивая несколько ключей реестра.
  • SqulDll – форсирует WDigest аутентификацию и использует Mimikatz для извлечения учетных данных из LSASS.exe. Червивые модули используют эти учетные данные для распространения TrickBot по сетям.
  • Pwgrab – крадет учетные данные, данные автозаполнения, историю и другую информацию из браузеров и некоторых приложений.

Ryuk:

Подобно Samas и BitPaymer, Ryuk специально используется для работы в корпоративных средах, для получения высокой отдачи. Эта методология известна как "охота на крупную дичь". Сравнение кодов версий Ryuk и Hermes ransomware показывает, что Ryuk была получена из исходных кодов Hermes и с момента выпуска стабильно развивается.

Записка о выкупе Ryuk записана в файл под названием RyukReadMe.txt. Наблюдалось несколько различных шаблонов записок о выкупе. Тело шаблона статично, за исключением адреса электронной почты и адреса кошелька Bitcoin (BTC), который может измениться.

Для примера я собираюсь открыть электронное письмо, содержащее специально созданный документ Word, который имеет набор макросов VBA, запускаемых при открытии документа. Этот макрос запускает cmd.exe с определенными параметрами.

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2
Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2
Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Что нам покажет клиент?

Advanced Treat Control обнаружил угрозу:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Сигнатурный модуль обнаружил при обращении к файлу 4 угрозы:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Перейдем к консоль EDR и посмотрим, что мы можем расследовать:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Таким образом мы видим, что продукт отрабатывает подобные угрозы с помощью нескольких модулей и позволяет остановить угрозу на любой стадии.

Повышение привилегий и кража учётных записей

В проверке концепции я использую UACMe на Kali для обхода UAC (и повышения уровня процесса). С этими новыми привилегиями мы запускаем сценарий Powerhell.

Сначала запустим mimikatz.exe, чтобы извлечь имена пользователей и пароли из lsass.exe и выложить их в файл. Сценарий powershell затем разбирает файл и извлекает только учетные данные и посылает их через HTTP к нашему серверу Python, запущенному на машине Кали.

Затем мы используем эти учетные данные для запуска mimikatz.exe на второй машине через psexec.exe.

Запускаю HTTP сервер:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Эмулирую запуск mimikatz.exe, для наглядности, консоль запускается не в скрытом режиме:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

То же самое мы видим на Kali:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

GravityZone покажет несколько узлов, которые я считаю ключевыми, и я поставлю скриншот каждого из них.

Во-первых, это эскалация привилегий:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Вторым будет обнаружение mimikatz:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

Третьим будет обнаружение конфиденциальных данных, которые определяются по незащищенному соединению:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

И последнее, но не менее важное — это обнаружение фильтрации данных:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

После того, как у нас есть учетные данные, мы выполняем боковое движение с учетными данными, полученными на второй машине, где мы также пытались запустить мимикатц. Вы можете видеть, что эта цепочка начинается на сервисе psexecsvc.exe, который является индикатором того, что используется psexec.

Запуск mimikatz.exe:

Детектирование атак или про Bitdefender, EDR и NTA «на пальцах». Часть 2

EDR нам помогает разобраться, от куда началось заражение, что происходило, позволяет установить хронологию, возможные цели.

В следующей части я разберу StrongPity Attack, атаку RDP и автоматические действия Bitdefender NTSA.

До скорых встреч!