Профіль APT Imperial Kitten: TTP, Зловмисне ПЗ та Симуляція Атак
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Imperial Kitten – це державне угруповання APT, яке спонсорується Іраном та пов’язане з Корпусом стражів Ісламської революції (КСІР), яке відоме своїми атаками на аерокосмічні та оборонні організації. Група покладається на високоцільові фішингові кампанії та портали з перевіреними обліковими даними для доставки замовного шкідливого ПЗ. Їхній набір інструментів включає декілька бекдорів, таких як TWOSTROKE та MINIBIKE, і часто використовує інфраструктуру Microsoft Azure для зв’язку C2.
Розслідування
Звіт відслідковує розвиток Imperial Kitten з 2017 по 2026 рік, підкреслюючи його перехід від операцій у ланцюзі постачання до вишуканих мережевих обманів у соціальних мережах та орієнтованих фішингових порталів. Аналіз також розглядає техніки замаскування в стилі LLVM та методи завантаження DLL для підтримки прихованості та ускладнення виявлення.
Пом’якшення
Організації повинні посилити безпеку електронної пошти для визначення подібних доменів та перевірки законних процесів аутентифікації. Захист кінцевих точок повинен бути посилений проти завантаження DLL, а несанкціоновані зміни реєстру в ключах запуску слід ретельно контролювати. Обмеження вихідного трафіку до затверджених хмарних сервісів також може знизити ризик комунікації C2 через інфраструктуру Azure.
Відповідь
Коли виявляється активність Imperial Kitten, ізолюйте скомпрометовані хости, щоб запобігти горизонтальному просуванню через тунелі RDP або SSH. Проведіть судово-медичний аналіз %LOCALAPPDATA% для підозрілих DLL та перевірте ключі реєстру щодо механізмів стійкості. Проаналізуйте мережевий трафік, пов’язаний з Azure, на незвичайні патерни, пов’язані з виявленими доменами C2 та засобами.
Хід атаки
Детекції
Можливі точки стійкості [ASEPs – Software/NTUSER Hive] (через registry_event)
Підозріла SSH переадресація портів [Windows] (через cmdline)
Можливе перерахування або маніпуляція обліковими записами чи групами (через cmdline)
Спроба видалення артів актових даних RDP з реєстру (через cmdline)
Можливе використання тунельного інструменту [Windows] (через cmdline)
Альтернативне віддалене управління/програмне забезпечення (через process_creation)
Можлива спроба завантаження Dxgi (через image_load)
Можлива спроба підвантаження VGAuth.dll (через image_load)
Підозрілі файли в профілі публічного користувача (через file_event)
Можливий контакт з доменом Azurewebsites рідкісним процесом (через dns_query)
IOC (SourceIP) для виявлення: Imperial Kitten (Tortoiseshell) APT: TTP, шкідливе ПЗ та моделювання атак
IOC (DestinationIP) для виявлення: Imperial Kitten (Tortoiseshell) APT: TTP, шкідливе ПЗ та моделювання атак
Модифікації реєстру для стійкості та прихованості Imperial Kitten [Подія реєстру Windows]
Виявлення C2 сервера Imperial Kitten в інфраструктурі Azure [Журнали активності Azure]
Виконання моделювання
-
Сценарій атаки та команди: Зловмисник успішно отримав початковий доступ. Щоб забезпечити свою присутність у системі після перезавантаження, він розгортає завантажувач, який додає запис “MigAutoPlay” в ключ Run поточного користувача у реєстрі. Це імітує профіль шкідливого ПЗ Imperial Kitten. Після встановлення постійності зловмисник виконує горизонтальний рух через RDP. Щоб уникнути виявлення та приховати свої сліди від судово-медичних слідчих, він негайно видаляє ключі реєстру, що зберігають історію нещодавно підключених серверів RDP.
-
Сценарій регресивного тестування:
# --- ЧАСТИНА 1: Моделювання стійкості --- Write-Host "[+] Моделювання стійкості через MigAutoPlay..." $PersistencePath = "HKCU:SoftwareMicrosoftWindowsCurrentVersionRun" New-ItemProperty -Path $PersistencePath -Name "MigAutoPlay" -Value "C:UsersPublicloader.dll" -PropertyType String -Force # --- ЧАСТИНА 2: Знешкодження антіфорензіки (Очищення RDP) --- Write-Host "[+] Моделювання очищення історії RDP..." $RDPPath1 = "HKCU:SoftwareMicrosoftTerminal Server ClientDefault" $RDPPath2 = "HKCU:SoftwareMicrosoftTerminal Server ClientServers" # Видалення ключів для моделювання очищення if (Test-Path $RDPPath1) { Remove-Item -Path $RDPPath1 -Recurse -Force } if (Test-Path $RDPPath2) { Remove-Item -Path $RDPPath2 -Recurse -Force } Write-Host "[!] Моделювання завершено." -
Команди очищення:
# Очищення ключа стійкості, створеного під час моделювання Remove-ItemProperty -Path "HKCU:SoftwareMicrosoftWindowsCurrentVersionRun" -Name "MigAutoPlay" -ErrorAction SilentlyContinue # Примітка: Ключі RDP управляються системою; ми не можемо легко відновити 'видалену' історію # через скрипт, але за потреби ми можемо відновити пусті структури. New-Item -Path "HKCU:SoftwareMicrosoftTerminal Server ClientDefault" -Force | Out-Null New-Item -Path "HKCU:SoftwareMicrosoftTerminal Server ClientServers" -Force | Out-Null