JADEPUFFER Deploys ENCFORGE Ransomware Targeting AI Model Assets

· Original article ↗

Summary

Sysdig reports that JADEPUFFER exploited a Langflow flaw and deployed ENCFORGE, ransomware targeting AI model files and datasets. Researchers analyzed its encryption and container-escape techniques and found no evidence of data exfiltration.

Key points

  • JADEPUFFER exploited CVE-2025-3248, an unauthenticated code execution flaw in Langflow, before harvesting credentials and probing internal services.
  • The operator iterated Python scripts that used the Docker socket, privileged containers, procfs and nsenter to move the payload toward the host.
  • ENCFORGE is a UPX-packed Go ransomware binary targeting roughly 180 file extensions, including model checkpoints, vector indexes and training datasets.
  • The binary uses AES-256-CTR and an embedded RSA-2048 public key, encrypts file regions and appends the .locked suffix.
  • Sysdig linked the activity to the earlier JADEPUFFER campaign through a shared extortion contact; it found no evidence of exfiltration during the session.
  • Researchers recommend upgrading Langflow to 1.3.0 or later, restricting Docker socket access and maintaining offline or immutable snapshots of model artifacts.

Article Details

Attack Vectors
  • JADEPUFFER exploited unauthenticated Python code execution in Langflow's /api/v1/validate/code endpoint, then searched for credentials and probed internal services.
  • The operator used the Docker socket to create privileged containers and developed scripts using nsenter and procfs to move ENCFORGE across the container boundary. The initial binary fetch failed; the article does not establish successful encryption during the session.
  • ENCFORGE encrypts selected files, including AI model artifacts and datasets, and adds the .locked extension. Its analyzed code also contains Windows recovery-disabling functionality.
Defensive Notes
  • Update Langflow to version 1.3.0 or later and monitor subprocess execution under its application user.
  • Restrict Docker socket access, alert on privileged container creation and nsenter from containers, and run Langflow containers as non-root with noexec on writable directories.
  • Maintain offline or immutable snapshots of model artifacts, restrict access to model weights and training datasets, and monitor ML asset paths for .locked file creation.
  • Audit and rotate credentials exposed to vulnerable Langflow processes; avoid storing AI provider API keys in their runtime environment.
  • Use the article's YARA rule to detect unpacked ENCFORGE binaries.

Indicators of compromise

TypeIndicatorContext
EMAILe78393397@proton[.]meExtortion contact in ENCFORGE and the prior JADEPUFFER operation.
IPV434[.]153[.]223[.]102C2 and ENCFORGE binary hosting infrastructure.
IPV445[.]131[.]66[.]106Source IP associated with the JADEPUFFER operation.
SHA2568cb0c223b018cecef1d990ec81c67b826eb3c30d54f06193cf69969e9a8baea2SHA-256 of the UPX-packed ENCFORGE ransomware sample.
SHA256ea7822eac6cecef7746c606b862b4d3034856caf754c4cf69533662637905328SHA-256 of the unpacked ENCFORGE ransomware sample.
URLhxxp[:]//34[.]153[.]223[.]102:9191/.lockdAttacker-hosted ENCFORGE ransomware download URL.
URLhxxp[:]//34[.]153[.]223[.]102:9191/lockdAttempted ransomware download URL; the article reports that the fetch failed.

MITRE ATT&CK

T1027.002 · Software PackingThe analyzed ENCFORGE ransomware binary was packed with UPX.T1027.013 · Encrypted/Encoded FileThe operator delivered escape scripts through an inline base64 decode inside the Langflow execution channel.T1046 · Network Service DiscoveryJADEPUFFER probed internal services for reachability using /dev/tcp.T1059.006 · PythonThe operator built and executed Python escape scripts through the Langflow code-execution channel.T1082 · System Information DiscoveryThe operator collected host information using uname -m and hostname after gaining execution.T1087 · Account DiscoveryThe operator ran id to inspect its execution identity.T1105 · Ingress Tool TransferThe operator attempted to download ENCFORGE from attacker-controlled infrastructure, although the observed fetch failed.T1190 · Exploit Public-Facing ApplicationJADEPUFFER exploited CVE-2025-3248 in Langflow's unauthenticated code-validation endpoint for initial access.T1486 · Data Encrypted for ImpactENCFORGE encrypts targeted files, including AI model artifacts, and renames them with a .locked extension.T1489 · Service StopENCFORGE includes functionality to kill processes holding file locks before encryption.T1490 · Inhibit System RecoveryThe analyzed binary contains Windows code invoking vssadmin.exe and bcdedit.exe to delete shadow copies and disable recovery; the article does not report its execution on Windows.T1611 · Escape to HostThe escape scripts created privileged containers with host access and used nsenter to cross into host namespaces.

CVE

Threat Actors

Malware

Products

Tools

Countries

Related Articles