SOC Prime Bias: High

15 Sep 2026 14:50 UTC

E4del та PINHOLE зловживають банерами FTP для прихованого C2

Author Photo
SOC Prime Team linkedin icon Стежити
E4del та PINHOLE зловживають банерами FTP для прихованого C2
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

Зловмисники зловживають привітальними банерами серверів FTP в якості мертвих точок для доставки E4del і PINHOLE malware. Використовуючи фазу автентифікації протоколу FTP, атакуючі можуть передавати команди безпосередньо в інтерпретатор на боці жертви без передачі традиційних файлів. Ця техніка забезпечує приховані ланцюги інфекцій, що не використовують файли, які можуть уникнути багатьох файлових заходів безпеки.

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

Розслідування розглядало три варіанти доставки: подавання виходу FTP в командні інтерпретатори, використання WebDAV через HTTP для виконання другого етапу та опора на завантаження на основі BITS. Дослідники виявили кластер хостів FTP, що діяли як перенаправлювачі та вузли доставки корисного навантаження. Аналіз E4del і PINHOLE також виявив техніки, такі як імітація на базі Electron, флуктуація машинного коду та прямі системні виклики, розроблені для обходу API хукінгу.

Захист

Захисникам слід приділяти увагу поведінковому виявленню замість покладання на хеші файлів, зокрема моніторити вихідні з’єднання TCP/21 із подальшим негайним виконанням командного інтерпретатора. Суворий контроль над conhost.exe, bitsadmin.exe, а також шляхами UNC на базі WebDAV може зменшити вплив. Команди безпеки також повинні моніторити підозрілі дочірні процеси, запущені ApplicationFrameHost.exe.

Відповідь

Якщо цю активність виявлено, уражені кінцеві точки слід ізолювати негайно, щоб запобігти додатковому виконанню команд або ексфільтрації даних. Реагуючі повинні провести форензіку пам’яті для ідентифікації ін’єкційного коду, особливо в законних процесах, таких як ApplicationFrameHost.exe. Журнали блоків скриптів PowerShell також мають бути переглянуті для відновлення команд, отриманих через мертву точку FTP, і визначення масштабів компрометації.

Потік Атаки

Ми все ще оновлюємо цю частину.

Виявлення

LOLBAS WScript / CScript (через process_creation)

Команда SOC Prime
15 вересня 2026

Ймовірні точки стійкості [ASEP – Software/NTUSER Hive] (через registry_event)

Команда SOC Prime
15 вересня 2026

Завантаження або завантаження через Powershell (через cmdline)

Команда SOC Prime
14 вересня 2026

LOLBAS Conhost (через cmdline)

Команда SOC Prime
14 вересня 2026

Архів було розпаковано в підозрілу директорію за допомогою Powershell (через powershell)

Команда SOC Prime
14 вересня 2026

IOC (SourceIP) для виявлення: Мертві точки банера FTP: польовий посібник мисливця до E4del і PINHOLE

Правила SOC Prime AI
14 вересня 2026

IOC (DestinationIP) для виявлення: Мертві точки банера FTP: польовий посібник мисливця до E4del і PINHOLE

Правила SOC Prime AI
14 вересня 2026

Підозріле використання FTP та PowerShell з Conhost [створення процесу у Windows]

Правила SOC Prime AI
14 вересня 2026

Виявити мертву точку банера FTP для віддалених троянів доступу E4del і PINHOLE [мережеве з’єднання у Windows]

Правила SOC Prime AI
14 вересня 2026

Виконання моделювання

  • Наратив атаки та команди: Супротивник має на меті отримати команду через “мертву точку” FTP. Замість завантаження файлу, супротивник ініціює з’єднання з керованим FTP-сервером. Коли інтерпретатор (PowerShell) підключається, він читає банер сервера, в якому міститься закодована команда наступного етапу. Це уникає сигнатури “завантаження файлу” і покладається на саме рукостискання протоколу для доставки тригера. Ми використаємо PowerShell для спроби підключення до слухача на порту 21.

  • Сценарій тестування регресії:

    # Моделювання: PowerShell намагається підключитися до служби FTP на порту 21
    # Імітує поведінку 'мертвої точки' E4del/PINHOLE
    
    $TargetIP = "127.0.0.1" # В реальному тесті вказати на керованого слухача
    $TargetPort = 21
    
    Write-Host "[+] Початок моделювання: підключення до мертвої точки банера FTP..." -ForegroundColor Cyan
    
    try {
        # Використовуємо System.Net.Sockets для виклику події мережевого з'єднання через PowerShell
        $client = New-Object System.Net.Sockets.TcpClient
        $client.Connect($TargetIP, $TargetPort)
        Write-Host "[!] Успіх: з'єднання встановлено. Теле-метрика має бути згенерована." -ForegroundColor Green
        $client.Close()
    }
    catch {
        Write-Host "[-] З'єднання не вдалося (очікується, якщо слухач не активний), але теле-метрика має існувати." -ForegroundColor Yellow
    }
  • Команди для очищення:

    # Очищення: переконатися, що не залишилося залишкових з'єднань або процесів
    Stop-Process -Name "powershell" -ErrorAction SilentlyContinue
    Write-Host "[+] Очищення завершено." -ForegroundColor Green