SOC Prime Bias: Критичний

13 May 2026 22:13

Виявлено шкідливе ПЗ у популярному репозиторії Hugging Face

Author Photo
Ruslan Mikhalov Керівник досліджень загроз у SOC Prime linkedin icon Стежити
Виявлено шкідливе ПЗ у популярному репозиторії Hugging Face
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

Дослідники HiddenLayer виявили шкідливий код, розміщений у репозиторії Hugging Face Open-OSS/privacy-filter, який імітує легітимний проект OpenAI. Репозиторій містив скрипт loader.py, що завантажував команду PowerShell з jsonkeeper.com, яка завантажувала бат-файл другого етапу та інфостілер на основі Rust. Вантаж викрадає облікові дані, дані браузера, файли гаманців криптовалюти та знімки екрану, після чого самознищується після виконання одноразового запланованого завдання.

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

Аналіз виявив шість етапів від початкової приманки до фінального інфостілера Rust, включаючи приховане виконання PowerShell, завантажувач, що отримує update.bat з api.eth-fastscan.org, і бат-файл, який створює тимчасовий сценарій запуску та тимчасове заплановане завдання. Була спостережена мережева активність з доменом К2 recargapopular.com та спорідненим доменом welovechinatown.info. Було виявлено кілька репозиторіїв Hugging Face під користувачем anthfu, які повторно використовують один і той же завантажувач та URL К2.

Пом’якшення

Заблокуйте перелічені зловмисні домени та URL на контурі мережі та відключіть виконання непідписаних скриптів PowerShell на кінцевих точках. Видаліть всі файли, завантажені з компрометованих репозиторіїв, та скасуйте будь-які облікові дані, які могли бути зібрані. Впровадьте суворий моніторинг створення підозрілих запланованих завдань та аномальних рядків команд PowerShell.

Відповідь

Ізолюйте будь-який хост, що виконав loader або start.bat, вважайте його повністю скомпрометованим і відновіть систему. Ротуйте всі збережені паролі, cookies сесій, токени OAuth та облікові дані гаманець криптовалюти. Полюйте за історичними підключеннями до шкідливих доменів та на наявність вказаних шляхів файлів і імен запланованих завдань.

"графік TB %% Визначення класів classDef action fill:#99ccff classDef tool fill:#cccccc classDef file fill:#ffcc99 classDef process fill:#ff9966 classDef malware fill:#ff6666 classDef credential fill:#ccffcc classDef exfil fill:#c0c0c0 classDef operator fill:#ff9900 %% Визначення вузлів malicious_repo["<b>Ресурс</b> – <b>Репозиторій Hugging Face</b><br/>Містить шкідливі start.bat та loader.py"] class malicious_repo file action_user_execution_link["<b>Дія</b> – <b>T1204.001 Виконання користувачем: Зловмисне посилання</b><br/>Жертва натискає посилання на шкідливий репозиторій"] class action_user_execution_link action file_start_bat["<b>Файл</b> – start.bat<br/>Batch скрипт, викликаний жертвою"] class file_start_bat file file_loader_py["<b>Файл</b> – loader.py<br/>Завантажувач Python, що перевіряє контрольну суму і відключає перевірку SSL"] class file_loader_py file action_user_execution_file["<b>Дія</b> – <b>T1204.002 Виконання користувачем: Зловмисний файл</b><br/>Жертва запускає loader.py"] class action_user_execution_file action action_proxy_execution["<b>Дія</b> – <b>T1127 Проксі-виконання Довірених Утиліт Розробника</b><br/>loader.py запускає PowerShell з обходом і прихованим вікном"] class action_proxy_execution action process_powershell["<b>Процес</b> – PowerShell<br/>Виконує віддалений командний рядок"] class process_powershell process action_taint_shared_content["<b>Дія</b> – <b>T1080 Порча спільного контенту</b><br/>PowerShell oneu2011liner завантажує update.bat з api.ethu2011fastscan.org"] class action_taint_shared_content action file_update_bat["<b>Файл</b> – update.bat<br/>Batch скрипт, що додає виключення Defender і створює заплановане завдання"] class file_update_bat file action_hide_artifacts["<b>Дія</b> – <b>T1564.012 Приховування артефактів: Виключення файлів/шляхів</b><br/>Додає виключення Microsoft Defender для файлів корисного навантаження"] class action_hide_artifacts action action_hijack_execution["<b>Дія</b> – <b>T1574 Викрадення потоку виконання</b><br/>Створює одноу2011разове заплановане завдання MicrosoftEdgeUpdateTaskCore для запуску навантаження від імені SYSTEM"] class action_hijack_execution action process_scheduled_task["<b>Процес</b> – Заплановане завдання<br/>Запускає Rust навантаження з привілеями SYSTEM"] class process_scheduled_task process malware_rust_payload["<b>Шкідливе ПЗ</b> – Rust Навантаження<br/>Виконує перевірки протиу2011аналізу і відключає AMSI/ETW"] class malware_rust_payload malware action_credential_collection["<b>Дія</b> – <b>T1555 Облікові дані з магазинів паролів</b><br/>Інфостілер видобуває облікові дані Chromium, Firefox, Discord та гаманець"] class action_credential_collection credential action_credential_files["<b>Дія</b> – <b>T1552.001 Незахищені облікові дані: Облікові дані у файлах</b><br/>Збирає SSH, FTP, VPN і файли seed від гаманця"] class action_credential_files credential action_os_credential_dump["<b>Дія</b> – <b>T1003 Дамп облікових даних ОС</b><br/>Отримує зашифровані ключі браузера"] class action_os_credential_dump credential action_screen_capture["<b>Дія</b> – <b>T1113 Захоплення екрану</b><br/>Знімає знімки екрану з декількох моніторів"] class action_screen_capture malware action_data_encoding["<b>Дія</b> – <b>T1132 Кодексування даних</b><br/>Упаковує дані у gzip стиснутий JSON"] class action_data_encoding malware action_exfiltration["<b>Дія</b> – <b>T1567.002 Виведення даних через веб-сервіс</b><br/>Публікує закодовані дані через HTTPS на recargapopular.com"] class action_exfiltration exfil %% З’єднання malicious_repo –>|містить| file_start_bat malicious_repo –>|містить| file_loader_py action_user_execution_link –>|веде до| file_start_bat action_user_execution_link –>|веде до| file_loader_py file_start_bat –>|виконано| action_user_execution_file file_loader_py –>|виконано| action_user_execution_file action_user_execution_file –>|спрацьовує| action_proxy_execution action_proxy_execution –>|запускає| process_powershell process_powershell –>|завантажує| file_update_bat file_update_bat –>|виконує| action_hide_artifacts action_hide_artifacts –>|створює| action_hijack_execution action_hijack_execution –>|розгортає| process_scheduled_task process_scheduled_task –>|виконує| malware_rust_payload malware_rust_payload –>|виконує| action_credential_collection malware_rust_payload –>|виконує| action_credential_files malware_rust_payload –>|виконує| action_os_credential_dump malware_rust_payload –>|виконує| action_screen_capture malware_rust_payload –>|кодує| action_data_encoding action_data_encoding –>|виводить| action_exfiltration "

Потік атаки

Імітація виконання

Передумова: Перевірка телеметрії та базових даних повинна бути пройдена.

Обґрунтування: Цей розділ детально описує точне виконання техніки противника (TTP) для спрацьовування правила виявлення. Команди та опис повинні безпосередньо відображати виявлені TTP і спрямовані на створення очікуваної телеметрії, передбаченої логікою виявлення. Абстрактні чи непов’язані приклади приведуть до неправильної діагностики.

  • Опис атаки та команди:
    Атакуючий отримав плацдарм на робочій станції Windows і бажає виконати зловмисне навантаження з підвищеними правами, залишаючись невидимим для користувача. Вони:

    1. Створюють однолінійний скрипт PowerShell, що запускає приховану оболонку CMD (/k) і негайно підвищують її, використовуючи Start-Process -Verb RunAs.
    2. Виконують цей однолінійний скрипт з існуючої сесії PowerShell, переконуючись, що дерево процесів містить як прихований екземпляр PowerShell and екземпляр CMD, запущений з /k.
    3. Підвищений CMD потім можна використати для завантаження та виконання фінального навантаження.
  • Скрипт регресійного тестування:

    # ---------------------------------------------------------
    # Симульований скрипт противника – Прихований PowerShell + RunAs CMD
    # ---------------------------------------------------------
    $maliciousCmd = "cmd.exe /k echo Атакуючий підвищив права && ping -n 5 127.0.0.1"
    $psCommand   = "-ExecutionPolicy Bypass -WindowStyle Hidden -Command `"Start-Process -FilePath 'powershell.exe' -ArgumentList `"$maliciousCmd`" -Verb RunAs`""
    # Запуск прихованого PowerShell, який в свою чергу запускає підвищений CMD
    Start-Process -FilePath "powershell.exe" -ArgumentList $psCommand -WindowStyle Hidden
  • Команди очищення:

    # Завершіть будь-які тривалі процеси підвищеного CMD, викликані тестом
    Get-Process -Name "cmd" -ErrorAction SilentlyContinue | Where-Object {
        $_.StartInfo.Arguments -match "/k echo Атакуючий підвищив права"
    } | Stop-Process -Force
    
    # За бажанням видаліть тимчасові файли, якщо вони були створені (жодного в цьому простому демонстраційному прикладі)