
Навигация
1. Введение: ландшафт RAT-угроз в 2026 году — что изменилось
2. Анатомия RAT: как троян проникает, закрепляется и скрывается
3. Признаки заражения: 15 симптомов активного RAT на вашей системе
4. Фаза 1 — Сетевой анализ: обнаружение C2-соединений
5. Фаза 2 — Процессы и память: поиск вредоносного кода в RAM
6. Фаза 3 — Автозапуск и персистентность: где RAT прячет своё присутствие
7. Фаза 4 — Файловая система: артефакты, дропперы, скрытые директории
8. Фаза 5 — Реестр и задачи: следы AsyncRAT, XWorm, Remcos
9. Инструментарий охотника: полный арсенал для обнаружения RAT
10. Ручное удаление: пошаговый алгоритм очистки заражённой системы
11. Восстановление после инцидента: что делать после удаления RAT
12. Защита на будущее: как не допустить повторного заражения
13. Корпоративный сценарий: обнаружение RAT в сети организации
14. FAQ: 12 горячих вопросов о троянах удалённого доступа
15. Чек-лист: экспресс-проверка системы на RAT за 20 минут
16. Заключение и теги
1. Введение: ландшафт RAT-угроз в 2026 году — что изменилось
Трояны удалённого доступа (Remote Access Trojan, RAT) — не новая угроза, но в 2025–2026 годах они претерпели качественный скачок. Согласно отчёту ANY.RUN за 2025 год, XWorm вырос по числу детектирований в 4,3 раза за год, AsyncRAT занял третье место в мировом рейтинге активных малвар-семейств, а Remcos удвоил активность. Recorded Future фиксирует, что RAT-семейства AsyncRAT, XWorm и Remcos вошли в топ-10 C2-детектирований за первое полугодие 2025 года — это прямое следствие того, что многие группы переключились с инфостилеров на более универсальные инструменты постоянного доступа.
Три фактора делают современные RAT принципиально опаснее версий пятилетней давности:
| Фактор | RAT 2020–2022 | RAT 2025–2026 |
|---|---|---|
| Доставка | Прямые вложения в письма | TryCloudflare, Dropbox, взломанные легит. ПО |
| Исполнение | Файл на диске | Fileless: инъекция в notepad.exe, aspnet_compiler.exe |
| Обход защит | Обфускация строк | Патчинг AMSI и ETW, unhook-вызовы API |
| Персистентность | Ключи реестра Run | Scheduled Tasks с ProcessWindowStyle.Hidden |
| C2-коммуникация | Открытый TCP | AES-шифрование, смешение с легит. трафиком |
| Обнаружение | Сигнатуры AV | Обходит большинство EPP/EDR при правильной настройке |
> 🔴 Ключевой факт 2025 года: кампания AsyncRAT через TryCloudflare, задокументированная Halcyon в июне 2025 года, обходила все развёрнутые инструменты EPP и EDR на атакованных системах. Только поведенческий анализ и сетевая видимость позволяли её обнаружить.
Это руководство построено как практический playbook: от первых симптомов до полной очистки системы. Каждая фаза снабжена конкретными командами, путями реестра и именами артефактов для актуальных семейств — AsyncRAT, XWorm, Remcos, VenomRAT, NjRAT и QuasarRAT.
> *💡 Все техники обнаружения в этой статье применяются исключительно к собственным системам или системам, для которых у вас есть явное разрешение на проведение анализа.*
2. Анатомия RAT: как троян проникает, закрепляется и скрывается
Понимание механики работы RAT — необходимое условие эффективного обнаружения. Большинство современных RAT следуют единой схеме из пяти стадий.
2.1 Стадия 1: Доставка и первоначальное исполнение
В 2025 году задокументированы следующие основные векторы доставки:
Фишинговые письма с многоступенчатой цепочкой. Письмо содержит ссылку на Dropbox или OneDrive с ZIP-архивом. Внутри — файл `.URL` или `.LNK`, который скачивает следующую стадию через временный туннель TryCloudflare. Это позволяет атакующему использовать легитимный домен `*.trycloudflare.com` вместо своего C2-сервера на первом этапе, обходя репутационные фильтры.
Троянизированное легитимное ПО. Сентябрьская 2025 года кампания AsyncRAT использовала взломанную версию ConnectWise ScreenConnect — инструмента, который сам по себе является легитимным ПО для удалённого доступа.
ClickFix-атаки. Фейковые CAPTCHA и страницы «верификации браузера» предлагают пользователю вставить в строку «Выполнить» (Win+R) или терминал PowerShell код, который загружает и запускает вредоносное ПО. В 2025 году этот вектор использовался для доставки NetSupport RAT, CastleLoader и XWorm.
Вредоносные Office-вложения с OLE-потоками. XWorm-кампания, задокументированная Forcepoint, использовала `.xlam`-файл с встроенным `oleObject1.bin`, который содержал зашифрованный шеллкод.
2.2 Стадия 2: Внедрение в легитимный процесс
Современные RAT избегают запуска как самостоятельный процесс. После первоначального исполнения вредоносный код инжектируется в системный или пользовательский процесс:
text
Типичные цели процессов-хостов (2025):
notepad.exe — AsyncRAT, VenomRAT
aspnet_compiler.exe — AsyncRAT (reflective loading)
RegAsm.exe — XWorm, Remcos
InstallUtil.exe — QuasarRAT
MSBuild.exe — NjRAT, DcRAT
explorer.exe — Gh0st RAT
svchost.exe — Remcos (при наличии привилегий)
Техника называется Process Hollowing или Reflective DLL Injection: легитимный процесс запускается, его память очищается и заполняется вредоносным кодом. Инструменты мониторинга видят легитимное имя процесса, но под ним скрывается малварь.
2.3 Стадия 3: Установка персистентности
RAT обязан пережить перезагрузку. Актуальные методы (2025–2026):
text
Реестр (Run-ключи):
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\Run
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
Планировщик задач (наиболее используемый в 2026):
%SystemRoot%\System32\Tasks\
Имена: WindowsDefenderUpdate, SystemCheck, MicrosoftEdgeUpdate
Атрибут: ProcessWindowStyle.Hidden (задача не видна в UI)
Папки автозапуска:
%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\
%PROGRAMDATA%\Microsoft\Windows\Start Menu\Programs\Startup\
WMI-подписки (продвинутый метод):
__EventFilter + __EventConsumer + __FilterToConsumerBinding
Триггер: при входе в систему или через интервал времени
2.4 Стадия 4: C2-коммуникация
После закрепления RAT устанавливает зашифрованный канал с сервером управления:
asyncrat
: TCP, порты 6606/7707/8808, AES-CBC шифрование
XWorm: TCP + WebSocket, порт 7000 (настраиваемый)
Remcos: TCP, порты 2404/4782, RC4 шифрование
NjRAT: TCP, порт 5552 (настраиваемый)
QuasarRAT: TCP, порт 4782, TLS
В 2025 году кампании AsyncRAT добавили слой через TryCloudflare-туннели, что затрудняет детектирование по репутации IP-адреса: трафик идёт через `*.trycloudflare.com` — легитимный сервис Cloudflare.
2.5 Стадия 5: Возможности злоумышленника
Полный набор возможностей типичного commodity RAT в 2026 году:
- Удалённое управление рабочим столом (Remote Desktop)
- Кейлоггинг (перехват нажатий клавиш)
- Захват скриншотов и видео с экрана
- Доступ к веб-камере и микрофону
- Кража паролей из браузеров и приложений
- Кража токенов Discord, Telegram, Steam
- Перехват буфера обмена (включая подмену криптовалютных адресов)
- Загрузка и запуск дополнительных полезных нагрузок (ransomware, coinminer)
- Распространение через USB-накопители
- Отключение Windows Defender и других средств защиты
3. Признаки заражения: 15 симптомов активного RAT на вашей системе
RAT разработан для скрытности — большинство пользователей не замечают его присутствия. Однако существуют характерные индикаторы, которые выдают активный троян.
| № | Симптом | Вероятность RAT | Также возможно |
|---|---|---|---|
| 1 | Веб-камера включается без вашего действия | ★★★★★ | Баг драйвера |
| 2 | Мышь движется сама | ★★★★★ | Touchpad-глюк |
| 3 | Антивирус отключился и не запускается | ★★★★★ | Конфликт ПО |
| 4 | Неизвестные исходящие соединения в netstat | ★★★★☆ | Легит. фоновые сервисы |
| 5 | Процесс с легит. именем, но из %APPDATA% | ★★★★☆ | Редко — легитимно |
| 6 | Резкий рост исходящего трафика | ★★★★☆ | Обновления, бэкапы |
| 7 | Новые задачи в планировщике с незнакомыми именами | ★★★★☆ | Легит. ПО |
| 8 | Браузерные пароли исчезли или изменились | ★★★★☆ | Сброс профиля |
| 9 | Новые Run-ключи в реестре | ★★★★☆ | Легит. ПО |
| 10 | Файлы в %TEMP%, %APPDATA% с случайными именами | ★★★☆☆ | Установщики ПО |
| 11 | Повышенная нагрузка CPU без видимой причины | ★★★☆☆ | Индексация, обновления |
| 12 | Зависание при открытии диспетчера задач | ★★★☆☆ | Перегрузка системы |
| 13 | Отключение или блокировка regedit.exe | ★★★★★ | Групповая политика |
| 14 | Новые пользовательские аккаунты в системе | ★★★★★ | Корп. политика |
| 15 | Аккаунты соцсетей/банков ведут себя странно | ★★★★☆ | Фишинг без RAT |
> 🔴 Критическое предупреждение: если диспетчер задач, regedit или антивирус не открываются или принудительно закрываются — с высокой вероятностью RAT активно противодействует обнаружению прямо сейчас. Переходите к фазе 1 немедленно, не ждите окончания «обычной работы».
3.1 Первое действие при подозрении
Перед любым анализом — изолируйте систему. Отключите интернет (физически — вытащите кабель или выключите Wi-Fi аппаратной кнопкой), но НЕ выключайте компьютер: RAM содержит ценные артефакты, которые исчезнут при выключении.
text
Правило первого ответа:
✅ Отключить от сети физически
✅ Сохранить состояние RAM (если есть возможность)
✅ Документировать всё, что видите на экране (скриншоты)
❌ Не выключать компьютер
❌ Не запускать антивирусное сканирование первым делом
❌ Не удалять подозрительные файлы до полного анализа
4. Фаза 1 — Сетевой анализ: обнаружение C2-соединений
Сетевые соединения — самый надёжный первичный индикатор активного RAT. Большинство троянов поддерживают постоянное соединение с C2-сервером.
4.1 netstat: быстрая проверка активных соединений
cmd
:: Запустить от имени Администратора
:: Показать все TCP-соединения с PID процессов
netstat -ano | findstr ESTABLISHED
:: Пример подозрительного вывода:
:: TCP 192.168.1.5:49812 45.142.212.100:7707 ESTABLISHED 4821
:: ^^^^^^^^^^^^^^^^^^^^^^
:: Нестандартный порт 7707 → типичен для AsyncRAT
:: Найти имя процесса по PID
tasklist /fi "PID eq 4821"
:: → svchost.exe 4821 Services 0 15,432 K
:: Легитимный svchost не должен соединяться с внешними IP на нестандартных портах
powershell
<h2 id="powershell-rasshirennyy-vyvod-soedineniy-s-imenami-protsessov">PowerShell: расширенный вывод соединений с именами процессов</h2>
Get-NetTCPConnection -State Established |
Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort,
@{n='Process'; e={(Get-Process -Id $_.OwningProcess -EA SilentlyContinue).Name}},
OwningProcess |
Where-Object { $_.RemoteAddress -notmatch '^(127\.|::1|0\.0\.0\.0)' } |
Sort-Object RemoteAddress |
Format-Table -AutoSize
4.2 Проверка репутации внешних IP-адресов
Найденные внешние IP-адреса проверяйте в реальном времени:
text
Бесплатные инструменты для проверки IP:
AbuseIPDB: abuseipdb.com/check/<IP>
VirusTotal: virustotal.com/gui/ip-address/<IP>
Shodan: shodan.io/host/<IP>
Cisco Talos: talosintelligence.com/reputation_center/lookup?search=<IP>
IPVoid: ipvoid.com/ip-address-blacklist-check/
Признаки вредоносного C2 в результатах:
- IP помечен как C2 или botnet в нескольких базах
- Геолокация — необычная для легитимных сервисов (случайные VPS в Молдове, Иране, нидерландский bulletproof-хостинг)
- Открытый порт совпадает с типичными портами RAT (6606, 7707, 8808 — AsyncRAT; 7000 — XWorm; 4782 — QuasarRAT)
- В Shodan на этом IP нет ничего, кроме открытого TCP-порта без веб-сервера
4.3 Wireshark: анализ содержимого трафика
Если netstat показал подозрительное соединение — захватите и проанализируйте трафик:
text
Фильтры Wireshark для поиска RAT-трафика:
<h2 id="trafik-k-konkretnomu-ip">Трафик к конкретному IP</h2>
ip.dst == 45.142.212.100
<h2 id="nestandartnye-porty-ne-80-443-53">Нестандартные порты (не 80/443/53)</h2>
tcp.port != 80 and tcp.port != 443 and tcp.port != 53 and tcp.flags.syn == 1
<h2 id="harakternaya-signatura-asyncrat-pervye-bayty-paketa">Характерная сигнатура AsyncRAT (первые байты пакета)</h2>
tcp contains "Stub"
<h2 id="xworm-heartbeat-periodicheskie-malenkie-pakety">XWorm heartbeat (периодические маленькие пакеты)</h2>
tcp.len < 50 and tcp.flags.push == 1 and ip.dst == <подозрительный IP>
<h2 id="poisk-base64-v-http-trafike">Поиск Base64 в HTTP-трафике</h2>
http contains "==" and http.request.method == "POST"
Характерный паттерн RAT в Wireshark: регулярные пакеты фиксированного маленького размера (heartbeat) каждые 5–30 секунд к одному и тому же внешнему IP. Это beacon — троян «звонит» на C2 и ждёт команд.
4.4 Сигнатуры C2-трафика актуальных RAT
asyncrat
:
- TCP-соединение остаётся открытым постоянно
- Порты по умолчанию: 6606, 7707, 8808
- Первые байты сессии: зашифрованный AES-CBC хэндшейк
- Характерно: трафик через TryCloudflare (*.trycloudflare.com:443)
XWorm:
- Смешанный TCP/WebSocket транспорт
- Порт по умолчанию: 7000
- Heartbeat каждые ~5 секунд, пакет ≈ 12–20 байт
Remcos:
- TCP, порты 2404, 4782
- RC4-шифрование
- Трафик маскируется под HTTPS-подобные пакеты
NjRAT:
- TCP, порт 5552
- Данные разделены символом `|'|`
- Частично открытый текст в старых версиях
5. Фаза 2 — Процессы и память: поиск вредоносного кода в RAM
5.1 Process Hacker 2 / System Informer: глубокий анализ процессов
Process Hacker (переименован в System Informer) — мощная альтернатива диспетчеру задач, показывающая то, что Windows скрывает в стандартном интерфейсе.
text
Скачать: processhacker.sourceforge.io (или github.com/winsiderss/systeminformer)
Запускать от имени Администратора обязательно.
Что проверять в каждом процессе:
1
. Путь к исполняемому файлу (колонка "File Name"):
Подозрительно:
C:\Users\User\AppData\Roaming\svchost.exe ← легит. svchost живёт ТОЛЬКО в System32
C:\Users\User\AppData\Local\Temp\update.exe
C:\ProgramData\Windows\explorer.exe ← поддельный explorer
Безопасно:
C:\Windows\System32\svchost.exe
C:\Windows\explorer.exe
2. Цифровая подпись (правый клик → Properties → Digital Signature):
❌ "Not signed" на процессе с системным именем — критический флаг
❌ Подпись есть, но сертификат отозван или self-signed
3. Родительский процесс (Parent):
Подозрительно: notepad.exe породил cmd.exe или powershell.exe
Подозрительно: explorer.exe породил mshta.exe или wscript.exe
4. Цвет строки в Process Hacker:
🔴 Красный — процесс завершился (смотрите — он мог что-то запустить)
🟣 Фиолетовый — процесс упакован (packed) — частый признак малвари
🩷 Розовый — .NET процесс (AsyncRAT написан на .NET)
🟡 Жёлтый — процесс выполняет подозрительные операции памяти
Проверка инжекций в памяти:
text
Правый клик на подозрительный процесс → Properties → Memory
Ищите регионы с атрибутами:
Execute (RWX или RX) в куче — признак шеллкода
Private память размером > 1 MB в системном процессе
Регион без имени модуля (пустое поле "Name") — инжектированный код
5.2 Захват и анализ дампа памяти
cmd
:: Создание полного дампа памяти через встроенные средства Windows
:: (от Администратора, заменить PID на реальный)
procdump.exe -ma <PID> C:\forensics\suspect_process.dmp
:: Альтернатива через Task Manager:
:: Правый клик на процессе → Create dump file
powershell
<h2 id="poisk-strok-v-dampe-pamyati-priznaki-asyncrat">Поиск строк в дампе памяти (признаки AsyncRAT)</h2>
strings C:\forensics\suspect_process.dmp | Select-String -Pattern `
"AsyncRAT|AsyncClient|Stub|GetInstallPath|AntiVM|AntiAnalysis"
<h2 id="priznaki-xworm">Признаки XWorm</h2>
strings C:\forensics\suspect_process.dmp | Select-String -Pattern `
"XWorm|XClient|Xworm|WormHole"
<h2 id="priznaki-remcos">Признаки Remcos</h2>
strings C:\forensics\suspect_process.dmp | Select-String -Pattern `
"Remcos|RemcosRAT|REMCOS_MUTEX"
<h2 id="poisk-c2-adresov-ip-port-pattern">Поиск C2-адресов (IP:PORT паттерн)</h2>
strings C:\forensics\suspect_process.dmp | Select-String -Pattern `
'\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{2,5}\b'
5.3 Volatility 3: профессиональный анализ образа памяти
bash
<h2 id="ustanovka-volatility-3">Установка Volatility 3</h2>
pip install volatility3
<h2 id="spisok-protsessov-s-derevom-vyyavlyaet-anomalnye-parent-child">Список процессов с деревом (выявляет аномальные parent-child)</h2>
python vol.py -f memory.raw windows.pstree
<h2 id="obnaruzhenie-inzhektirovannogo-koda-v-protsessah">Обнаружение инжектированного кода в процессах</h2>
python vol.py -f memory.raw windows.malfind
<h2 id="setevye-soedineniya-iz-pamyati">Сетевые соединения из памяти</h2>
python vol.py -f memory.raw windows.netstat
<h2 id="poisk-konkretnoy-stroki-vo-vsey-ram">Поиск конкретной строки во всей RAM</h2>
python vol.py -f memory.raw windows.strings --pid <PID> --string "AsyncRAT"
<h2 id="damp-podozritelnogo-protsessa-iz-obraza-pamyati">Дамп подозрительного процесса из образа памяти</h2>
python vol.py -f memory.raw windows.dumpfiles --pid <PID> --output-dir ./dumps/
6. Фаза 3 — Автозапуск и персистентность: где RAT прячет своё присутствие
6.1 Autoruns: полная карта автозапуска системы
Autoruns от Sysinternals — незаменимый инструмент, показывающий ВСЕ точки автозапуска Windows: от Run-ключей реестра до WMI-подписок и Browser Helper Objects.
text
Скачать: docs.microsoft.com/sysinternals/downloads/autoruns
Запускать: от имени Администратора с отключённым антивирусом
(иначе антивирус может скрыть свои же записи)
Алгоритм работы с Autoruns:
text
Шаг 1: Options → Scan Options → Check VirusTotal.com
Autoruns отправит хэши всех записей в VirusTotal
Шаг 2: Options → Hide Microsoft and Windows entries
Скроет легитимные системные записи — останется только стороннее ПО
Шаг 3: Искать красные строки (VirusTotal > 0/70 детектирований)
Искать жёлтые строки (файл не найден — был удалён, но запись осталась)
Искать записи без Publisher / без Description
Шаг 4: Особое внимание вкладкам:
Logon — Run-ключи, папки автозапуска
Scheduled Tasks — задачи планировщика (главная мишень в 2026)
Services — службы Windows (редко, но используется Remcos)
WMI — подписки WMI (продвинутые RAT)
Drivers — руткиты (выходит за рамки commodity RAT)
Типичные записи AsyncRAT в Autoruns:
text
Вкладка Scheduled Tasks:
Имя: WindowsDefenderUpdate или MicrosoftEdgeUpdateTask
Путь: C:\Users\User\AppData\Roaming\<случайные символы>\<случайные символы>.exe
Триггер: At log on / Every X minutes
Атрибут: Hidden (не виден в стандартном Task Scheduler UI)
Вкладка Logon:
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
Имя: SystemHealth или WindowsUpdate
Путь: C:\Users\User\AppData\Local\Temp\update32.exe
6.2 Ручная проверка Scheduled Tasks (без Autoruns)
powershell
<h2 id="pokazat-vse-zadachi-vklyuchaya-skrytye">Показать ВСЕ задачи, включая скрытые</h2>
Get-ScheduledTask | Select-Object TaskName, TaskPath, State,
@{n='Action'; e={($_.Actions | ForEach-Object {$_.Execute + ' ' + $_.Arguments}) -join '; '}} |
Where-Object {
$_.Action -match 'AppData|Temp|ProgramData|%|\.vbs|\.ps1|\.bat|mshta|wscript|cscript'
} | Format-List
<h2 id="proverit-konkretnuyu-zadachu-detalno">Проверить конкретную задачу детально</h2>
$task = Get-ScheduledTask -TaskName "WindowsDefenderUpdate"
$task.Triggers
$task.Actions
$task.Settings
(Get-ScheduledTaskInfo -TaskName "WindowsDefenderUpdate").LastRunTime
6.3 Папки автозапуска
powershell
<h2 id="soderzhimoe-papok-avtozapuska">Содержимое папок автозапуска</h2>
$startupFolders = @(
"$env:APPDATA\Microsoft\Windows\Start Menu\Programs\Startup",
"$env:ProgramData\Microsoft\Windows\Start Menu\Programs\Startup",
"$env:USERPROFILE\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
)
foreach ($folder in $startupFolders) {
if (Test-Path $folder) {
Write-Host "`n=== $folder ===" -ForegroundColor Yellow
Get-ChildItem $folder | Select-Object Name, LastWriteTime, Length
}
}
7. Фаза 4 — Файловая система: артефакты, дропперы, скрытые директории
7.1 Типичные расположения файлов RAT
powershell
<h2 id="poisk-ispolnyaemyh-faylov-v-nestandartnyh-raspolozheniyah">Поиск исполняемых файлов в нестандартных расположениях</h2>
$suspiciousPaths = @(
"$env:APPDATA\*\*.exe",
"$env:APPDATA\*\*.dll",
"$env:LOCALAPPDATA\*\*.exe",
"$env:TEMP\*.exe",
"$env:TEMP\*.dll",
"$env:ProgramData\*\*.exe",
"$env:USERPROFILE\*.exe"
)
foreach ($path in $suspiciousPaths) {
$files = Get-ChildItem -Path $path -ErrorAction SilentlyContinue
foreach ($file in $files) {
Write-Host "$($file.FullName) | $($file.LastWriteTime) | $($file.Length) байт"
}
}
7.2 Поиск недавно изменённых файлов
powershell
<h2 id="fayly-sozdannye-ili-izmenyonnye-za-poslednie-7-dney">Файлы, созданные или изменённые за последние 7 дней</h2>
<h2 id="v-polzovatelskih-direktoriyah">в пользовательских директориях</h2>
Get-ChildItem -Path $env:USERPROFILE -Recurse -ErrorAction SilentlyContinue |
Where-Object {
$_.LastWriteTime -gt (Get-Date).AddDays(-7) -and
$_.Extension -in '.exe','.dll','.bat','.ps1','.vbs','.js','.hta'
} |
Select-Object FullName, LastWriteTime, Length |
Sort-Object LastWriteTime -Descending |
Format-Table -AutoSize
7.3 Проверка хешей в VirusTotal
powershell
<h2 id="poluchit-sha256-podozritelnogo-fayla">Получить SHA256 подозрительного файла</h2>
$file = "C:\Users\User\AppData\Roaming\svchost.exe"
$hash = Get-FileHash $file -Algorithm SHA256
Write-Host "SHA256: $($hash.Hash)"
<h2 id="skopirovat-hesh-i-proverit-na">Скопировать хеш и проверить на:</h2>
<h2 id="virustotal-com-gui-file-sha256">virustotal.com/gui/file/<SHA256></h2>
<h2 id="any-run-zagruzit-fayl-dlya-dinamicheskogo-analiza">any.run (загрузить файл для динамического анализа)</h2>
<h2 id="hybrid-analysis-com">hybrid-analysis.com</h2>7.4 Артефакты Python-загрузчиков (AsyncRAT 2025)
Кампании AsyncRAT через TryCloudflare оставляют следующие артефакты:
text
Типичная структура дроппера (февраль 2025, Halcyon):
%TEMP%\<8 случайных символов>.py ← Python-загрузчик
%TEMP%\<8 случайных символов>\ ← директория с библиотеками
cryptography\
cffi\
%APPDATA%\<название проекта>\ ← основная малварь
client.exe или stub.exe
Сетевые артефакты:
Доменные имена вида: <случайное>-<случайное>.trycloudflare.com
URL-паттерн: https://<tunnel>.trycloudflare.com/<случайный-путь>
8. Фаза 5 — Реестр и задачи: следы AsyncRAT, XWorm, Remcos
8.1 Ключевые разделы реестра для проверки
powershell
<h2 id="vse-run-klyuchi-avtozapuska-dlya-vseh-polzovateley">Все Run-ключи автозапуска (для всех пользователей)</h2>
$runKeys = @(
"HKCU:\Software\Microsoft\Windows\CurrentVersion\Run",
"HKCU:\Software\Microsoft\Windows\CurrentVersion\RunOnce",
"HKLM:\Software\Microsoft\Windows\CurrentVersion\Run",
"HKLM:\Software\Microsoft\Windows\CurrentVersion\RunOnce",
"HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Run",
"HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders",
"HKLM:\System\CurrentControlSet\Services" # службы
)
foreach ($key in $runKeys) {
if (Test-Path $key) {
Write-Host "`n=== $key ===" -ForegroundColor Cyan
Get-ItemProperty $key | Format-List
}
}
8.2 Специфические следы известных RAT в реестре
asyncrat
:
HKCU\Software\AsyncRAT ← конфиг (в некоторых версиях)
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\
"Client" = "%APPDATA%\<путь>\Client.exe"
XWorm:
HKCU\Software\XWorm ← в старых версиях
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\
"XWorm" или "Client" = "%TEMP%\<файл>"
Мьютекс: XWorm_Mutex (видно в Process Hacker → Handles)
Remcos:
HKCU\Software\Remcos-<случайный ID> ← конфиг и лог
HKLM\SYSTEM\CurrentControlSet\Services\
"Remcos" (при запуске с правами Администратора)
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\
"Remcos" = "%APPDATA%\Remcos\remcos.exe"
NjRAT:
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\
"<случайное имя>" = "%TEMP%\<файл>.exe"
Мьютекс: njq8 (типичный для старых версий)
QuasarRAT:
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\
"Quasar Client Startup"
%APPDATA%\Quasar\ — директория с файлами
8.3 Поиск мьютексов RAT через PowerShell
powershell
<h2 id="spisok-myuteksov-vseh-protsessov-trebuet-process-hacker-ili-sysinternals-handle">Список мьютексов всех процессов (требует Process Hacker или Sysinternals Handle)</h2>
<h2 id="cherez-handle-exe-sysinternals">Через Handle.exe (Sysinternals):</h2>
handle.exe -a | Select-String -Pattern "Mutant.*(?:Async|XWorm|Remcos|njq8|Quasar|DCRat|VenomRAT)"
<h2 id="cherez-process-hacker-view-system-handles-filtr-po-type-mutant">Через Process Hacker: View → System Handles → фильтр по Type: Mutant</h2>8.4 WMI-персистентность: продвинутый метод
powershell
<h2 id="proverit-wmi-podpiski-redko-no-ispolzuetsya-v-prodvinutyh-kampaniyah">Проверить WMI-подписки (редко, но используется в продвинутых кампаниях)</h2>
Get-WMIObject -Namespace root\subscription -Class __EventFilter |
Select-Object Name, Query, QueryLanguage | Format-List
Get-WMIObject -Namespace root\subscription -Class __EventConsumer |
Select-Object Name, CommandLineTemplate, ScriptText | Format-List
Get-WMIObject -Namespace root\subscription -Class __FilterToConsumerBinding |
Select-Object Filter, Consumer | Format-List
<h2 id="esli-obnaruzheny-podozritelnye-podpiski-udalit">Если обнаружены подозрительные подписки — удалить:</h2>
$filter = Get-WMIObject -Namespace root\subscription -Class __EventFilter -Filter "Name='ВредоносноеИмя'"
$filter.Delete()
<h2 id="analogichno-dlya-consumer-i-binding">Аналогично для Consumer и Binding</h2>9. Инструментарий охотника: полный арсенал для обнаружения RAT
9.1 Бесплатные инструменты для Windows
| Инструмент | Назначение | Где скачать |
|---|---|---|
| Autoruns (Sysinternals) | Полная карта автозапуска + VirusTotal интеграция | learn.microsoft.com/sysinternals |
| Process Hacker / System Informer | Глубокий анализ процессов, памяти, инжекций | processhacker.sourceforge.io |
| TCPView (Sysinternals) | Живой мониторинг сетевых соединений | learn.microsoft.com/sysinternals |
| Wireshark | Захват и анализ трафика | wireshark.org |
| CurrPorts (NirSoft) | Сетевые соединения с деталями процессов | nirsoft.net/utils/cports.html |
| Regshot | Сравнение снимков реестра до/после | sourceforge.net/projects/regshot |
| Malwarebytes (бесплатная) | Удаление малвари, второе мнение | malwarebytes.com |
| HitmanPro (30 дней бесплатно) | Поведенческий сканер, cloud-анализ | hitmanpro.com |
| RogueKiller | Специализированный RAT/руткит сканер | adlice.com/roguekiller |
| Procdump (Sysinternals) | Дамп памяти процессов | learn.microsoft.com/sysinternals |
| Handle (Sysinternals) | Просмотр дескрипторов и мьютексов | learn.microsoft.com/sysinternals |
| Volatility 3 | Форензика образов RAM | github.com/volatilityfoundation |
9.2 Онлайн-сервисы для проверки файлов и хешей
text
Статический анализ файлов:
virustotal.com — 70+ антивирусных движков
hybrid-analysis.com — статический + динамический анализ
any.run — интерактивная песочница (смотреть поведение)
joe sandbox cloud — детальные поведенческие отчёты
tria.ge — быстрый многоплатформенный анализ
Проверка IP / доменов:
abuseipdb.com — репутация IP
virustotal.com/gui/ip-address/<IP>
talosintelligence.com — репутация от Cisco
threatfox.abuse.ch — база IOC от abuse.ch
Базы IOC и хешей:
bazaar.abuse.ch — образцы малвари
otx.alienvault.com — индикаторы угроз (бесплатно)
misp-project.org — платформа обмена IoC
9.3 YARA-правила для обнаружения RAT
YARA-правила позволяют сканировать файлы и память на сигнатуры известных RAT:
yara
// Правило для обнаружения AsyncRAT (YARA)
rule AsyncRAT_Generic {
meta:
description = "Обнаружение AsyncRAT по характерным строкам"
author = "Community"
date = "2025"
reference = "https://github.com/NYAN-x-CAT/AsyncRAT-C-Sharp"
strings:
$s1 = "AsyncRAT" ascii wide nocase
$s2 = "GetInstallPath" ascii wide
$s3 = "Pastebin" ascii wide
$s4 = "Stub" ascii wide
$s5 = "AntiVM" ascii wide
$s6 = "AntiAnalysis" ascii wide
$net = { 7B 00 41 00 73 00 79 00 6E 00 63 00 52 00 41 00 54 00 }
condition:
uint16(0) == 0x5A4D and // PE файл
(3 of ($s*) or $net)
}
// Правило для XWorm
rule XWorm_Generic {
meta:
description = "Обнаружение XWorm"
strings:
$s1 = "XWorm" ascii wide nocase
$s2 = "XClient" ascii wide
$s3 = "Xworm_Mutex" ascii wide
$cmd1 = "Shutdown" ascii wide
$cmd2 = "Uninstall" ascii wide
$cmd3 = "FileManager" ascii wide
condition:
uint16(0) == 0x5A4D and
(2 of ($s*)) or (3 of ($cmd*))
}
bash
<h2 id="zapusk-yara-skanirovaniya">Запуск YARA-сканирования</h2>
<h2 id="ustanovka-github-com-virustotal-yara-releases">Установка: github.com/VirusTotal/yara/releases</h2>
yara.exe rules\asyncrat.yar C:\Users\User\AppData\Roaming\ -r
yara.exe rules\xworm.yar C:\Windows\Temp\ -r
<h2 id="skanirovanie-pamyati-vseh-protsessov">Сканирование памяти всех процессов</h2>
yara.exe -p 4 rules\all_rats.yar --pid <PID>
9.4 Sysmon: проактивный мониторинг событий
Sysmon (System Monitor) от Sysinternals логирует системные события с высокой детализацией — незаменим для обнаружения RAT в корпоративной среде:
xml
<!-- Минимальная конфигурация Sysmon для обнаружения RAT -->
<!-- sysmon-config.xml -->
<Sysmon schemaversion="4.82">
<EventFiltering>
<!-- Создание процессов -->
<RuleGroup name="ProcessCreate" groupRelation="or">
<ProcessCreate onmatch="include">
<!-- Подозрительные родительские процессы -->
<ParentImage condition="contains">mshta.exe</ParentImage>
<ParentImage condition="contains">wscript.exe</ParentImage>
<ParentImage condition="contains">cscript.exe</ParentImage>
<ParentImage condition="contains">powershell.exe</ParentImage>
<!-- Запуск из Temp/AppData -->
<CurrentDirectory condition="contains">AppData\Roaming</CurrentDirectory>
<CurrentDirectory condition="contains">Temp</CurrentDirectory>
</ProcessCreate>
</RuleGroup>
<!-- Сетевые соединения -->
<RuleGroup name="NetworkConnect" groupRelation="or">
<NetworkConnect onmatch="include">
<!-- Типичные порты RAT -->
<DestinationPort condition="is">6606</DestinationPort>
<DestinationPort condition="is">7707</DestinationPort>
<DestinationPort condition="is">8808</DestinationPort>
<DestinationPort condition="is">7000</DestinationPort>
<DestinationPort condition="is">4782</DestinationPort>
<DestinationPort condition="is">5552</DestinationPort>
</NetworkConnect>
</RuleGroup>
<!-- Изменения реестра в Run-ключах -->
<RuleGroup name="RegistryEvent" groupRelation="or">
<RegistryEvent onmatch="include">
<TargetObject condition="contains">CurrentVersion\Run</TargetObject>
<TargetObject condition="contains">CurrentVersion\RunOnce</TargetObject>
</RegistryEvent>
</RuleGroup>
</EventFiltering>
</Sysmon>
cmd
:: Установка Sysmon с конфигурацией
sysmon.exe -accepteula -i sysmon-config.xml
:: Просмотр событий Sysmon (Event ID 1 = ProcessCreate, 3 = NetworkConnect)
wevtutil qe Microsoft-Windows-Sysmon/Operational /c:50 /rd:true /f:text
10. Ручное удаление: пошаговый алгоритм очистки заражённой системы
> ⚠️ Важно: если вы не уверены в своих силах или заражение затронуло критически важные данные — рассмотрите переустановку Windows с нуля. Это единственный способ гарантировать полную очистку при продвинутой инфекции.
10.1 Подготовка: загрузочная среда
Для надёжного удаления рекомендуется работать из автономной среды, где RAT не запущен:
text
Вариант 1: Windows Recovery Environment (WinRE)
Удержите Shift при нажатии «Перезагрузить»
Устранение неисправностей → Дополнительные параметры → Командная строка
Вариант 2: Загрузочный антивирус
Kaspersky Rescue Disk: kaspersky.com/downloads/rescue-disk
ESET SysRescue: eset.com/eset-online-scanner
BitDefender Rescue: bitdefender.com/support/rescue-cd
(Скачать на чистом ПК, записать на USB, загрузиться с USB)
Вариант 3: Безопасный режим Windows
F8 при загрузке → Безопасный режим с поддержкой сети
В безопасном режиме большинство RAT не запускается (нет записей в HKLM\System\...)
10.2 Шаг 1: Завершение вредоносного процесса
powershell
<h2 id="esli-znaete-pid-iz-predyduschego-analiza">Если знаете PID из предыдущего анализа</h2>
Stop-Process -Id <PID> -Force
<h2 id="zavershit-protsess-po-imeni-ostorozhno-proverte-chto-eto-ne-legitimnyy-protsess">Завершить процесс по имени (осторожно — проверьте, что это не легитимный процесс)</h2>
Get-Process -Name "svchost" | Where-Object {
$_.Path -notmatch "System32"
} | Stop-Process -Force
<h2 id="v-process-hacker-pravyy-klik-terminate-ne-terminate-tree">В Process Hacker: правый клик → Terminate (не Terminate Tree!)</h2>
<h2 id="terminate-tree-zavershit-takzhe-vse-dochernie-protsessy-ispolzuyte-akkuratno">Terminate Tree завершит также все дочерние процессы — используйте аккуратно</h2>10.3 Шаг 2: Удаление точек персистентности
powershell
<h2 id="udalenie-run-klyuchey-reestra">Удаление Run-ключей реестра</h2>
$keyPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run"
$valueName = "WindowsDefenderUpdate" # заменить на реальное имя
Remove-ItemProperty -Path $keyPath -Name $valueName -ErrorAction SilentlyContinue
<h2 id="udalenie-zadachi-planirovschika">Удаление задачи планировщика</h2>
Unregister-ScheduledTask -TaskName "MicrosoftEdgeUpdateTask" -Confirm:$false
<h2 id="udalenie-iz-papki-avtozapuska">Удаление из папки автозапуска</h2>
Remove-Item "$env:APPDATA\Microsoft\Windows\Start Menu\Programs\Startup\malware.lnk"
<h2 id="udalenie-wmi-podpiski-esli-byla-obnaruzhena">Удаление WMI-подписки (если была обнаружена)</h2>
Get-WMIObject -Namespace root\subscription -Class __EventFilter |
Where-Object { $_.Name -eq "ВредоносноеИмя" } | Remove-WmiObject
10.4 Шаг 3: Удаление файлов малвари
powershell
<h2 id="udalenie-osnovnogo-fayla">Удаление основного файла</h2>
$malwarePath = "C:\Users\User\AppData\Roaming\<путь>\client.exe"
Remove-Item $malwarePath -Force
<h2 id="esli-fayl-zablokirovan-aktivnym-protsessom-snachala-zavershite-protsess">Если файл заблокирован активным процессом — сначала завершите процесс</h2>
<h2 id="esli-fayl-zaschischyon-ispolzuyte-unlocker-ili-rezhim-winre">Если файл защищён — используйте Unlocker или режим WinRE</h2>
<h2 id="udalenie-direktorii-s-artefaktami">Удаление директории с артефактами</h2>
Remove-Item "C:\Users\User\AppData\Roaming\<директория>" -Recurse -Force
Remove-Item "$env:TEMP\*.py" -Force
10.5 Шаг 4: Сброс скомпрометированных учётных данных
После удаления RAT необходимо предположить, что ВСЕ пароли, введённые с момента заражения, скомпрометированы:
text
Приоритет смены паролей:
1. Email (главный — через него восстанавливается всё остальное)
2. Онлайн-банкинг и финансовые сервисы
3. Социальные сети
4. Мессенджеры (Telegram, WhatsApp — проверьте активные сессии!)
5. Рабочие аккаунты (VPN, корп. почта, Active Directory)
6. Steam, игровые платформы
7. Менеджер паролей
Для Telegram: Настройки → Конфиденциальность → Активные сессии → Завершить все
Для Google: myaccount.google.com → Безопасность → Ваши устройства
10.6 Шаг 5: Верификация очистки
powershell
<h2 id="povtornaya-proverka-run-klyuchey">Повторная проверка Run-ключей</h2>
foreach ($key in @("HKCU:\...\Run", "HKLM:\...\Run")) {
Write-Host "=== $key ===" -ForegroundColor Green
Get-ItemProperty $key -ErrorAction SilentlyContinue | Format-List
}
<h2 id="povtornaya-proverka-zadach-planirovschika-iz-nestandartnyh-putey">Повторная проверка задач планировщика из нестандартных путей</h2>
Get-ScheduledTask | Where-Object {
$_.Actions.Execute -match 'AppData|Temp'
} | Select-Object TaskName, @{n='Exe'; e={$_.Actions.Execute}}
<h2 id="povtornyy-zapusk-netstat-net-ishodyaschih-k-podozritelnym-ip">Повторный запуск netstat — нет исходящих к подозрительным IP</h2>
netstat -ano | findstr ESTABLISHED
11. Восстановление после инцидента: что делать после удаления RAT
11.1 Оценка ущерба
Прежде чем считать инцидент закрытым — оцените потенциальный ущерб. Ответьте на вопросы:
text
Доступ к системе:
□ Сколько времени RAT был активен? (дата заражения vs дата обнаружения)
□ Были ли периоды активности с необычным поведением?
□ Есть ли в логах признаки удалённого управления рабочим столом?
Данные:
□ Какие файлы на диске имели доступ в период заражения?
□ Были ли подключены внешние диски, NAS, сетевые ресурсы?
□ Есть ли на диске документы с коммерческой тайной, ПДн, финансовыми данными?
Учётные данные:
□ Какие пароли вводились с заражённого устройства?
□ Были ли авторизованы критические сервисы (банк, рабочий VPN)?
□ Сохранены ли пароли в браузере? (предположить — да, скомпрометированы)
Распространение:
□ Подключалось ли заражённое устройство к корпоративной сети?
□ Использовались ли USB-накопители? (RAT может заражать их)
□ Есть ли другие устройства в той же сети?
11.2 Уведомление при корпоративном инциденте
Если заражение произошло на рабочем устройстве или корпоративной сети — немедленное уведомление обязательно:
text
Кого уведомить:
→ Служба информационной безопасности / SOC организации
→ Руководитель / непосредственный начальник
→ При наличии ПДн — Роскомнадзор (обязательно по 152-ФЗ в течение 24 часов)
→ При инциденте с критической инфраструктурой — НКЦКИ (nccci.ru)
Что фиксировать в отчёте:
→ Дата и время обнаружения
→ Предположительный вектор заражения
→ Список задействованных систем
→ Список скомпрометированных учётных данных
→ Принятые меры реагирования
11.3 Логи Windows: поиск следов активности RAT
powershell
<h2 id="podozritelnye-sobytiya-vhoda-4624-uspeshnyy-vhod-4625-neudacha">Подозрительные события входа (4624 — успешный вход, 4625 — неудача)</h2>
Get-WinEvent -FilterHashtable @{
LogName = 'Security'
Id = 4624, 4625
StartTime = (Get-Date).AddDays(-30)
} | Where-Object {
$_.Properties[8].Value -eq 10 # LogonType 10 = Remote Interactive
} | Select-Object TimeCreated,
@{n='User'; e={$_.Properties[5].Value}},
@{n='IP'; e={$_.Properties[18].Value}} |
Format-Table
<h2 id="zapusk-powershell-komand-event-id-4104-script-block-logging">Запуск PowerShell-команд (Event ID 4104 — Script Block Logging)</h2>
Get-WinEvent -FilterHashtable @{
LogName = 'Microsoft-Windows-PowerShell/Operational'
Id = 4104
} | Select-Object TimeCreated, Message | Format-List
12. Защита на будущее: как не допустить повторного заражения
12.1 Обязательные меры защиты (минимальный набор)
email
и браузер (основные векторы):
✅ Никогда не открывать вложения .ZIP, .ISO, .LNK из писем без проверки
✅ Проверять каждое вложение на virustotal.com перед открытием
✅ Не переходить по ссылкам из писем — вводить адрес вручную
✅ Включить фильтрацию вложений в почтовом клиенте
Windows-настройки:
✅ Автоматические обновления Windows: Включить, не откладывать
✅ Windows Defender: убедиться, что активен и обновлён
✅ Показывать расширения файлов:
Проводник → Вид → Показать → Расширения имён файлов
(Файл с именем "Invoice.pdf.exe" виден как "Invoice.pdf" без этой настройки)
✅ Включить SmartScreen: Безопасность Windows → Управление приложением
Учётные данные:
✅ Уникальный пароль для каждого сервиса (менеджер паролей: Bitwarden, KeePass)
✅ 2FA на всех важных аккаунтах (TOTP-приложение, не SMS)
✅ Не сохранять пароли в браузере для банков и email
12.2 Ограничение PowerShell и скриптов
Большинство современных RAT-загрузчиков используют PowerShell. Ограничение его возможностей резко снижает поверхность атаки:
powershell
<h2 id="vklyuchit-script-block-logging-vse-powershell-skripty-budut-logirovatsya">Включить Script Block Logging — все PowerShell-скрипты будут логироваться</h2>
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging" `
-Name "EnableScriptBlockLogging" -Value 1 -Type DWord -Force
<h2 id="vklyuchit-module-logging">Включить Module Logging</h2>
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ModuleLogging" `
-Name "EnableModuleLogging" -Value 1 -Type DWord -Force
<h2 id="ustanovit-ogranichennyy-rezhim-vypolneniya">Установить ограниченный режим выполнения</h2>
Set-ExecutionPolicy -ExecutionPolicy Constrained -Scope LocalMachine
<h2 id="otklyuchit-vypolnenie-skriptov-vbs-js-wsf-cherez-wscript-cscript-dlya-nepromyshlennyh-pk">Отключить выполнение скриптов .vbs, .js, .wsf через wscript/cscript (для непромышленных ПК)</h2>
<h2 id="cherez-gpedit-msc-computer-configuration-windows-settings-software-restriction-policies">Через gpedit.msc: Computer Configuration → Windows Settings → Software Restriction Policies</h2>12.3 AppLocker / WDAC: контроль разрешённых приложений
powershell
<h2 id="vklyuchit-applocker-windows-pro-enterprise-education">Включить AppLocker (Windows Pro/Enterprise/Education)</h2>
<h2 id="zapretit-zapusk-exe-iz-appdata-temp-downloads">Запретить запуск .exe из AppData, Temp, Downloads</h2>
<h2 id="primer-pravila-cherez-powershell">Пример правила через PowerShell:</h2>
$rule = New-AppLockerPolicy -RuleType Path -Allow -User Everyone `
-Path "%PROGRAMFILES%\*" -RuleNamePrefix "Allow_ProgramFiles"
<h2 id="wdac-windows-defender-application-control-bolee-nadyozhnaya-alternativa-applocker">WDAC (Windows Defender Application Control) — более надёжная альтернатива AppLocker</h2>
<h2 id="nastroyka-cherez-microsoft-intune-ili-gpo">Настройка через Microsoft Intune или GPO</h2>12.4 Sysmon + мониторинг: проактивная защита
text
Уровни мониторинга (от простого к сложному):
Уровень 1 (домашний):
✅ Установить Sysmon с базовой конфигурацией (raздел 9.4)
✅ Периодически просматривать Autoruns на изменения
✅ Раз в неделю: netstat -ano | findstr ESTABLISHED
Уровень 2 (малый бизнес):
✅ Централизованный сбор Windows Event Logs (Elastic SIEM или Graylog)
✅ Алерты на: новые Run-ключи, новые Scheduled Tasks, PowerShell 4104
✅ DNS-фильтрация (Pi-hole или Cloudflare Gateway)
Уровень 3 (корпоративный):
✅ EDR-решение (Microsoft Defender for Endpoint, CrowdStrike Falcon, SentinelOne)
✅ Network Detection and Response (NDR) для поведенческого анализа трафика
✅ Email Security Gateway с sandbox-анализом вложений
✅ SIEM с правилами на TTPs RAT по MITRE ATT&CK
13. Корпоративный сценарий: обнаружение RAT в сети организации
13.1 Первые признаки компрометации в корпоративной сети
В отличие от домашнего пользователя, корпоративный защитник видит картину с нескольких уровней одновременно:
text
Сетевой уровень (NGFW, NDR):
→ Исходящие соединения к нестандартным портам (6606, 7707, 7000, 4782)
→ Регулярные beacon-соединения (каждые 5–30 сек, маленький пакет)
→ Несколько хостов соединяются с одним и тем же внешним IP
→ DNS-запросы к молодым доменам (регистрация < 30 дней)
→ Трафик через TryCloudflare (*.trycloudflare.com) с рабочих станций
Endpoint (EDR):
→ Process Hollowing: system32\notepad.exe устанавливает TCP-соединение
→ Reflective DLL Injection в aspnet_compiler.exe
→ Создание Scheduled Task через schtasks.exe или PowerShell
→ Powershell.exe с аргументами -EncodedCommand
→ Отключение Defender через Set-MpPreference -DisableRealtimeMonitoring $true
Аутентификация (SIEM):
→ Laterale movement: учётная запись логинится на нескольких хостах за короткое время
→ Pass-the-Hash / Pass-the-Ticket в Kerberos-событиях
→ Создание новых локальных администраторов (Event ID 4720 + 4732)
13.2 Sigma-правила для SIEM
Sigma — стандарт описания детектирующих правил для SIEM:
yaml
<h2 id="sigma-pravilo-obnaruzhenie-asyncrat-scheduled-task-persistentnosti">Sigma-правило: обнаружение AsyncRAT Scheduled Task персистентности</h2>
title: AsyncRAT Scheduled Task Persistence
id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
status: experimental
description: Обнаружение создания скрытой задачи планировщика из AppData
author: Community
date: 2025/06
references:
- https://lumu.io/blog/asyncrat-2026-analysis-evolution-defense/
logsource:
product: windows
category: process_creation
detection:
selection:
Image|endswith:
- '\schtasks.exe'
CommandLine|contains|all:
- '/Create'
- 'AppData'
filter_legitimate:
CommandLine|contains:
- 'Microsoft\Windows\WindowsUpdate'
- 'MicrosoftEdgeUpdate'
condition: selection and not filter_legitimate
falsepositives:
- Легитимное ПО, устанавливающее задачи из AppData
level: high
tags:
- attack.persistence
- attack.t1053.005 # Scheduled Task/Job: Scheduled Task
---
<h2 id="sigma-pravilo-obnaruzhenie-c2-trafika-asyncrat">Sigma-правило: обнаружение C2-трафика AsyncRAT</h2>
title: AsyncRAT C2 Communication Pattern
id: b2c3d4e5-f6a7-8901-bcde-f12345678901
logsource:
product: windows
category: network_connection
detection:
selection:
DestinationPort:
- 6606
- 7707
- 8808
Initiated: 'true'
filter_common:
Image|contains:
- '\system32\'
- '\syswow64\'
condition: selection and not filter_common
level: high
tags:
- attack.command_and_control
- attack.t1095 # Non-Application Layer Protocol
13.3 MITRE ATT&CK: TTPs современных RAT-кампаний
asyncrat
/ XWorm / Remcos — актуальные TTPs 2025–2026:
Initial Access:
T1566.001 Phishing: Spearphishing Attachment
T1566.002 Phishing: Spearphishing Link (Dropbox/OneDrive lure)
T1189 Drive-by Compromise (ClickFix)
Execution:
T1059.001 PowerShell
T1059.005 Visual Basic (VBScript)
T1218.005 Signed Binary Proxy: Mshta
T1204.001 User Execution: Malicious Link
Defense Evasion:
T1055.012 Process Injection: Process Hollowing
T1055.001 Process Injection: Dynamic-link Library Injection
T1562.001 Impair Defenses: Disable or Modify Tools (Defender)
T1027.013 Obfuscated Files: Encrypted/Encoded File
Persistence:
T1053.005 Scheduled Task/Job: Scheduled Task
T1547.001 Boot or Logon Autostart: Registry Run Keys
C2:
T1571 Non-Standard Port
T1132.001 Data Encoding: Standard Encoding
T1572 Protocol Tunneling (TryCloudflare)
Exfiltration:
T1041 Exfiltration Over C2 Channel
T1020 Automated Exfiltration
14. FAQ: 12 горячих вопросов о троянах удалённого доступа
Q 01 Антивирус ничего не нашёл — значит, RAT нет?
A Нет. Кампания AsyncRAT через TryCloudflare, задокументированная в 2025 году, обходила все установленные на атакованных системах EPP и EDR-инструменты. Современные RAT используют fileless-техники, инжекцию в легитимные процессы и обход AMSI/ETW. Антивирус — один из слоёв защиты, но не гарантия. Если симптомы присутствуют — проводите анализ по всем фазам вне зависимости от результатов антивируса.
Q 02 Можно ли заразиться RAT, просто открыв PDF?
A Да, при наличии уязвимости в PDF-ридере или через встроенные скрипты. Более частый сценарий 2025 года: PDF открывается как приманка, пока в фоне через .URL-файл загружается многоступенчатая цепочка заражения. Используйте актуальную версию Adobe Reader или откройте PDF в браузере вместо локального ридера.
Q 03 RAT удалён — нужно ли менять все пароли?
A Обязательно. Предположите, что ВСЕ пароли, введённые с момента заражения, известны злоумышленнику. Кейлоггинг — стандартная функция любого commodity RAT. Начинайте с email и онлайн-банкинга, затем остальное. Смену паролей производите с заведомо чистого устройства — не с той же машины, с которой удаляли RAT.
Q 04 Если RAT был установлен давно — стоит ли переустанавливать Windows?
A При длительном заражении (недели и более) — переустановка предпочтительнее ручной очистки. Продвинутый злоумышленник мог установить дополнительные бэкдоры, изменить системные файлы или внедрить руткит, который не обнаруживается стандартными методами. Переустановка с форматированием диска — единственный способ гарантировать чистое состояние.
Q 05 Может ли RAT заразить смартфон, если он был подключён к заражённому ПК?
A Теоретически возможно через USB (если на телефоне включена отладка ADB), но это нетипично для commodity RAT вроде AsyncRAT или XWorm. Тем не менее: если телефон был подключён в период заражения — проверьте его антивирусом и смените пароли от привязанных аккаунтов превентивно.
Q 06 Что такое fileless RAT и почему он опаснее обычного?
A Fileless RAT не записывает основную вредоносную нагрузку на диск — вместо этого код инжектируется напрямую в память легитимного процесса (notepad.exe, aspnet_compiler.exe). Сигнатурный антивирус проверяет файлы на диске и ничего не видит. Обнаружение возможно только через поведенческий анализ (Process Hacker: подозрительные регионы памяти RWX) или EDR с мониторингом инжекций.
Q 07 Какой порт использует RAT — можно ли его заблокировать на роутере?
A Можно, но недостаточно. Актуальные RAT поддерживают настраиваемые порты. AsyncRAT по умолчанию 6606/7707/8808, но злоумышленник легко переконфигурирует его на 443 (HTTPS) или 80 (HTTP). Блокировка нестандартных портов снижает риск, но не устраняет его. Эффективнее — DNS-фильтрация и репутационная фильтрация по IP.
Q 08 Я нашёл RAT на рабочем ноутбуке. Что делать первым делом?
A 1) Немедленно изолировать от корпоративной сети (физически отключить Ethernet, выключить Wi-Fi). 2) Уведомить IT/ИБ-отдел до любых других действий — они должны оценить масштаб компрометации сети. 3) Не удалять улики самостоятельно — корпоративный инцидент требует форензического расследования. 4) Не подключать заражённый ноутбук к домашней сети.
Q 09 Могу ли я сам отследить, откуда пришёл RAT?
A Частично. Анализ артефактов (дата создания файлов, первое появление в логах, браузерная история скачиваний) поможет определить примерный вектор заражения. Полное расследование с атрибуцией требует форензики и баз threat intelligence. Для самостоятельного анализа: проверьте папку Downloads и историю браузера за день предполагаемого заражения, входящие письма с вложениями, историю установки ПО в журнале событий (Event ID 11707).
Q 10 Нужен ли VPN для защиты от RAT?
A VPN не защищает от RAT. VPN шифрует ваш трафик к интернету, но RAT уже находится на вашем устройстве — он отправляет данные изнутри VPN-туннеля. VPN полезен для других целей (приватность, защита на публичном Wi-Fi), но не является средством защиты от трояна.
Q 11 Что такое ClickFix и как от него защититься?
A ClickFix — техника социальной инженерии 2024–2025 годов: жертве показывается фейковая CAPTCHA, страница «проверки браузера» или «ошибка копирования текста». Сайт просит нажать Win+R и вставить команду из буфера обмена. Команда загружает и запускает малварь. Защита: никогда не вставлять код из браузера в строку «Выполнить» или PowerShell, неважно насколько убедительным выглядит запрос.
Q 12 Как проверить, не установлен ли RAT на ПК прямо сейчас за 5 минут?
A Экспресс-проверка: 1) Запустить netstat -ano | findstr ESTABLISHED от Администратора, проверить внешние IP на abuseipdb.com. 2) Открыть Autoruns от Администратора, включить VirusTotal-проверку, поискать красные строки. 3) Открыть Process Hacker — найти процессы с фиолетовым или розовым цветом и нестандартным путём. 4) Проверить задачи планировщика: Get-ScheduledTask | Where-Object {$_.Actions.Execute -match 'AppData|Temp'}. Вся проверка занимает 10–15 минут.
15. Чек-лист: экспресс-проверка системы на RAT за 20 минут
Фаза 0: Подготовка (2 мин)
- ☐ Скачать и распаковать: Autoruns, Process Hacker, TCPView (Sysinternals Suite)
- ☐ Запустить все инструменты от имени Администратора
- ☐ Отключить от интернета физически (если есть подозрения на активный RAT)
Фаза 1: Сетевые соединения (3 мин)
- ☐ `netstat -ano | findstr ESTABLISHED` — нет подозрительных внешних IP
- ☐ Открыть TCPView — нет соединений с нестандартными портами (6606, 7707, 8808, 7000, 4782)
- ☐ Проверить топ-3 подозрительных IP на abuseipdb.com
Фаза 2: Процессы (4 мин)
- ☐ Process Hacker: нет фиолетовых (packed) процессов с системными именами из AppData
- ☐ Нет процессов типа notepad.exe, msbuild.exe с активными сетевыми соединениями
- ☐ Проверить цифровую подпись всех подозрительных процессов
Фаза 3: Автозапуск (5 мин)
- ☐ Autoruns → Options → Scan VirusTotal.com → подождать результатов
- ☐ Options → Hide Microsoft and Windows entries → осмотреть оставшееся
- ☐ Вкладка Scheduled Tasks: нет задач с путями в AppData/Temp
- ☐ Вкладка Logon: нет незнакомых Run-ключей с путями вне Program Files/System32
Фаза 4: Реестр и файлы (4 мин)
- ☐ `HKCU\...\CurrentVersion\Run` — проверить каждую запись
- ☐ `Get-ChildItem $env:APPDATA -Filter *.exe -Recurse` — нет .exe в Roaming
- ☐ `Get-ChildItem $env:TEMP -Filter *.exe` — нет .exe во Temp
Фаза 5: Итог и действия (2 мин)
- ☐ Если подозрений нет — включить интернет, обновить Windows и антивирус
- ☐ Если найдено подозрительное — перейти к полному анализу по Фазам 1–5 из статьи
- ☐ Сохранить скриншоты всего подозрительного как доказательства
- ☐ При сомнениях — загрузиться с Kaspersky Rescue Disk для независимой проверки
16. Заключение и теги
Трояны удалённого доступа в 2026 году — это не «вирусы из 2000-х». Это профессиональные инструменты с шифрованием, fileless-исполнением, обходом EDR и автоматическим масштабированием на тысячи жертв. AsyncRAT занимает третье место в мировом рейтинге малвари, XWorm вырос в 4,3 раза за год, и ни один из них не требует от атакующего глубоких технических знаний — они распространяются как commodity-инструменты на теневых форумах.
Хорошая новость: поведенческие паттерны RAT предсказуемы. C2-beacon, инжекция в легитимный процесс, Run-ключ или Scheduled Task, кейлоггинг — это видно, если знать, куда смотреть. Именно это даёт Autoruns, Process Hacker и netstat в руках внимательного аналитика.
1. Действуйте быстро при первых симптомах — каждая минута активного RAT означает перехваченные нажатия клавиш и возможную эксфильтрацию данных
2. Изолируйте, не выключайте — RAM содержит артефакты, которые исчезнут при выключении
3. Проверяйте все слои — сеть, процессы, автозапуск, реестр, файловую систему
4. После удаления смените все пароли с чистого устройства — это не опциональный шаг
5. Установите Sysmon и настройте базовый мониторинг — обнаружить следующую инфекцию на порядок проще при наличии логов
6. При малейших сомнениях в полноте очистки — переустанавливайте Windows
> 🔒 Лучшая защита от RAT — это слои: обновлённый Windows Defender, Sysmon с логированием, недоверие к вложениям и осведомлённость о ClickFix. Ни один из этих слоёв по отдельности не гарантирует защиту. Все вместе — делают атаку значительно дороже для злоумышленника.