Fsecurity | HH
2.02K subscribers
1.77K photos
108 videos
64 files
6.4K links
Канал про ИБ
Наш Discord: https://discord.gg/Eg8aDS7Hn7
Пожертвовать:
> https://www.donationalerts.com/r/xackapb
Download Telegram
Hunting C2 Panels: Beginner’s Guide for Identifying Command and Control Dashboards

Открытые панели управления и контроля (C2) представляют собой активные информационные панели, используемые злоумышленниками для проведения своих кампаний. Они предоставляют операторам централизованную точку для наблюдения за зараженными устройствами, перемещения украденных данных и отправки новых инструкций.

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

В этом руководстве рассматриваются некоторые из наиболее распространённых сегодня в интернете панелей: Supershell, HookBot, Chaos RAT, UnamWebPanel, Metasploit и Mythic. У каждой из них есть характерные особенности, которые её выдают: URL-адрес, заголовок, хэш значка сайта или даже ссылка на код. Умение распознавать эти подсказки облегчает отслеживание инфраструктуры злоумышленников и блокировку до того, как они будут использованы не по назначению.

🫆https://hunt.io/blog/hunting-c2-panels-beginners-guide
🦔THF
Forwarded from ByTe [ ]f Digital Life
Как убить службу AV/EDR не прибегая к symlink и сторонним драйверам в Windows

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

Как показал кейс с использованием Procmon и аналогичных утилит, ключевая идея состоит в поиске драйвера, который фиксирует события на самых ранних этапах загрузки операционной системы. Возникает естественный вопрос: можно ли обойтись без установки собственных драйверов и дополнительных компонентов, опираясь только на доступные в системе механизмы и не прибегая к символическим ссылкам.

А что, если немножечко изменить те пути куда уже пишутся какие то логи самой системой?

И тут есть отличная веточка реестра HKLM\SYSTEM\CurrentControlSet\Control\WMI в которой существуют AutoLogger и GlobalLogger.

WMI AutoLogger - способ настраивать одну или несколько автосессий трассировки, которые стартуют при загрузке. В отличие от GlobalLogger, каждая AutoLogger-сессия самостоятельно рассылает провайдерам сигнал включения и может быть точно настроена под нужный набор провайдеров. AutoLogger не предназначен для записи специальных событий ядра NT Kernel Logger - для этого используется GlobalLogger.

WMI GlobalLogger - исторически более ранний механизм единственной глобальной сессии. Он также стартует на раннем этапе загрузки и может включать ядровые провайдеры через специальные флаги. Важно, что контроллер GlobalLogger не вызывает EnableTrace для провайдеров - провайдер сам должен определить, что глобальная сессия активна, и включить запись.

В AutoLogger уже есть достаточное количество различных сессий, можете тестировать разные (какие то работают, какие-то нет). В моем случае использовалась HKLM\SYSTEM\CurrentControlSet\Control\WMI\Autologger\ReadyBoot, где можно заменить путь указанный в FileName на путь к файлу службы, который хотим перезаписать.

Для GlobalLogger по умолчанию у меня не было никаких настроек, но можно добавить их самостоятельно:
$reg  = [wmiclass]'root\default:StdRegProv'
$HKLM = 2147483650
$base = 'SYSTEM\CurrentControlSet\Control\WMI\GlobalLogger'
$null = $reg.CreateKey($HKLM,$base)
$reg.SetDWORDValue($HKLM,$base,'Start',1)
$reg.SetStringValue($HKLM,$base,'FileName','C:\<путь до файла службы который требуется перезаписать>.exe')
$flags = 0x00000010 -bor 0x00000020
$bytes = [BitConverter]::GetBytes([UInt32]$flags)
$reg.SetBinaryValue($HKLM,$base,'EnableKernelFlags',$bytes)

Из минусов только наличие прав админа и перезагрузка хоста, но в целом выглядит жизнеспособно.
Forwarded from Adaptix Framework
Закрепляю версию: AdaptixC2 v0.9

Что нового: https://adaptix-framework.gitbook.io/adaptix-framework/changelog-and-updates/v0.8-greater-than-v0.9
🧩 RainyDay ≈ Turian ≈ PlugX (variant): DLL Search Order Hijacking как общая основа

Cisco Talos описывает кампанию с 2022 года против telecom & manufacturing в Central/South Asia, приводящую к установке кастомного PlugX. Вариант пересекается с RainyDay и Turian: одинаковые законные приложения для DLL sideloading, единая крипто-цепочка XOR → RC4 → RtlDecompressBuffer (LZNT1) и частичный reuse RC4-ключей.

🌎 География и victims
Точные страны: Казахстан (телеком-оператор) и Узбекистан (ранее поражённые цели). В целом — Central & South Asia. Для BackdoorDiplomacy исторически: Africa, Europe, Middle East, Asia.

🎯 Attribution (medium confidence)
Наиболее вероятный актор — Naikon (PlugX-variant использует конфиг-формат RainyDay). Пересечения с BackdoorDiplomacy (Turian): схожие цели, однотипные лоадеры и крипто-примитивы → либо shared tooling/vendor, либо фактически один кластер.

🧪 Infection flow (общая логика)
Законный EXE → DLL search order hijacking (pc2msupp.dll) → чтение зашифрованного shellcode из соседнего файла → XOR → RC4 → LZNT1 → выполнение.
RainyDay: s.exerdmin.src → self-inject.
PlugX (variant): KMSEldi.exeMcsitesdvisor.afx → self-inject в контекст KMSEldi.exe.
Turian: wingervlansec.exewingervlansec.dat → inject в wabmig.exe или explorer.exe → загрузка configer.dat (Config) и wingervlansec.ini (в т.ч. секция "AntiVir").

🔐 Code & crypto markers
Шеллкод-формат: XOR prelude → RC4 → LZNT1 (RtlDecompressBuffer).
RC4-ключи (reuse между семействами):
8f-2;g=3/c?1wf+c92rv.a — RainyDay / PlugX / Turian;
jfntv\1-m0vt801tyvqaf_)U89chasv` — RainyDay / PlugX;
отдельные ключи у части Turian по сэмплам.
ROL25 additive API hashing; местами Control-Flow Flattening.
PE-аномалия: у распакованных DLL намеренно искажён e_lfanew (невалидное смещение заголовка).
🧵 Dev-артефакты / PDB
Строки указывают на проекты dll-to-shellcode / shellcodeloader, присутствует icmpsh-master (提供网页版); встречались сборки, где MicrosoftEdgeUpdate.exe используется как альтернативный sideload-carrier.

🧿 PlugX (variant) — что важно
Кастомизированный BackDoor.PlugX.38: конфиг в стиле RainyDay, дополнительный XOR для строк; эскалация SeDebugPrivilege/SeTcbPrivilege (строки спрятаны модифицированным TEA); маскировка службы в services.exe; HTTPS для C2; библиотека VTCP 10.12.08; встроенный keylogger (логи активны 2022 → Dec 2024).

🔎 Артефакты и «крючки» для охоты
Carriers (allow-list → alert): KMSEldi.exe, wingervlansec.exe, s.exe (Mobile Popup Application, Quick Heal Technologies, signed).
Соседние файлы/паттерны: pc2msupp.dll + Mcsitesdvisor.afx / rdmin.src / wingervlansec.dat / configer.dat / wingervlansec.ini.
Process lineage: carrier.exe → (self) или → wabmig.exe/explorer.exe (child) + исходящий HTTPS.
Memory heuristics: короткий XOR-пролог → RC4 → RtlDecompressBuffer(LZNT1) вскоре после чтения локального файла; ROL25-хеширование API.
PE-аномалии: DLL с неадекватным e_lfanew после распаковки.
PDB/строки: dlltoshellcode, shellcodeloader_vs2008, icmpsh-master, MicrosoftEdgeUpdate.exe.

🛡 Hardening (quick wins)
Включить SafeDllSearchMode, настроить KnownDLLs, запретить side-by-side DLL в рабочих каталогах критичных приложений.
WDAC/AppLocker: deny для неожиданных DLL рядом с известными EXE; строгие allow-lists для апдейтеров/утилит.
EDR canaries: алерты на RtlDecompressBuffer + RC4-like циклы после чтения локального файла; отдельные правила на запуск KMSEldi.exe / wingervlansec.exe вне «зоны доверия».
Инвентаризация и мониторинг редко используемых «обновляющих» бинарников как потенциальных sideload-carriers.

TL;DR: один loader-скелет (XOR→RC4→LZNT1), общие carriers (KMSEldi.exe / wingervlansec.exe / s.exe), частичный reuse RC4-ключей и единые Dev-артефакты связывают RainyDay, Turian и PlugX(variant) в единую операцию; атрибуция к Naikonmedium confidence, с устойчивыми пересечениями с BackdoorDiplomacy.

🔗 https://blog.talosintelligence.com/how-rainyday-turian-and-a-new-plugx-variant-abuse-dll-search-order-hijacking/
🦔 THF
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Discord сервер
👆🏻Тут можно пообщаться и найти много полезной информации 🦈
Forwarded from purple shift
HashiCorp Vault — мощный opensource-инструмент, предназначенный для хранения, управления и защиты доступа к чувствительным данным: паролям, API-ключам, сертификатам. Он централизует работу с секретами, автоматизирует их выдачу и отзыв, а также обеспечивает тонкий контроль доступа в сложных распределённых инфраструктурах. Взаимодействие с Vault возможно через API, веб-интерфейс или CLI, а аутентификация поддерживает широкий спектр методов, включая интеграцию с Kubernetes и облачными платформами.

Однако... в августе этого года в HashiCorp Vault было обнаружено 9 уязвимостей, одна из которых (CVE-2025-6000) критическая (score 9.1). И это первая в истории публично задокументированная RCE-уязвимость в HashiCorp Vault, просуществовавшая 9 лет до исправления.

Уязвимость позволяет привилегированному оператору Vault создать подконтрольный файл аудита и зарегистрировать его как плагин, чтобы получить возможность выполнения произвольного кода.

Для эксплуатации нужно:

0. Иметь root токен. Его получение выходит за рамки данной статьи, однако стоит упомянуть, что связка нескольких CVE даёт возможность это сделать: CVE-2025-6037 позволяет имперсонироваться через уязвимость проверки сертификатов, CVE-2025-5999 позволяет повысить привилегии до root.

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

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

POST /v1/sys/plugins/catalog/non_existing_name 


и в ответ получить

1 error occurred:\n\t* failed to verify plugin plugin \"non_existing_name\" version \"v1.0.0\": extracted artifact directory not found: /home/vault/vault_plugins/non_existing_name_1.0.0_linux_amd64\n\n 


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

2. Записать файл аудита в каталог плагинов. Для этого зарегистрировать аудит с такими параметрами:

file_path (путь к файлу аудита) = "/home/vault/vault_plugins/script.sh"

Указывается директория с плагинами из предыдущего шага.

mode (права на файл аудита) = "0755"

Файл аудита должен быть исполняемым (rwxr-xr-x)

prefix (префикс будет добавлен перед каждым логом) = "#!/bin/bash\n(some bash payload)"

Эта часть содержит наш пейлоад. Содержимое префикса будет выполняться при загрузке плагина.

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

После регистрации исполняемого файла в качестве плагина, он выполняется от имени пользователя vault.

Как обнаружить эксплуатацию CVE-2025-6000:

1. Корреляция событий из шагов выше явно укажет на попытку эксплуатации:

- Попытка регистрации несуществующего плагина;
- Cоздание аудита с указанием prefix и mode;
- Удаление недавно созданного аудита (также рекомендуем мониторить удаление аудита в принципе, так как это событие само по себе должно вызывать подозрения);
- Регистрация подозрительного плагина.

2. Отслеживайте аномалии в цепочках процессов от vault. Например, запуск скриптов.

Методы защиты:

Уязвимость CVE-2025-6000 исправлена в Vault Community Edition 1.20.1 и Vault Enterprise 1.20.1, 1.19.7, 1.18.12 и 1.16.23.

Поэтому стоит обновиться до этих версий. В исправленных версиях аудит с префиксом требует явного указания в конфигурации vault, а также аудит не может использовать файлы с правами на выполнение (0777, 0755 и т.д.) и не может быть записан в директорию плагинов.