Особенности охоты за инфраструктурой злоумышленников

от автора

Какие методы помогают обнаружить связанную сетевую инфраструктуру APT-группировок? Рассказываем на примере реального свежего случая из нашей исследовательской практики.

Отправная точка исследования

Иногда вся цепочка исследования начинается с одного артефакта. В нашем случае таким отправным индикатором стал C2-сервер MeshAgent — https://telecom-connect.cloud/agent.ashx

MeshAgent — ПО для удалённого управления устройствами с открытым исходным кодом, входящее в решение MeshCentral.

Уже на этом этапе становится понятно, что классического поиска недостаточно: инфраструктура может быстро ротироваться, а отдельные узлы — мигрировать между провайдерами и ASN. В таком случае стоит обращать внимание на специфичные HTTP-заголовки в запросах, а также метаданные самих запросов.

Поиск по body hash

Для примера возьмём значение хэша тела HTTP-ответа и посмотрим результаты поиска в ZoomEye:

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

Сокращаем выборку

Заголовки HTTP-запросов могут быть характерным атрибутом компонентов всей сетевой инфраструктуры. В примере таким является ‘Content-Security-Policy’:

‘Content-Security-Policy: default-src 'none'; font-src 'self' fonts.gstatic.com data:; script-src 'self' 'unsafe-inline' ajax.cloudflare.com; connect-src 'self' wss://’

Данный заголовок содержит параметр ‘connect-src’ c указанием адреса командного центра MeshAgent. Именно такие технические детали позволяют перейти от массовой выборки к более релевантному набору узлов. Так, комбинация фильтров http.body_hash и http.header сократила результат и позволила найти схожие ресурсы с доменом telecom-connect.cloud.

Таким образом, мы можем уже утверждать, что у нас есть целая сетевая инфраструктура командных центров MeshAgent, а не отдельный сетевой IoC.

Альтернативные pivots: iconhash и header_hash

Если же у нас нет специфичных заголовков, а поиск по body_hash даёт слишком много совпадений, полезной альтернативой становятся анализ хэшей иконок (favicon.ico) и хэшей заголовков. Связка iconhash + http.header позволяет находить похожие панели и узлы даже тогда, когда часть контента изменилась. Дополнительно можно использовать и http.header_hash — особенно если ранее уже были подтверждены связанные домены и IP-адреса. В нашем исследовании это позволило найти ещё несколько С2-серверов MeshAgent:

  • 217.60.5.118

  • 193.43.72.164

ETag и ASN как способ расширения инфраструктуры

Отдельного внимания заслуживает ETag.

ETag (Entity Tag) — заголовок HTTP-запросов, представляющий собой уникальный идентификатор конкретной версии ресурса на сервере. Он позволяет оптимизировать кеширование, сокращая количество необходимых запросов к серверу с целью экономии пропускной способности.

Сам по себе этот артефакт встречается не всегда и часто даёт избыточную выборку, однако в сочетании с ASN он становится полезным pivot-механизмом для расширения анализируемой инфраструктуры. В рассматриваемом кейсе интерес представлял фильтр вида:

http.header="9-0gXL1ngzMqISxa6S1zx3F4wtLyg" && asn="56971" && http.body_hash!="9d1ead73e678fa2f51a70a933b0bf017"

Практический вывод

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

В нашем же случае мы смогли заблаговременно обнаружить сетевую инфраструктуру группировки PhantomCore и вовремя среагировать на потенциально возможную вредоносную активность.

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

Индикаторы компрометации:

IP:

  • 95.182.98[.]229

  • 151.242.69[.]96

  • 217.60.60[.]212

  • 217.60.5[.]118

  • 193.43.72[.]164

  • 46.8.71[.]104

  • 45.156.25[.]38

Domains:

  • telecom-connect[.]cloud

  • world-update[.]online

  • tigelili[.]sbs

  • ms-nas[.]cloud

  • cloud-solution[.]online

  • cloud-home[.]casa

URL:

  • hxxps[://]telecom-connect[.]cloud/agent.ashx

  • hxxp[://]ms-nas[.]cloud:443/agent.ashx

SHA-256:

  • MeshAgent:

    • e0cc6c4dd8db3940e031d63b489fdab8c0114ae0114f7deeef48964ab764f247

    • 41e149610f57d7d2f52afb535d481e8a86b699eed4b5d590eeab3b4cfb68e802

    • 576973f69e0ba2049bd293060636c98017eccd32d0f1b2d0470a8be1a4b1abbf

    • 84287297c87e9e5390f696243d0c7861884709d2724fdc8a0788297b4f422026

    • 4c8851025912faa085ba863a94b8c8792d90fc3e7f222cbb11b5374b9a291341

  • ZIP-архивы:

    • 4dd24a249561d2a5c6f95e7d02905b3792f55b64564488a5b61558ee687135db

    • 8cf62f8547996008c4b84acc772690eb5d9d26c0102b651f7430180e83b1a913

    • fee06efb7a1c7319fa71d01efa5a28f73f69c944abd4865543353e790990fcec

  • MSH-файлы:

    • 3f121afcd4440dd531c64a01e14f8788ded6cc4544100d501ff6b2a8ad297a4b

    • fe3c4edfb36fa4a3a866903cac594a709d7bb4994b067cc9667873fc6c0b088d

ссылка на оригинал статьи https://habr.com/ru/articles/1023390/