Onderzoekers van Sysdig hebben een nieuwe ransomwarecampagne geïdentificeerd waarbij ENCFORGE wordt ingezet, een ransomware geschreven in Go die specifiek AI-modelbestanden versleutelt. Deze aanval volgt op een eerdere campagne door dezelfde bedreigingsactor, JADEPUFFER, die eerder deze maand werd gedocumenteerd. De aanvallers maken gebruik van een bekende kwetsbaarheid in Langflow-versies vóór 1.3.0, waarbij het /api/v1/validate/code endpoint zonder authenticatie toegang geeft tot het uitvoeren van willekeurige Python-code op de server.

Deze kwetsbaarheid, geregistreerd als CVE-2025-3248, heeft een hoge ernstscore van 9.8 volgens CVSS en staat sinds mei 2025 vermeld in het Known Exploited Vulnerabilities catalog van CISA. Eerder gebruikten de aanvallers geïmproviseerde Python-scripts en MySQL’s AES_ENCRYPT() functie om data te versleutelen en te vernietigen in onder andere Alibaba’s Nacos configuratieserver en productiedatabases. De nieuwe ENCFORGE payload vervangt deze scripts door een gecompileerd programma dat zich richt op het versleutelen van modelgewichten, vectorindexen, trainingsdatasets en andere AI-infrastructuurbestanden op het systeem.

De ENCFORGE ransomware is verpakt als een UPX 5.20-gecomprimeerd statisch Go ELF-bestand en werd aangetroffen onder de naam /.lockd, waarbij de bestandsnaam met een punt ervoor voorkomt dat het zichtbaar is in een standaard directory listing. Het programma versleutelt niet hele bestanden, maar geselecteerde delen, wat een optimalisatie is die ook door andere ransomwarefamilies zoals LockBit wordt toegepast. Bestanden krijgen de extensie .locked en processen die deze bestanden open hebben worden eerst beëindigd. Na voltooiing plaatst de ransomware losgeldnotities met instructies en verwijdert zichzelf van het systeem.

De ransomware richt zich specifiek op AI-gerelateerde bestandsformaten zoals PyTorch en TensorFlow checkpoints, Hugging Face SafeTensors, ONNX, GGUF en GGML, FAISS vectorindexen, Parquet en Arrow datasets, NumPy arrays en TensorFlow records. Dit wijst op een doelgerichte aanval op AI-omgevingen in plaats van een generieke bestandsversleuteling. De symmetrische AES-256-CTR sleutel wordt versleuteld met een ingebouwde RSA-2048 publieke sleutel. Er is geen netwerkfunctionaliteit aanwezig in de malware, wat betekent dat er geen datalek of communicatie met een command-and-control server plaatsvindt tijdens de encryptie. De contactmail voor afpersing is dezelfde Proton Mail-adres als bij de eerdere campagne, wat de koppeling tussen de aanvallen versterkt.

De aanvallers gebruiken de kwetsbaarheid om eerst toegang te krijgen tot de container en vervolgens credentials te verzamelen, waaronder toegang tot de Docker socket op /var/run/docker.sock, waarmee zij verdere controle over het host-systeem kunnen verkrijgen. De kwetsbaarheid en de aanvalsmethode zijn gedocumenteerd in de advisories van Langflow en de analyse van Sysdig.