ESCalator
3.98K subscribers
227 photos
1 video
1 file
95 links
Tips and tricks от команды экспертного центра безопасности Positive Technologies (PT ESC)
加入频道
TLS в сети: как быть 🤷‍♂️

Ты — мощный движок разбора сетевого трафика.

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

В твоих недрах крутятся десятки тысяч нефолзящих экспертных правил, тебе не страшны любые протоколы L7 — HTTP, SMTP, FTP, DNS.

Но внезапно в тебя подают какую-то невнятную мешанину из байтиков сетевого соединения по 443-му порту, которая начинается с магических |1603| 🧙

«О нет!». Это же TLS, декрипт которого никто не удосужился сделать, и его инкапсулированное содержимое теперь скрыто от тебя. Но ведь внутри может быть что-то плохое, что-то вредоносное. Как же быть?

Не расстраивайся! TLS-трафик в целом поддается анализу, хоть и не контентному. Можно выделить два основных метода:

1. Анализ информации из заголовков и сертификатов.
2. Анализ характеристик TCP-сессий.

Анализ информации из заголовков и сертификатов (актуально для версии TLS ниже 1.3)

Основные параметры заголовков, которые можно проанализировать:

Версия протокола. Например, SSL 3.0 или TLS 1.0.

Наборы шифров (cipher suites) — указывают на алгоритмы, которые будут использоваться для шифрования данных и создания MAC (Message Authentication Code).

Алгоритмы сжатия.

Порядок и типы поддерживаемых расширений. Например, расширение ALPN (Application-Layer Protocol Negotiation) используется для согласования протокола прикладного уровня (например, HTTP/2 или HTTP/3).

Аспекты анализа сертификатов:

Цепочка сертификации: кто выдал сертификат (центр сертификации, CA), является ли цепочка валидной и корректно ли настроена.

Срок действия сертификата: просроченные или неправильно настроенные сертификаты свидетельствуют о небезопасной конфигурации сервера или атаке, например о MITM (man in the middle).

Подозрительные имена серверов (Common Name): они могут сигнализировать о поддельных или скомпрометированных сертификатах. Например, С2-сервер VenomRAT по умолчанию предоставляет интересную информацию о себе (скриншот 1).

🫵 Дополнительно можно анализировать цифровые отпечатки — уникальные идентификаторы клиентов, устанавливающих TLS-соединения, или серверов, принимающих такие соединения.

В основе работы JA3 и JA3s лежат сбор характеристик во время TLS-рукопожатия и генерация отпечатка. JA3 — это хеш-функция, которая вычисляется с помощью алгоритма MD5 на основе параметров, передаваемых клиентом при установке TLS-соединения. В результате формируется уникальный идентификатор клиента — JA3-отпечаток (WARNING — может фолзить!).

Например, JA3 a85be79f7b569f1df5e6087b69deb493 однозначно указывает на соединение ВПО Remcos с С2-сервером (скриншот 2).

Детектирование на основании JA3 и JA3s поддерживают практически все сетевые СЗИ, в том числе и продукты Positive Technologies — PT NAD и PT Sandbox. Анализ TLS 1.3 — более сложная задача, но об этом в другой раз.

Анализ характеристик TCP-сессий

Анализатор может смотреть на характеристики TCP-сессий, инкапсулирующих зашифрованный трафик: на размер пакетов, их частоту и временные интервалы между ними. Даже не видя содержимого пакетов, DPI-система способна сделать выводы о типе трафика или возможной аномалии.

В качестве примера можно привести бэкдор, который все делал правильно: «притащил» библиотеку для работы с SSL, пытаясь скрыть свои очень важные данные. Однако в сети он вел себя весьма интересно: клиент (то есть бэкдор) всегда отправлял на С2-сервер полезную нагрузку TCP размером 163 байта, а сервер отвечал ему полезной нагрузкой размером 166 байт (скриншот 3). Это или какой-то Heartbeat, или волшебный padding.

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

Вывод: увидел TLS — не расстраивайся.
Happy hunting! 🎯

#detect #malware #network #hunt #tips
@ptescalator
Способы маскирования виртуальной среды 😷

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

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

😂 Однако такие образцы можно попытаться обмануть — «убедить» их в том, что они запускаются на физическом устройстве.

Для этого нам понадобится всего одна правильно настроенная виртуальная машина (ВМ), которая будет скрывать свою виртуальную природу. Рассмотрим пару способов такой настройки.

Способ 1️⃣

Первый способ — публично доступный VmwareHardenedLoader. Требуется отредактировать файл .vmx и поменять MAC-адрес виртуальной машины на любой, не начинающийся с 00:05:69, 00:50:56, 00:1C:14, 00:0С:29.

Согласно документации к этому инструменту, добавляем в файл .vmx следующие свойства:


hypervisor.cpuid.v0 = "FALSE"
board-id.reflectHost = "TRUE"
hw.model.reflectHost = "TRUE"
serialNumber.reflectHost = "TRUE"
isolation.tools.getPtrLocation.disable = "TRUE"
isolation.tools.setPtrLocation.disable = "TRUE"
isolation.tools.setVersion.disable = "TRUE"
isolation.tools.getVersion.disable = "TRUE"
monitor_control.disable_directexec = "TRUE"
monitor_control.disable_chksimd = "TRUE"
monitor_control.disable_ntreloc = "TRUE"
monitor_control.disable_selfmod = "TRUE"
monitor_control.disable_reloc = "TRUE"
monitor_control.disable_btinout = "TRUE"
monitor_control.disable_btmemspace = "TRUE"
monitor_control.disable_btpriv = "TRUE"
monitor_control.disable_btseg = "TRUE"
monitor_control.restrict_backdoor = "TRUE"
smbios.reflectHost = "TRUE"
SMBIOS.noOEMStrings = "TRUE"
scsi0:0.productID = "Your value"
scsi0:0.vendorID = "Your value"
ethernet0.address = "new mac address"


Если при запуске ВМ MAC-адрес поменялся на сгенерированный VMware, отредактируйте его прямо в GUI.

Далее нужно запустить в настроенной ВМ установочный скрипт install.bat с привилегиями администратора. После этого можно начинать отладку. Теперь ВМ не должна быть видна образцу ВПО. Важно помнить, что устанавливать vmtools не следует.

Если этот вариант не отработал, есть еще один.

Способ 2️⃣

Он более сложный, но и более надежный. Подход тот же — настройка ВМ, но в этом случае необходимо также пропатчить BIOS.

Требуется выполнить следующие шаги:

1. При создании новой ВМ не рекомендуется сразу выбирать установочный ISO-файл, иначе активируется Windows Easy Install, который установит vmtools.

2. Чтобы сделать подставную ОС «достойной» жертвой вредоноса, необходимо выделить не менее 128 ГБ дискового пространства.

3. В Firmware Type выберите BIOS.

4. В параметрах настройки оборудования обязательно установите флажок Virtualize Intel VT-x/EPT or AMD-V/RVI

5. Как и в первом случае, поменяйте MAC-адрес на любой, кроме типичных для VMware

6. Затем добавьте установочный ISO-файл. Не забудьте про vmtools — их не нужно устанавливать.

7. После этого необходимо пропатчить BIOS ROM.

VMware BIOS ROM содержит строки, относящиеся к VMware и виртуализации. Их нужно убрать и заменить на какие-нибудь свои. Файл BIOS ROM находится в папке C:\Program Files (x86)\VMware\VMware Workstation\x64.

При этом следует редактировать файл специальным инструментом — Phoenix BIOS Editor, чтобы не поменять внутренние чек-суммы файла. Откройте файл в редакторе, найдите окно с DMI Strings и поменяйте значения так, чтобы они не содержали «VMware» или «Virtual Platform».

После этого нужно собрать пропатченный BIOS через FileBuild BIOS и где-нибудь сохранить его, не удаляя исходный.

8. В папке, где хранится ВМ, нужно найти файл .vmx. Заносим в него путь до пропатченного файла BIOS ROM: bios440.filename = "D:\<path_to_your_bios_file>\BIOS.440.PATCH.ROM", а также те же настройки, что и в способе 1, за исключением последних четырех строк.

Готово. Можно запускать виртуальную ОС. Теперь вредонос не поймет, что работает на ВМ, и отработает так, как должен.

#tips #malware
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
Slam screen locker. Что ты такое? ☹️

На очереди — fast malware analysis, проведенный одним воскресным вечером.

В наши сети залетел один интересный семпл, порождающий не менее интересный сетевой трафик (скриншот 1).

В этом файле (исполняемом .NET) содержится необфусцированный неймспейс Slam_Ransomware_Builder_2._0 (скриншот 2). Его название череcчур сильно похоже на известный в узких кругах Slam Ransomware, только версией побольше. Пример работы билдера 1.4 — по ссылке.

🏃‍♂️ Беглый анализ показал, что класс Slam_Ransomware_Builder_2._0.Lock отвечает за блокировку экрана, класс Slam_Ransomware_Builder_2._0.Chat реализует логику чата с жертвой локера.

Наибольший интерес вызывает класс ClientTest.ChatClient, содержащий реализацию сетевого протокола. По нему можно определить полный набор функций исследуемого ВПО.

• удаленное управление (например, LCD*<coord_x>*<coord_y> — эмуляция нажатия левой кнопки мыши, Command#<command> — выполнение команды в cmd, SetStartup*<prog_name> — добавление программы в автозапуск);

• отправка и получение файлов (например, ViewFiles*<dir_path>, клиент отсылает в ответ *FileTree*<files>*FileTree*, скриншот 3);

• снятие скриншотов (например, StartScreenShare*, StopScreenShare*, клиент отсылает в ответ SCREENSHOT*screen.jpg*<file_size>*<user_name>*<form_id>);

• кейлоггер (например, StartRealtimekeylogger*, StopRealtimekeylogger*, клиент отсылает в ответ SendrtKeylogger*<key_code>*).

И еще много всего — масштаб RAT поражает, любой клиент видео-конференц-связи позавидует.

😃 Самые неприятные и интересные пакости

Команда: LOCK*, LOCKUN*.
Действие: активировать или деактивировать локер рабочего стола.

Команда: textts*<text_to_speek>.
Действие: text to speech.

Команда: msgboxshow*<title>*<msg>*{Error,Information,Hand...}*<buttons>.
Действие: показать уведомление.

Команда: Wallpaper*<path_to_img>.
Действие: изменить изображение рабочего стола.

Команда: BSOD#.
Действие: вызвать синий экран смерти.

А на самом первом скриншоте представлен PING-PONG, который без труда покрывается правилами с флоубитами:


alert tcp $EXTERNAL_NET any -> $HOME_NET any (msg: "Slam V2.0 FB set ping"; flow: established, to_client; dsize: 8<>17; content: "?PING"; endswith; flowbits: set, slam_ping; flowbits: noalert; sid: 1; rev: 1; classtype: trojan-activity;)

alert tcp $HOME_NET any -> $EXTERNAL_NET any (msg: "Slam V2.0 ping-pong"; flow: established, to_server; dsize: 8<>17; content: "PONG#"; startswith; content: "#"; endswith; flowbits: isset, slam_ping; threshold: type limit, track by_dst, count 2, seconds 240; sid: 2; rev: 1; classtype: trojan-activity;)


IOCs


SHA-256: e42088a37531929e3e775bdfacc5a3ee974e4f59d5290907c2131f434eef345b
C2: 77.231.153.42


Happy hunting!

#Hunt #C2 #Tips #IOC #detect #malware #network #suricata

@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😲 Да кто такие эти ваши PhaseShifters?

В начале июня 2024 года специалисты департамента Threat Intelligence выявили новую цепочку атаки PhaseShifters.

✍️ PhaseShifters (Sticky Werewolf, UAC-0050 ) — хакерская группировка, занимающаяся шпионажем, атаки которой направлены на различные отрасли стран Восточной Европы, в том числе на государственные учреждения, сферу экономики и промышленности.

В своих атаках группировка использует фишинг: злоумышленники отправляют письма якобы от официальных лиц с просьбой ознакомиться с документом и подписать его. Документ находится во вложении внутри защищенного паролем архива. В качестве ВПО злоумышленники используют Rhadamanthys, DarkTrack RAT, Meta Stealer и другие.

🔍 Мы наблюдаем высокую активность группировки с весны 2023 года и уже тогда заметили одну странную деталь. Дело в том, что атаки группировки PhaseShifters по техникам идентичны атакам другой группировки — UAC-0050. Более того, атаки проходят с небольшим временным промежутком, то есть группировки одинаково атакуют с разницей в несколько недель — месяц.

На данный момент мы склоняемся к тому, что UAC-0050 и PhaseShifters — это одна и та же группировка, но убедиться в этом можно будет только после более длительного наблюдения.

⚠️ И это случилось снова....

Летом этого года обе группировки начали использовать идентичные паттерны в своих атаках. Дошло даже до того, что ВПО группировок располагалось в одном и том же репозитории BitBucket. Это заставило нас углубиться в эту тему.

📰 Какая атака обнаружена, какие сходства мы увидели, кого атаковали, а также при чем здесь TA558 и бразильские обфускаторы и криптеры — все это вы можете узнать в нашей статье.

#TI #Hunt #Malware #APT
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM