HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Этичный хакинг или пентестинг
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 07.04.2026, 14:50
Сергей Попов
Новичок
Регистрация: 14.08.2015
Сообщений: 0
С нами: 5656404

Репутация: 0
По умолчанию



Когда в 3 часа ночи прилетает алерт о массовом шифровании файлов - расследовать уже поздно. Шифрование - финальный акт пьесы, которая разыгрывалась в вашей сети дни, а то и недели. За годы разбора инцидентов с LockBit, BlackCat и RansomHub я убедился в одном: единственный способ выиграть у ransomware - ловить атаку на стадии pre-ransomware активности, пока злоумышленник ещё ползает по сети, выгружает учётки и готовит плацдарм. Дальше - конкретные SIEM-правила, Sigma-детекции и запросы, которые я использую в реальной практике threat hunting.
Почему классические IOC не спасают от шифровальщиков
Индикаторы компрометации - хеши файлов, IP-адреса C2-серверов, домены - протухают за часы. Операторы RaaS-платформ (Ransomware-as-a-Service) перекомпилируют билды перед каждой атакой, меняют инфраструктуру и спокойно льют данные через легитимные сервисы. По данным SCILabs, в 2024 году в одном только латиноамериканском регионе действовали минимум 51 вариант ransomware, а топ-5 - RansomHub (17.69%), LockBit 3.0 (17.31%), Akira (8.08%), Arcus Media (7.31%), FunkSec (4.62%) - покрывали лишь 55% атак. Остальные 45% - десятки менее известных штаммов, чьи IOC вы просто не найдёте в фидах.

Поэтому проактивный поиск угроз (threat hunting ransomware) строится не на IOC, а на TTP - тактиках, техниках и процедурах по MITRE ATT&CK. TTP меняются на порядок медленнее. Какой бы штамм ни использовался, оператор всё равно должен:
  1. Получить учётные данные (Credential Access)
  2. Переместиться по сети (Lateral Movement)
  3. Отключить защиту (Defense Evasion)
  4. Удалить теневые копии (Impact)
  5. Запустить шифровальщик (Impact)
Каждый из этих этапов оставляет следы в логах. Наша задача - написать правила, которые эти следы ловят.
Pre-ransomware активность: хронология атаки и точки обнаружения
Типичная ransomware-атака от первичного доступа до шифрования занимает от 2 до 14 дней. Это и есть окно для threat hunting. Разберём фазы и MITRE ATT&CK техники, на которых строятся детекции.
Credential dumping и доступ к LSASS Memory
MITRE ATT&CK: LSASS Memory (T1003.001, Credential Access)

Одна из первых задач атакующего после закрепления - стянуть учётные данные доменных пользователей. Классический вектор - дамп процесса lsass.exe. В реальных инцидентах я видел три основных метода: прямой запуск Mimikatz, использование comsvcs.dll через rundll32 и создание минидампа через Task Manager или ProcDump.

Sigma-правило для обнаружения дампа LSASS через comsvcs.dll - один из самых частых паттернов у операторов Cobalt Strike:

YAML:


Код:
title
:
LSASS Memory Dump via Comsvcs.dll
id
:
a49fa4d5
-
11db
-
418c
-
8473
-
1e014a8dd462
status
:
stable
description
:
Detects LSASS memory dump using comsvcs.dll MiniDump export
logsource
:
category
:
process_creation
product
:
windows
detection
:
selection
:
CommandLine|contains|all
:
-
'comsvcs'
-
'MiniDump'
condition
:
selection
level
:
critical
tags
:
-
attack.credential_access
-
attack.t1003.001
SPL-запрос для Splunk, который ловит тот же паттерн плюс другие варианты обращения к lsass:

Код:


Код:
index=wineventlog sourcetype="XmlWinEventLog:Microsoft-Windows-Sysmon/Operational" EventCode=1
(CommandLine="*comsvcs*MiniDump*" OR
 (CommandLine="*procdump*" CommandLine="*lsass*") OR
 (CommandLine="*rundll32*" CommandLine="*comsvcs*" CommandLine="*full*"))
| stats count by Computer, User, CommandLine, ParentCommandLine
| where count > 0
Как отличить от легитимного: в корпоративной среде антивирусные агенты тоже обращаются к lsass.exe - это нормально. Ключевой маркер - ParentProcess. Легитимное обращение идёт от известных security-агентов с цифровой подписью. Если parent - cmd.exe, powershell.exe или вообще неизвестный бинарник - красный флаг.
Lateral movement: RDP, PsExec и WMI
MITRE ATT&CK: Remote Desktop Protocol (T1021.001, Lateral Movement)

После получения учёток злоумышленник начинает ползать по сети. Три классических вектора, которые я наблюдаю практически в каждом ransomware-инциденте:

RDP (T1021.001) - самый простой для обнаружения паттерн. В нормальной среде RDP-подключения идут с ограниченного набора административных станций. Массовые RDP-сессии с одного хоста на кучу серверов за короткое время - верный признак lateral movement.

Код:


Код:
index=wineventlog EventCode=4624 Logon_Type=10
| bin _time span=1h
| stats dc(dest) as unique_targets values(dest) as target_list by src, user, _time
| where unique_targets > 5
| sort -unique_targets
Этот SPL-запрос ищет ситуации, когда один источник подключился по RDP (Logon_Type=10) к более чем 5 уникальным хостам за час. В реальном SOC порог зависит от среды - для сервис-деска 10 подключений в час может быть нормой, для бухгалтера - уже инцидент.

PsExec и SMB-based execution: группы вроде Conti и LockBit активно используют PsExec для деплоя шифровальщика. Детектим создание характерных сервисов:

Код:


Код:
index=wineventlog EventCode=7045
| where ServiceFileName LIKE "%PSEXESVC%" OR ServiceName LIKE "%PSEXE%"
| stats count by Computer, ServiceName, ServiceFileName, _time
WMI remote process creation (T1047, Execution) - ещё один излюбленный метод. KQL-запрос для Microsoft Sentinel:

Код:


Код:
DeviceProcessEvents
| where Timestamp > ago(24h)
| where InitiatingProcessFileName =~ "wmiprvse.exe"
| where FileName in~ ("cmd.exe", "powershell.exe", "mshta.exe", "rundll32.exe")
| project Timestamp, DeviceName, FileName, ProcessCommandLine,
    InitiatingProcessCommandLine, AccountName
| sort by Timestamp desc
Отключение защиты и уничтожение теневых копий
MITRE ATT&CK: Disable or Modify Tools (T1562.001, Defense Evasion), Inhibit System Recovery (T1490, Impact)

Перед запуском шифровальщика атакующий решает две задачи: вырубить EDR/AV и уничтожить возможность восстановления через теневые копии (VSS). Это критическая точка - если вы поймаете эту активность, до шифрования остаются минуты или часы. Тут уже не до чая. Подробнее о том, как поведенческие индикаторы шифровальщиков помогают обнаружить атаку до её завершения, - в отдельном разборе.

Sigma-правило для обнаружения удаления теневых копий:

YAML:


Код:
title
:
Shadow Copy Deletion via Vssadmin or WMIC
id
:
c947b146
-
0abc
-
4f87
-
9c64
-
b17e9d7274a2
status
:
stable
description
:
Detects deletion of shadow copies
-
common pre
-
ransomware activity
logsource
:
category
:
process_creation
product
:
windows
detection
:
selection_vssadmin
:
CommandLine|contains|all
:
-
'vssadmin'
-
'delete'
-
'shadows'
selection_wmic
:
CommandLine|contains|all
:
-
'wmic'
-
'shadowcopy'
-
'delete'
selection_powershell
:
CommandLine|contains|all
:
-
'Get-WmiObject'
-
'Win32_ShadowCopy'
-
'Delete'
condition
:
selection_vssadmin or selection_wmic or selection_powershell
level
:
critical
tags
:
-
attack.impact
-
attack.t1490
KQL для Microsoft Defender (адаптировано из документации Microsoft по Advanced Hunting):

Код:


Код:
DeviceProcessEvents
| where Timestamp > ago(1d)
| where (FileName =~ "vssadmin.exe" and ProcessCommandLine has "delete shadows")
    or (FileName =~ "wmic.exe" and ProcessCommandLine has "shadowcopy"
    and ProcessCommandLine has "delete")
| project DeviceId, Timestamp, FileName, ProcessCommandLine,
    InitiatingProcessFileName, InitiatingProcessParentFileName
Отключение защитных сервисов через sc.exe (T1562.001) - ещё один классический паттерн. Порог в 10 и более отключаемых сервисов за 5 минут - надёжный индикатор (по данным Microsoft):

Код:


Код:
DeviceProcessEvents
| where Timestamp > ago(1d)
| where FileName =~ "sc.exe" and ProcessCommandLine has "config"
    and ProcessCommandLine has "disabled"
| summarize ScDisableCount = dcount(ProcessCommandLine),
    ScDisableList = make_set(ProcessCommandLine)
    by DeviceId, bin(Timestamp, 5m)
| where ScDisableCount > 10
Очистка логов и заметание следов
MITRE ATT&CK: Clear Windows Event Logs (T1070.001, Defense Evasion)

Опытные операторы ransomware чистят за собой логи. И в этом их парадокс - сам факт массовой очистки логов это мощнейший индикатор компрометации. Ты пытаешься спрятаться, а вместо этого кричишь «я здесь».

Код:


Код:
index=wineventlog (EventCode=1102 OR EventCode=104)
| stats count by Computer, User, _time
| where count > 3
EventCode 1102 - очистка Security-лога, EventCode 104 - очистка System-лога. Если на одном хосте за короткое время очищены несколько журналов - это почти наверняка инцидент. Легитимные причины массовой очистки логов в production-среде я за всю практику встречал дважды, и оба раза это было задокументированное действие администратора с тикетом в Jira.

Дополнительно стоит мониторить использование wevtutil для очистки:

Код:


Код:
DeviceProcessEvents
| where Timestamp > ago(1d)
| where ProcessCommandLine has "WEVTUTIL" and ProcessCommandLine has "CL"
| summarize LogClearCount = dcount(ProcessCommandLine),
    ClearedLogList = make_set(ProcessCommandLine)
    by DeviceId, bin(Timestamp, 5m)
| where LogClearCount > 10
SIEM правила для ransomware: корреляция событий
Отдельные детекции - хорошо, но настоящая сила SIEM в корреляции. Один алерт на
Код:
vssadmin delete shadows
может быть false positive. Но если на том же хосте за последние 24 часа были: подозрительное обращение к LSASS, множественные RDP-сессии к другим серверам и отключение сервисов - тут уже не совпадение, а инцидент с высокой confidence.
Корреляционное правило для Splunk
SPL-запрос, который ищет хосты с множественными признаками pre-ransomware активности за последние 24 часа:

Код:


Код:
index=wineventlog earliest=-24h
| eval indicator=case(
    EventCode=1 AND (CommandLine LIKE "%comsvcs%MiniDump%" OR
        (CommandLine LIKE "%procdump%" AND CommandLine LIKE "%lsass%")),
    "credential_dump",
    EventCode=4624 AND Logon_Type=10, "rdp_logon",
    EventCode=7045 AND ServiceFileName LIKE "%PSEXESVC%", "psexec",
    EventCode=1 AND CommandLine LIKE "%vssadmin%delete%shadows%", "vss_delete",
    EventCode=1 AND CommandLine LIKE "%sc%config%disabled%", "service_disable",
    EventCode=1102 OR EventCode=104, "log_clear",
    1=1, "other"
)
| where indicator!="other"
| stats dc(indicator) as indicator_count,
    values(indicator) as indicators,
    values(CommandLine) as commands
    by Computer
| where indicator_count >= 3
| sort -indicator_count
Логика простая: если на одном хосте за 24 часа сработали 3 и более различных индикатора из набора - это приоритетный кейс. Бросай всё и разбирайся.
Sigma-правило для обнаружения массовой остановки процессов
Остановка критических сервисов - финальная подготовка перед шифрованием. Ransomware останавливает SQL Server, Exchange, антивирусы и backup-агенты, чтобы разблокировать файлы для шифрования. Логика тут чисто прикладная: пока SQL Server держит .mdf - зашифровать его не получится.

YAML:


Код:
title
:
Mass Service Stop via Net.exe
-
Pre
-
Ransomware Indicator
id
:
89f4c4ae
-
5fa0
-
4b51
-
b7a2
-
e9847c03d7a1
status
:
experimental
description
:
|
Detects mass stopping of services via net stop command,
    commonly observed before ransomware deployment
logsource
:
category
:
process_creation
product
:
windows
detection
:
selection
:
OriginalFileName
:
'net.exe'
CommandLine|contains
:
'stop'
timeframe
:
2m
condition
:
selection
|
count() by Computer
>
10
level
:
high
tags
:
-
attack.impact
-
attack.t1489
Обнаружение Valid Accounts и аномального использования учёток
MITRE ATT&CK: Valid Accounts (T1078, Initial Access / Persistence / Privilege Escalation / Defense Evasion)

Группы типа Medusa активно покупают доступ у Initial Access Brokers (IAB). По данным CISA, IAB-аффилиаты Medusa получают от 100 до 1 миллиона долларов за эксклюзивную работу на группу. Фишинг и незакрытые уязвимости - их хлеб. Результат - легитимные учётные записи в руках атакующего. Понимание того, как использовать данные об угрозах для проактивной защиты, помогает выстроить контекст вокруг подобных атак.

Вот что стоит искать в SIEM для обнаружения злоупотребления действующими учётными записями:

Код:


Код:
index=wineventlog EventCode=4624 Logon_Type IN (2,10)
| stats earliest(_time) as first_logon, latest(_time) as last_logon,
    dc(src) as unique_sources, dc(dest) as unique_destinations,
    values(src) as source_list
    by user
| where unique_sources > 3 AND unique_destinations > 5
| eval time_range=last_logon-first_logon
| where time_range  20
EventCode 5140 - доступ к сетевой шаре. Если один хост за 10 минут обращается к более чем 20 уникальным шарам - аномалия. Легитимные backup-системы и DFS-серверы создадут тут шум, поэтому добавьте исключения для известных сервисов.
Типичные false positives и как с ними жить
Любое SIEM-правило для ransomware будет генерировать ложные срабатывания. Вот самые частые из моей практики:

ДетекцияТипичный false positiveКак отличитьLSASS dumpАнтивирусный агент сканирует lsassParentProcess = известный AV-процесс с валидной подписьюМассовые RDP-сессииАдминистратор патчит серверыВремя совпадает с maintenance window, учётка из утверждённого спискаУдаление VSSСкрипт ротации бэкаповЗапуск по расписанию через Task Scheduler с известного хостаОтключение сервисовОбновление ПО (инсталлятор останавливает сервис)ParentProcess = msiexec.exe или setup.exe с валидной подписьюОчистка логовРотация логов администраторомДокументир ованная процедура, выполняется с jump-сервера

Главный принцип: не отключайте правило из-за false positives - настройте исключения через whitelist. Каждое исключение документируйте: кто добавил, почему, срок действия. На одном проекте мы нашли в whitelist исключение двухлетней давности, добавленное уволившимся сотрудником, - под него как раз пролез атакующий.
Что делать прямо сейчас
Если у вас сейчас нет программы threat hunting - начните с малого:
  1. Включите логирование. Минимум: Sysmon с конфигурацией SwiftOnSecurity, PowerShell ScriptBlock Logging, Windows Event Forwarding для EventCode 4624, 4625, 7045, 1102, 5140
  2. Импортируйте Sigma-правила. Репозиторий SigmaHQ на GitHub содержит сотни правил для ransomware-TTP. Конвертируйте под ваш SIEM
  3. Запланируйте еженедельный hunt. Выберите одну технику из таблицы выше и проведите hunting за неделю. Начните с T1003.001 (LSASS) - если это есть в вашей сети, всё остальное уже не важно
  4. Стройте baseline. Первые 2-4 недели уйдут на понимание «нормы» вашей сети. Без baseline утонете в алертах
Ransomware - не стихийное бедствие. Это атака с предсказуемым набором шагов, каждый из которых оставляет следы. Прямо сейчас возьмите SPL-запрос для LSASS из этой статьи и запустите на своих логах за последнюю неделю. Если результат пустой - хорошо, спите спокойно. Если нет - вы знаете, что делать. Для тех, кто хочет выстроить полноценную домашнюю лабораторию SOC с Wazuh для отработки этих техник - есть подробное пошаговое руководство.
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.