Преглед на приватноста

Оваа веб-страница користи колачиња за да ви обезбеди најдобро можно корисничко искуство. Информациите за колачињата се складираат во вашиот прелистувач и извршуваат функции како препознавање кога се враќате на нашата веб-страница и им помагаат на нашите програмери да разберат кои делови од веб-страницата ви се најинтересни и најкорисни.

Строго неопходни колачиња

Строго неопходните колачиња треба да бидат овозможени во секое време за да можеме да ги зачуваме вашите поставки за колачиња.

Новиот ENCFORGE ransomware ги таргетира датотеките со AI модели преку RCE напад врз Langflow

Истражувачите открија нов напад со ENCFORGE ransomware насочен кон AI инфраструктура

Истражувачите од Sysdig го поврзаа вториот напад врз истиот Langflow сервер со JADEPUFFER, оператор управуван со AI агенти, кој компанијата го документираше претходно овој месец.

Во најновата кампања, истиот оператор користи ENCFORGE, нов ransomware напишан на програмскиот јазик Go, дизајниран за шифрирање на тежините на AI моделите (model weights), векторските индекси, датасетите за тренирање и други датотеки поврзани со AI инфраструктурата низ целиот систем.

Истата ранливост како влезна точка

Начинот на компромитирање останува непроменет. Верзиите на Langflow пред 1.3.0 го изложуваат endpoint-от /api/v1/validate/code без автентикација, што им овозможува на далечински напаѓачи да извршат произволен Python код на серверот.

Ранливоста, означена како CVE-2025-3248, има CVSS оцена од 9.8 и од 5 мај 2025 година се наоѓа во каталогот Known Exploited Vulnerabilities (KEV) на CISA.

Како што претходно објави The Hacker News, претходната кампања користела едноставни Python скрипти и функцијата AES_ENCRYPT() во MySQL за шифрирање и уништување на податоци во Nacos (конфигурацискиот сервер на Alibaba) и продукциски бази на податоци.

Новиот ENCFORGE го заменува тој импровизиран пристап со компајлиран ransomware специјално насочен кон складиштата со AI модели, векторските бази на податоци и системите за тренирање.

Анализа на ENCFORGE

Истражувачите ја презеле извршната датотека од командно-контролниот (C2) сервер на напаѓачите, каде што била скриена под името /.lockd. Директен пристап до /lockd враќа грешка 404, а почетната точка во името ја крие датотеката од стандардните листи на директориуми.

Станува збор за статички компајлирана ELF датотека напишана во Go 1.22.12, компресирана со UPX 5.20.

Во моментот на анализата од Sysdig, ниту една платформа за разузнавање за закани не ја препознала ниту компресираната, ниту декомпресираната верзија на примерокот.

Внатрешното име на проектот е encfile, додека пораките за грешки упатуваат на придружна алатка наречена keyforge. Овие ознаки остануваат присутни и по повторно компајлирање на кодот, што ги прави корисни за детекција.

Насочен кон AI датотеки

Стандардната листа на екстензии што ги таргетира ENCFORGE вклучува:

  • PyTorch и TensorFlow checkpoint датотеки;
  • Hugging Face SafeTensors;
  • ONNX модели;
  • GGUF (актуелен стандард за локално извршување на големи јазични модели – LLM);
  • GGML (постар формат);
  • FAISS векторски индекси;
  • Parquet и Apache Arrow датасети;
  • NumPy низи;
  • TensorFlow Records.

Со параметарот –include, операторот може да додаде и дополнителни типови датотеки. Во самата документација како примери се наведени LoRA адаптери за фино прилагодување на модели и постарите GGML тежини.

Вкупната листа опфаќа околу 180 различни екстензии, што според истражувачите укажува дека малициозниот софтвер е намерно развиен за напади врз AI инфраструктура, а не претставува обичен ransomware со општа намена.

Како функционира шифрирањето

ENCFORGE користи AES-256-CTR за шифрирање на податоците, при што симетричниот клуч за секоја сесија се шифрира со вграден RSA-2048 јавен клуч.

Наместо да ги шифрира целосно датотеките, ransomware-от шифрира само одредени делови од нив, техника што значително ја забрзува работата и која веќе се користи кај познати семејства како LockBit и BlackCat.

По обработката:

  • сите шифрирани датотеки добиваат наставка .locked;
  • се прекинуваат процесите што ги држат датотеките отворени;
  • се избегнува повторно шифрирање при рестартирање на системот;
  • се оставаат пораки за откуп со имиња README, HOW_TO_DECRYPT и README_DECRYPT;
  • ransomware-от се самобрише по завршување на нападот.

ENCFORGE не краде податоци – единствената цел е шифрирање

Анализираниот примерок на ENCFORGE не содржи функционалности за ексфилтрација на податоци. Во него нема мрежен код, клиент за cloud складишта или механизам за пренос на украдени информации. Истражувачите, исто така, не пронашле докази за кражба на податоци, веб-страница за објавување на украдени информации или Tor портал за плаќање откуп. Единствениот механизам за изнуда е шифрирањето на податоците.

Контактот наведен во пораките за откуп е e78393397@proton.me, истата Proton Mail адреса што била користена и во претходната кампања. Според Sysdig, ова е најсилниот доказ што ги поврзува двата напада.

Истражувачите објавија детали само за еден документиран инцидент, без да го откријат идентитетот на жртвата или да наведат дали ENCFORGE бил употребен и против други организации.

Од Langflow до целиот хост

Откако потврдил дека може да извршува код на серверот, операторот JADEPUFFER започнал да пребарува за акредитиви во контејнерот и го пронашол Docker сокетот на локацијата /var/run/docker.sock.

Првиот обид да го преземе ENCFORGE од командно-контролниот сервер хостиран на Google Cloud Platform (GCP) бил неуспешен. Наместо да се откаже, напаѓачот ја променил стратегијата.

Во период од 5 минути и 24 секунди, преку истата RCE ранливост во Langflow биле креирани и модифицирани шест Python скрипти сè додека не бил пронајден успешен начин за компромитирање на целиот хост.

Првата скрипта била составувана ред по ред, така што ниту едно поединечно барање не изгледало доволно сомнително за системите за детекција базирани на потписи.

Од втората верзија па натаму, целиот Python код бил кодиран во Base64, а потоа декодиран директно преку функцијата exec(), со што биле избегнати детекции кои бараат команди како base64 -d во shell.

Пробивање од контејнер до хост

Конечната скрипта го искористила Docker API за да стартува привилегиран контејнер со:

  • Privileged: true
  • PidMode: host
  • NetworkMode: host
  • root датотечниот систем монтиран со права за читање и запишување.

Со ова напаѓачот практично добил целосен пристап до оперативниот систем на хостот.

Потоа скриптата:

  1. го пронашла целниот процес;
  2. го копирала ENCFORGE преку патеката /proc/<pid>/root;
  3. го стартувала ransomware-от директно на хостот со алатката nsenter.

Подготовка пред шифрирањето

Пред вистинското шифрирање, операторот ја стартувал опцијата –try-run, која служела за анализа на датотечниот систем и проверка на целите.

Потоа бил активиран параметарот –lock, со кој започнало реалното шифрирање.

Последната Python скрипта:

  • проверувала дали процесот е успешно извршен;
  • го читала логот од шифрирањето;
  • го броела бројот на датотеки што добиле наставка .locked.

Sysdig не објави колку датотеки биле успешно шифрирани, па достапните докази потврдуваат само дека нападот бил извршен, но не и неговите конечни последици.

Дел од поширока кампања

Истражувачите сметаат дека параметарот –task-id gcp_h1 покажува дека напаѓачот го означувал овој сервер како GCP цел во рамки на поширока кампања. Во претходната фаза од истиот напад бил користен идентификаторот gcp_test.

Во извештајот нема информации за други жртви или дополнителни инциденти.

Sysdig потсетува дека во претходната JADEPUFFER кампања операторот успеал да коригира неуспешна најава на Nacos за само 31 секунда. И во овој случај се забележува истата способност за брзо приспособување: кога директното преземање на ransomware-от не успеало, напаѓачот изградил нов пат до хостот преку изложениот Docker сокет.

Препораки за заштита

Според проценките на Sysdig, повторното создавање на еден продукциски AI модел по успешен ransomware напад може да чини помеѓу 75.000 и 500.000 американски долари, земајќи ги предвид трошоците за cloud GPU ресурси и инженерска работа.

Бидејќи многу организации чуваат повеќе варијанти на модели на исто складиште, еден напад може истовремено да шифрира повеќе модели, векторски индекси и датасети. Доколку и податоците за тренирање се на истиот систем, тие мора најпрво да бидат обновени пред повторно да започне процесот на тренирање.

Препорачани мерки

Истражувачите препорачуваат организациите да:

  • надградат Langflow најмалку на верзија 1.9.1 или понова поддржана верзија;
  • ротираат сите AI API клучеви, cloud акредитиви, лозинки за бази на податоци и останати тајни до кои можел да пристапи компромитираниот Langflow процес;
  • го отстранат /var/run/docker.sock од сите контејнери каде што не е неопходен, а доколку мора да се користи, пристапот да биде строго ограничен преку прокси;
  • воспостават алармирање при креирање Docker контејнери со Privileged: true, PidMode: host, монтирање на root датотечниот систем или извршување на nsenter од контејнер;
  • чуваат резервни копии на AI моделите, векторските индекси и датасетите во офлајн или непроменливи (immutable) снимки и да следат за масовно создавање датотеки со наставката .locked.

Во својот извештај, Sysdig ги објави SHA-256 хешовите на примерокот, адресите на командно-контролниот сервер, отпечатокот (fingerprint) на вградениот RSA-2048 јавен клуч и YARA правило за детекција.

Истражувачите заклучуваат дека AI моделите, нивните тежини, векторските индекси и состојбата на тренирањето треба да се третираат како критични средства, со ист приоритет за резервни копии и обновување како изворниот код и продукциските бази на податоци. Организација што може да ја обнови апликацијата, но не и AI моделите и податоците за нивно тренирање, практично нема целосен пат за закрепнување по ваков напад.

Извори:

  • The Hacker News – New ENCFORGE Ransomware Targets AI Model Files in Langflow RCE Attack The Hacker News