SOC Prime Bias: Висока

29 May 2026 07:16 UTC

Відстеження ланцюга атак Akira Ransomware через журнали периметра й кінцевих точок

Author Photo
SOC Prime Team linkedin icon Стежити
Відстеження ланцюга атак Akira Ransomware через журнали периметра й кінцевих точок
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

У статті описується недавнє проникнення, пов’язане з операцією програм-вимагачів Akira. Нападники отримали початковий доступ, виконуючи грубу силу на відключений локальний обліковий запис SSL VPN, потім перейшли до виявлення облікових даних, Kerberoasting і горизонтального переміщення по RDP. Перед запуском шифрування вони очищали журнали та видаляли тіньові копії. Важливо, що вся послідовність була видима через syslog дані брандмауера і Windows EVTX журнали без покладення на інструменти виявлення на кінцевих точках. Звіт підкреслює, як поєднання телеметрії периметру та кінцевих точок може виявити діяльність програм-вимагачів на ранніх стадіях.

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

Розслідування ґрунтувалося виключно на журналах SSL VPN брандмауера та експорті подій Windows, зібраних з контролерів домену та членських серверів. Було корельовано ідентифікатори подій, включаючи 4624, 4688, 4769, 1102, та 7036 для реконструкції повного ланцюга вбивства від початкового доступу до кінцевого впливу. Спостережені техніки включали підпорядкування облікових даних, виявлення домену, Kerberoasting, автентифікацію RDP, очищення журналів та видалення тіньових копій. Жодних образів памʼяті або телеметрії EDR не було потрібно для відображення проникнення.

Мітігація

Звіт рекомендує посилити безпеку віддаленого доступу, впровадити MFA, видалити відключені облікові записи з списків доступу брандмауера та посилити політики блокування автентифікації. Також радиться увімкнути детальний аудит процесу з ідентифікатором події 4688 по всіх системах, збільшити зберігання журналів безпеки та перенаправляти критичні журнали на зовнішнє сховище. Контент виявлення повинен спеціально охоплювати квитки Kerberos на базі RC4, vssadmin видалення тіньових копій та несподівані команди PowerShell, використовуючи -EncodedCommand. Постійна синхронізація часу по інфраструктурі також є необхідною для надійної кореляції.

Реакція

Коли з’являються будь-які з ідентифікованих індикаторів, відповідачі повинні негайно ізолювати скомпрометований обліковий запис VPN і карантинувати уражені системи. Відповідні журнали брандмауера і EVTX слід зберегти, змінити облікові дані, відключити скомпрометовані облікові записи і відновити тіньові копії з чистих резервних копій, якщо такі є. Потім слід виконати повний судово-експертний аналіз, щоб виявити будь-яку додаткову стійкість або подальшу діяльність, одночасно активуючи процедури реагування на програмне забезпечення рансомваре. Залучені сторони повинні бути негайно проінформовані, а публічне розкриття слід розглянути, якщо це необхідно.

"graph TB %% Визначення класів classDef phase fill:#ffcc99 classDef tool fill:#c2f0c2 %% Визначення вузлів phase_initial_access["<b>Фаза</b> – Початковий доступ<br/><b>Техніка</b> – T1133 Зовнішні віддалені служби<br/><b>Опис</b>: Підпорядкування облікових даних проти SSL VPN з використанням скомпрометованого локального облікового запису."] class phase_initial_access phase tech_valid_accounts["<b>Техніка</b> – T1078 Дійсні облікові записи<br/><b>Опис</b>: Використання вкрадених облікових даних для входу в VPN."] class tech_valid_accounts phase phase_discovery["<b>Фаза</b> – Виявлення<br/><b>Техніка</b> – T1482 Виявлення довірчих відносин домену<br/><b>Опис</b>: Перегляд довірчих відносин домену за допомогою nltest."] class phase_discovery phase tech_account_discovery["<b>Техніка</b> – T1087 Виявлення облікових записів<br/><b>Опис</b>: Перегляд груп і користувачів за допомогою net.exe і whoami."] class tech_account_discovery phase phase_credential_access["<b>Фаза</b> – Доступ до облікових даних<br/><b>Техніка</b> – T1558.003 Kerberoasting<br/><b>Опис</b>: Запит квитків сервісу RC4 для злому паролів сервісних облікових записів."] class phase_credential_access phase phase_lateral_movement["<b>Фаза</b> – Горизонтальний рух<br/><b>Техніка</b> – T1021.001 Віддалені служби по протоколу віддаленого робочого столу<br/><b>Опис</b>: Використовуйте RDP для горизонтального переміщення на сервери та контролери домену."] class phase_lateral_movement phase phase_persistence["<b>Фаза</b> – Збереження та Ескалація прав<br/><b>Техніка</b> – T1136 Створення облікового запису<br/><b>Опис</b>: Створення нового сервісного облікового запису в неназваній OU та додавання до привілейованих груп."] class phase_persistence phase phase_execution["<b>Фаза</b> – Виконання<br/><b>Техніка</b> – T1059.001 PowerShell<br/><b>Опис</b>: Виконайте скрипти PowerShell з -EncodedCommand.<br/><b>Техніка</b> – T1059.003 Windows Command Shell<br/><b>Опис</b>: Використання cmd.exe для різних команд."] class phase_execution phase phase_defense_evasion["<b>Фаза</b> – Обхід захисту<br/><b>Техніка</b> – T1070.001 Очищення журналів подій Windows<br/><b>Опис</b>: Очищення журналів подій Windows.<br/><b>Техніка</b> – T1562 Ослаблення захисту<br/><b>Опис</b>: Зупинка служб безпеки з використанням sc.exe або net stop."] class phase_defense_evasion phase phase_impact["<b>Фаза</b> – Вплив<br/><b>Техніка</b> – T1490 Інгібіція відновлення системи<br/><b>Опис</b>: Видалення тіньових копій за допомогою vssadmin.<br/><b>Техніка</b> – T1565.001 Зміна збережених даних<br/><b>Опис</b>: Шифрування файлів на диску."] class phase_impact phase tool_ssl_vpn["<b>Інструмент</b> – SSL VPN клієнт"] class tool_ssl_vpn tool tool_nltest["<b>Інструмент</b> – nltest утиліта"] class tool_nltest tool tool_net["<b>Інструмент</b> – net.exe утиліта"] class tool_net tool tool_whoami["<b>Інструмент</b> – whoami команда"] class tool_whoami tool tool_powershell["<b>Інструмент</b> – PowerShell"] class tool_powershell tool tool_cmd["<b>Інструмент</b> – cmd.exe"] class tool_cmd tool tool_sc["<b>Інструмент</b> – sc.exe команда"] class tool_sc tool tool_vssadmin["<b>Інструмент</b> – vssadmin утиліта"] class tool_vssadmin tool %% З’єднання, що показують потік phase_initial_access –>|призводить до| tech_valid_accounts tech_valid_accounts –>|призводить до| phase_discovery phase_discovery –>|призводить до| tech_account_discovery tech_account_discovery –>|призводить до| phase_credential_access phase_credential_access –>|призводить до| phase_lateral_movement phase_lateral_movement –>|призводить до| phase_persistence phase_persistence –>|призводить до| phase_execution phase_execution –>|призводить до| phase_defense_evasion phase_defense_evasion –>|призводить до| phase_impact %% Використання інструментів phase_initial_access –>|використовує| tool_ssl_vpn phase_discovery –>|використовує| tool_nltest phase_discovery –>|використовує| tool_net phase_discovery –>|використовує| tool_whoami phase_execution –>|використовує| tool_powershell phase_execution –>|використовує| tool_cmd phase_defense_evasion –>|використовує| tool_sc phase_impact –>|використовує| tool_vssadmin "

Flow атаки

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

Передумова: тест попереднього запуску Телеметрії та Базового аналізу має пройти.

Обґрунтування: у цьому розділі детально описується точне виконання техніки атакуючого (TTP), призначене для запуску правила виявлення. Команди і наративи ПОВИННІ точно відображати ідентифіковані ТТП і мають на меті генерувати саме ту телеметрію, яку очікує логіка виявлення.

  • Атака: Наратив та Команди:

    1. Розвідка (T1087): Зловмисник перелічує імена користувачів зі скомпрометованої внутрішньої системи та створює список підпорядкування облікових даних (наприклад, users.txt).
    2. Цикл грубої сили (T1021.001 / T1078.001): Використовуючи скомпрометований зовнішній діапазон IP, що належить відомому постачальнику хостингу (наприклад, 203.0.113.45), зловмисник запускає швидку серію невдалих спроб автентифікації SSLVPN (≥ 50) протягом однієї години. Кожна спроба використовує інший пароль зі списку, цільова на один обліковий запис жертви.
    3. Успішне підпорядкування облікових даних: Після вичерпання списку знаходиться правильний пароль; зловмисник успішно входить з того ж IP, задовольняючи умовам “successful_auth”.
    4. Обхід (Необовʼязково – T1070.001): Зловмисник очищає Журнал безпеки на VPN-пристрої після успішного входу, щоб приховати сліди (не охоплюється цим правилом).
  • Скрипт тесту регресії: Скрипт Bash з використанням curl (працює на Linux box зловмисника). Змінюйте змінні для реального середовища.

    #!/usr/bin/env bash
    # ------------------------------------------------------------------
    # Симуляція атаки методом грубої сили / підпорядкування облікових даних для запуску правила Sigma
    # ------------------------------------------------------------------
    
    VPN_ENDPOINT="https://vpn.example.com/remote/auth"
    USERNAME="victim_user"
    PASSWORD_LIST="passwords.txt"   # один пароль на лінію
    SOURCE_IP="203.0.113.45"        # має бути маршрутизованим для VPN
    
    # Функція для виконання однієї спроби входу
    attempt_login() {
        local pwd="$1"
        # Використовуємо --silent, щоб уникнути безпорядку; --write-out для захоплення HTTP коду
        curl --silent --output /dev/null --write-out "%{http_code}" 
            --user "$USERNAME:$pwd" 
            "$VPN_ENDPOINT"
    }
    
    # 1. Створити 55 невдалих спроб (швидкість ~1/сек)
    echo "Запуск невдалих спроб..."
    count=0
    while IFS= read -r pwd && [ $count -lt 55 ]; do
        http_code=$(attempt_login "$pwd")
        echo "Спроба $((count+1)): HTTP $http_code (очікувано 401)"
        ((count++))
        sleep 1   # зберігати в межах 1-годинного вікна
    done < "$PASSWORD_LIST"
    
    # 2. Успішний вхід з правильним паролем (припускаємо, що остання лінія у файлі)
    echo "Виконуємо успішний вхід..."
    correct_pwd=$(tail -n1 "$PASSWORD_LIST")
    http_code=$(attempt_login "$correct_pwd")
    echo "Успішна спроба: HTTP $http_code (очікується 200)"
    
    echo "Симуляція завершена."
  • Команди очищення: Видаліть усі тимчасові файли і скиньте обмеження швидкості брандмауера (якщо змінено).

    #!/usr/bin/env bash
    # Очищення після симуляції атаки методом грубої сили SSLVPN
    
    # Видаліть тимчасовий список паролів, якщо він був створений на он-лайн
    if [ -f passwords.txt ]; then
        shred -u passwords.txt
        echo "Видалено passwords.txt"
    fi
    
    # При необхідності скидайте всі тимчасові правила iptables, використані для тестування
    sudo iptables -D INPUT -s 203.0.113.45 -j DROP 2>/dev/null || true
    echo "Очищення завершено."