SharpViewStateKing та анатомія прихованої структури імплантату
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Канадський центр кібербезпеки ідентифікував SharpViewStateKing як модульну платформу імплантації, розроблену для таємного націлювання на середовища ASP.NET. Зловживаючи скомпрометованими параметрами ViewState, ця платформа виконує плагіни повністю в пам’яті, що дозволяє їй працювати ефективно безстанно і уникати традиційного виявлення на основі файлів. Її зашифрований HTTP та HTTPS трафік додатково допомагає діяльності зливатися з легітимними веб-комунікаціями.
Розслідування
Розслідування розпочалося після того, як аналітики виявили веб-шелл на сервері Microsoft IIS з публічним доступом. Дослідження телеметрії кінцевих точок і пам’яті процесів показало, що імплантат використовував динамічно згенеровані C# плагіни для виконання дій, таких як завантаження файлів, віддалене виконання команд і розвідка хостів. Дослідники покладалися на платформу Assemblyline для декомпіляції байткоду C# і розкриття внутрішньої логіки платформи.
Пом’якшення
Захисникам слід перебудувати будь-які потенційно уражені хости та замінити ключі шифрування та валідації, пов’язані з застосунками ASP.NET. Патчування відповідних вразливостей, включаючи ті, що впливають на SharePoint, зазначені в звіті, також є критичним. Моніторинг дочірніх процесів, запущених на IIS w3wp.exe процеси працівників можуть допомогти виявити неавторизовану діяльність, пов’язану з імплантатом.
Відповідь
Якщо виявлено активність SharpViewStateKing, організації повинні переглянути телеметрію EDR і NDR на ознаки бокового переміщення, зокрема створення нових облікових записів або розгортання таких інструментів, як SoftEther VPN. Всі паролі та облікові дані, пов’язані з компрометованою системою, слід вважати компрометованими та негайно змінити. Команди безпеки також повинні підтвердити, чи не були змінені виключення Microsoft Defender без дозволу.
Схема атаки
Виявлення
Можлива віддалена активність Impacket SecretDump (через zeek)
Перегляд
Можлива експлуатація веб-сервера або веб-додатку [Windows] (через cmdline)
Перегляд
Підозріла зміна виключень Defender через WMIC (через cmdline)
Перегляд
Можлива активність Impacket SecretDump (через аудит)
Перегляд
Виявлення віддаленого виконання та плагінів стирання слідів [Windows Sysmon]
Перегляд
Виявлення аномалій HTTP-запитів SharpViewStateKing [Веб-сервер]
Перегляд
Виявлення прихованого виконання команд через приховані вікна [Створення процесів Windows]
Перегляд
Виконання симуляції
Передумова: Перевірка телеметрії та бази даних повинна пройти.
Пояснення: Цей розділ детально описує точне виконання техніки супротивника (TTP), розробленої для запуску правила виявлення. Команди та наратив МАЮТЬ безпосередньо відображати TTP, і цілити на створення саме такої телеметрії, як очікується логікою виявлення. Абстрактні або не пов’язані приклади призведуть до помилкової діагностики.
-
Наратив атаки та команди: Супротивник ідентифікував вразливий додаток ASP.NET та планує розгорнути платформу SharpViewStateKing для збереження постійності та перехоплення даних сеансів. Для цього нападник відправляє ряд HTTP-запитів, які використовують
__VIEWSTATEand__SCROLLPATHпараметри для доставки експлоїтного навантаження. Використовуючи ці конкретні параметри, нападник намагається злитися зі стандартним трафіком ASP.NET, сподіваючись уникнути виявлення на основі підписів, яке шукає лише традиційні шляхи веб-шелл. -
Скрипт регресійного тестування:
# Скрипт симуляції для запуску правила виявлення SharpViewStateKing $targetUri = "http://localhost/Login.aspx" # Навантаження 1: Тестування виявлення параметра __VIEWSTATE Write-Host "[*] Симуляція спроби експлоїту з __VIEWSTATE..." $payload1 = "__VIEWSTATE=MZ................[Simulated_Malicious_Payload]" Invoke-WebRequest -Uri "$targetUri?$payload1" -Method Get # Навантаження 2: Тестування виявлення параметра __SCROLLPATH Write-Host "[*] Симуляція спроби експлоїту з __SCROLLPATH..." $payload2 = "__SCROLLPATH=/etc/passwd" Invoke-WebRequest -Uri "$targetUri?$payload2" -Method Get Write-Host "[+] Симуляція завершена. Перевірте SIEM на наявність тривог." -
Команди очищення:
# Специфічне очищення не потрібно, оскільки це безсанційні HTTP GET запити. # Однак, якщо які-небудь файли були створені під час реальної атаки, їх варто видалити. Write-Host "[*] Очищення симуляції: стійкі артефакти не створені."