Нове зловмисне програмне забезпечення Kimsuky LNK, що використовує багатоканальну C2 інфраструктуру
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Група Kimsuky розгортає нову кампанію шкідливого ПЗ на базі LNK, маскуючи її під внутрішні фінансові документи. Операція спирається на багатоканальну архітектуру командування та контролю (C2), яка розділяє такі функції, як доставка команд, повідомлення про інфекцію та ексфільтрація даних через довірені сервіси, включаючи GitHub, WordPress і Dropbox. Цей модульний дизайн допомагає зловмисникам ухилятися від традиційних мережевих захистів, використовуючи легітимну інфраструктуру та інструменти LOLBins.
Розслідування
Розслідування виявило багатоступеневий ланцюг виконання, що починається зі зловмисного файлу LNK, запущеного через conhost.exe. Атака використовує certutil.exe для декодування і завантаження корисних навантажень і використовує NirCmd для прихованого виконання. Супротивник також застосовує техніку Dead Drop через GitHub для розповсюдження команд та використовує MachineGuid значення для унікальної ідентифікації жертв та цільової доставки завдань.
Пом’якшення
Користувачі повинні вимкнути налаштування Windows Explorer, яке приховує розширення для відомих типів файлів, щоб такі замасковані файли LNK можна було легше ідентифікувати. Організації повинні контролювати підозріле використання LOLBins, таких як certutil.exe and taskhostw.exe і застосовувати суворі обмеження на неавторизовані заплановані завдання. Необхідно також контролювати аномальний вихідний трафік до довірених сервісів, таких як GitHub або Dropbox, на предмет незвичайних комунікаційних шаблонів.
Відповідь
Якщо виявлена злочинна діяльність, уражений хост слід негайно ізолювати, щоб зупинити подальшу ексфільтрацію даних або латеральний рух. Реагуючі мають ідентифікувати систему MachineGuid та дослідити відповідні репозиторії GitHub, що використовуються в кампанії. Заплановані завдання та ключі реєстрації слід перевірити на предмет наявності шкідливого ПО, тоді як несанкціоновані зворотні тунелі, встановлені через Node.js, SSH або подібні інструменти, також мусять бути досліджені.
Атакуючий потік
Ми ще оновлюємо цю частину.
Виявлення
Можливе перерахування системи (через командний рядок)
Можливе завантаження файлів GitHub, ініційоване незвичайним процесом (через мережеве з’єднання)
Можливе виявлення конфігурації мережі системи (через командний рядок)
LOLBAS Conhost (через командний рядок)
Вірогідне копіювання та перейменування виконуваних файлів системи для ухилення (через командний рядок)
Можливе впровадження/винесення даних/команды C2 через сервіси/інструменти третіх сторін (через проксі)
Можливе впровадження/винесення даних/команды C2 через сервіси/інструменти третіх сторін (через DNS)
IOCs (HashMd5) для виявлення: Нове LNK шкідливе ПЗ Kimsuky, яке використовує багатоканальну C2 інфраструктуру
Командування та контроль шкідливого ПЗ LNK Kimsuky за допомогою хмарних сервісів [Мережеве з’єднання Windows]
Виявлення шкідливого ПЗ Kimsuky LNK та налаштування файлу конфігурації [Подія файлу Windows]
Виявлення шкідливого ПЗ Kimsuky LNK з використанням технік LOLBin [Створення процесу Windows]
Виконання симуляції
-
Розповідь про атаку та команди: Зловмисник надіслав зловмисний
.lnkфайл через фішинговий імейл. Коли користувач натискає на посилання, це виконує приховану командну оболонку. Мета зловмисника полягає у декодуванні прихованого корисного навантаження, збереженого у начебто невинному файлі. Щоб досягти цього, залишаючись непоміченим, зловмисник використовуєconhost.exe --headlessдля забезпечення відсутності спливаючого вікна, а потім викликаєcertutil.exe -decodeдля перетворення закодованого Base64 файлу у виконуваний файл. Цей процес є характерною ознакою групи Kimsuky, що використовує доставку на базі LNK. -
Сценарій регресійного тестування:
# Симуляція TTP шкідливого ПЗ LNK Kimsuky # Цей сценарій створює манекений закодований файл а потім використовує специфічну комбінацію # для запуску правила виявлення. $dummyFile = "$env:TEMPencoded_payload.txt" $decodedFile = "$env:TEMPmalicious.exe" $base64Content = "SGVsbG8gV29ybGQh" # "Hello World!" в Base64 # 1. Створити "закодований" файл $base64Content | Out-File -FilePath $dummyFile -Encoding ascii # 2. Вивести правило виявлення: # Нам потрібні 'conhost.exe --headless' І ('certutil.exe -decode' АБО 'taskhostw.exe exec hide') # і батьком не може бути 'dbg.exe'. Write-Host "[+] Симуляція послідовності виконання LNK Kimsuky..." # Використовуючи Start-Process для симуляції того, як LNK файл викликатиме командний рядок # Примітка: Ми симулюємо поведінку conhost через пряму командну аргументацію Start-Process "conhost.exe" -ArgumentList "--headless", "cmd.exe", "/c", "certutil.exe -decode", "$dummyFile", "$decodedFile" -WindowStyle Hidden Write-Host "[+] Симуляційна команда відправлена. Перевір SIEM для виявлення." -
Команди очищення:
# Очищайте симуляційні артефакти Remove-Item -Path "$env:TEMPencoded_payload.txt" -ErrorAction SilentlyContinue Remove-Item -Path "$env:TEMPmalicious.exe" -ErrorAction SilentlyContinue Write-Host "[+] Очищення завершено."