SOC Prime Bias: Critical

27 Oct 2026 13:41 UTC

42 зброєні репозиторії GitHub виявляють прихованого видавця npm

Author Photo
SOC Prime Team linkedin icon Стежити
42 зброєні репозиторії GitHub виявляють прихованого видавця npm
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

Складна кампанія, відома як testmetest використовує шкідливі пакети npm і зламані репозиторії GitHub для крадіжки облікових даних і автоматизації випуску зловмисних пакетів. Зловмисники покладаються на поліморфні обгортки, нативні додатки Node.js та зашифровані навантаження для уникнення виявлення. Кампанія також включає інфраструктуру для сканування та використання вразливостей cPanel.

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

Дослідники JFrog Security виявили 42 озброєні репозиторії GitHub разом із декількома зловмисними пакетами npm. Вони з’ясували, що зловмисники використовують метод камуфляжу з нативними додатками, в якому скомпільований .node файл розшифровує приховане навантаження під час виконання. Розслідування також пов’язало активність з shellpanel сканерами, що націлені на системи cPanel через CVE-2026-41940.

Запобіжні заходи

Користувачі повинні видалити виявлені шкідливі пакети npm та відновити уражені системи з довірених джерел. Організації повинні змінити всі потенційно скомпрометовані облікові дані, включаючи GitHub, npm і токени хмари. Також важливо перевірити репозиторії на наявність несанкціонованих конфігураційних файлів, таких як .github/init.js та несподіваних виконуваних гачків у package.json файлах або Makefiles.

Відповідь

Коли виявлена шкідлива активність, відкасуйте викриті секрети та негайно змініть облікові дані. Пошукайте механізми збереження, такі як net-health-checker or pkg-runtime. Перегляньте журнали GitHub Actions на наявність несанкціонованих робочих процесів та контролюйте системи на предмет розшифрованих навантажень, записаних у тимчасові каталоги.

Хід атаки

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

Виявлення

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

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

Підозрілі дочірні процеси NodeJS [Windows] (через cmdline)

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

Ймовірне завантаження файлів з GitHub, ініційоване незвичайним процесом (через network_connection)

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

Використання Nohup (через cmdline)

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

Підозрілі дочірні процеси NodeJS [Linux] (через cmdline)

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

Підозрілі виконані chmod, які вказують на підозрілі каталоги (через cmdline)

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

Завантаження у підозрілі каталоги (через cmdline)

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

IOC (HashSha256) для виявлення: За межами testmetest: Камуфляж нативного додатку та 42 озброєні GitHub репозиторії відкривають прихованого видавця npm

Правила AI від SOC Prime
26 жовтня 2026

IOC (SourceIP) для виявлення: За межами testmetest: Камуфляж нативного додатку та 42 озброєні GitHub репозиторії відкривають прихованого видавця npm

Правила AI від SOC Prime
26 жовтня 2026

IOC (DestinationIP) для виявлення: За межами testmetest: Камуфляж нативного додатку та 42 озброєні GitHub репозиторії відкривають прихованого видавця npm

Правила AI від SOC Prime
26 жовтня 2026

Перевірка присутності відлагоджувача через IsDebuggerPresent або CheckRemoteDebuggerPresent [Журнал безпеки Windows]

Правила AI від SOC Prime
26 жовтня 2026

Підозріла активація процесу та виконання тимчасового JS файлу [Створення процесу Windows]

Правила AI від SOC Prime
26 жовтня 2026

Виявлення виконання нативного додатку Node.js [Завантаження зображень Windows]

Правила AI від SOC Prime
26 жовтня 2026

Виявлено виконання зловмисних процесів Node Addon [Створення процесу Linux]

Правила AI від SOC Prime
26 жовтня 2026

Підозрілі зчитування пам’яті нативного додатку [Google Cloud Platform]

Правила AI від SOC Prime
26 жовтня 2026

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

  • Опис атаки та команди: Супротивник успішно доставив шкідливе навантаження JavaScript в тимчасову директорію користувача, назвавши його .nc щоб, можливо, імітувати файл, пов’язаний з Netcat, чи просто приховати його призначення. Для виконання цього зловмисник використовує завантажувач, який викликає CreateProcessA Win32 API для запуску Windows Script Host (wscript.exe) з тимчасовим файлом як аргументом. Цей специфічний порядок — використання ANSI версії API створення процесу для запуску скрипту з %TEMP%— це точний зразок, який призначено для виявлення правилом детекції.

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

     # Скрипт симуляції: Виклик 'Підозріле створення процесу та виконання тимчасового JS файлу'
    
      # 1. Визначте шляхи
      $tempPath = $env:TEMP
      $targetFile = Join-Path $tempPath ".nc"
    
      # 2. Створіть фіктивний зловмисний JS файл у директорії %TEMP%
      # Примітка: Ми називаємо його .nc згідно з потребою логіки виявлення
      "WScript.Echo('Симулюється зловмисна діяльність');" | Out-File -FilePath $targetFile -Encoding ascii
    
      Write-Host "[+] Зловмисний файл створено за адресою: $targetFile"
    
      # 3. Симулюйте виконання за допомогою wscript.exe
      # У реальному сценарії 'CallTrace', що містить 'CreateProcessA', генерується
      # під час виклику відповідного API Windows, який використовується завантажувачем шкідливого ПО.
      # Запуск цього за допомогою PowerShell/CMD згенерує подію створення процесу.
      Write-Host "[+] Виконання скрипту для виклику детекції..."
      Start-Process "wscript.exe" -ArgumentList "`"$targetFile`""
    
      Write-Host "[+] Команда симуляції відправлена."
  • Команди очищення:

     # Скрипт прибирання: Видаліть артефакти симуляції
      $tempPath = $env:TEMP
      $targetFile = Join-Path $tempPath ".nc"
    
      if (Test-Path $targetFile) {
          Remove-Item -Path $targetFile -Force
          Write-Host "[+] Прибирання успішне: $targetFile видалено."
      } else {
          Write-Host "[!] Прибирання не вдалося: Файл не знайдено."
      }