Langflow Flaw CVE-2026-33017 Used to Deliver Linux Cryptominer

· Original article ↗

Summary

Trend Micro analyzed a campaign exploiting unauthenticated Langflow RCE to deploy a Monero miner, disable Linux security controls, establish persistence, and spread using SSH keys. It recommends updating Langflow and restricting public access.

Key points

  • The campaign exploited CVE-2026-33017 through an unauthenticated Langflow API endpoint to execute attacker-supplied Python code.
  • The dropper downloaded the lambsys Go binary, which deployed a customized XMRig-based Monero miner.
  • The malware disabled host security controls, removed rival miners, deleted syslog, and established cron- and script-based persistence.
  • The dropper searched SSH keys, known_hosts entries, and agent sockets to spread to other reachable systems.
  • Researchers tracked activity from one seed IP over 19 days and linked tool behavior to a maintained malware family, while describing its lineage as a hypothesis.
  • Organizations should update Langflow to version 1.9.0 or later, restrict public access, review privileges, and investigate for compromise and exposed SSH keys.

Article Details

Attack Vectors
  • Unauthenticated exploitation of CVE-2026-33017 through Langflow's POST /api/v1/build_public_tmp/{flow_id}/flow endpoint executes attacker-supplied Python in the service process context.
  • Langflow's default AUTO_LOGIN behavior provides unauthenticated visitors with a superuser token and the ability to create the public flow required by the exploit.
  • Injected Python invokes curl or wget to retrieve isp.sh and pipe it into a shell. The dropper downloads and launches lambsys.
  • isp.sh spreads through SSH using accessible private keys and ssh-agent credentials, with targets obtained from known_hosts. It supports both remote downloading and SCP delivery.
  • lambsys installs cron and background-loop watchdogs that restore the payload if its process or binary is missing.
  • The authors hypothesize technique inheritance from the publicly available KORKERDS/MALXMR playbook, rather than establish direct descent or attribution to its operators.
Defensive Notes
  • Update Langflow to version 1.9.0 or later, restrict public access, and review whether the service has unnecessary privileges.
  • The article identifies a remediation introduced in 1.9.0.dev8 that prevents public flows from accepting attacker-controlled data and logs submission attempts.
  • Review exploitation logs for the reused flow ID 0ee284cc-0eb1-493f-bc60-94fa8d1cfd18 and the combination of rotating reconnaissance User-Agents followed by python-requests/2.25.1 exploitation requests. The User-Agent alone is not malicious.
  • Treat discovered lambsys artifacts as a potential SSH-key-exposure incident: rotate exposed keys and investigate systems reachable through the compromised account.
  • Monitor both TCP/8080 payload staging and TCP/80 runtime beacons; rules restricted to port 8080 miss post-deployment C2 traffic.
  • The authors report that enforcing the Spamhaus DROP feed at the egress firewall would block this operation's C2 beacons.
  • Hunt for /var/tmp/.xlamb/, /var/tmp/init_rmount, unauthorized cron watchdogs, security-control disablement, syslog deletion, and immutable attributes applied to /tmp and /var/tmp.
  • A userdel akay command outside an authorized response procedure can indicate competing cryptominer activity.
  • Do not rely solely on process-name checks: the dropper's pgrep -f lambsys check can produce false positives, whereas the binary's pgrep -x lambsys.elf check is more specific.
  • The article's ATT&CK table states that miner execution was not observed in the sandbox; current and older variants download an archive with the same hardcoded MD5.

Indicators of compromise

TypeIndicatorContext
IPV483[.]142[.]209[.]214Observed Langflow exploitation source and current lambsys payload-staging and C2 server.
IPV494[.]156[.]64[.]241C2 server used by the older 2024 lambsys variant.
MD546096a72d84db5f1dafd944fcf6571c8Hardcoded integrity checksum for the malicious ks.tar miner archive shared by the 2024 and 2026 variants.

MITRE ATT&CK

T1016 · System Network Configuration DiscoveryThe article reports network-interface profiling and parsing SSH known_hosts for reachable systems.T1020 · Automated ExfiltrationThe older variant automatically reported the victim's public IP through periodic HTTP beacons to /r.php.T1021.004 · SSHisp.sh uses SSH with reused keys or agent credentials to execute the payload on additional hosts.T1027 · Obfuscated Files or InformationThe Go lambsys binary is UPX-packed, with newer builds repacked using a different UPX version.T1036.005 · Match Legitimate Resource Name or LocationThe procq miner identifies itself as SystemMonitor/6.25.0 in its mining-pool login.T1053.003 · CronA per-user cron watchdog runs every five minutes to restart or redownload lambsys.T1057 · Process Discoverylambsys enumerates rival miner processes and processes associated with mining-pool ports.T1059.004 · Unix ShellThe exploit pipes downloaded isp.sh into sh; lambsys also launches numerous sh -c subprocesses.T1059.006 · PythonAttacker-supplied Python invokes __import__('os').system inside the Langflow service.T1070.002 · Clear Linux or Mac System Logslambsys deletes /var/log/syslog; the authors explicitly state that rotated-log modification was not confirmed.T1070.004 · File DeletionThe malware deletes ks.tar after extraction and removes rival wallet, key, and persistence artifacts.T1071.001 · Web Protocolslambsys sends JSON heartbeat POSTs over HTTP to /status.php on its C2 server approximately every 128 seconds.T1082 · System Information DiscoveryThe article identifies checks of /etc/os-release, DMI information, and uname.T1083 · File and Directory DiscoveryThe malware checks for existing payload files and searches /tmp for rival miner PID files.T1105 · Ingress Tool Transfercurl and wget retrieve isp.sh, lambsys, and ks.tar; watchdogs redownload missing payloads, and SCP supports lateral delivery.T1140 · Deobfuscate/Decode Files or Informationlambsys extracts the downloaded miner archive before launching procq.T1190 · Exploit Public-Facing ApplicationCVE-2026-33017 permits unauthenticated Python execution through a public Langflow API endpoint.T1222 · File and Directory Permissions Modificationchattr commands remove protections from cron and SSH artifacts, then apply immutable and append-only attributes to /tmp and /var/tmp.T1489 · Service Stoplambsys stops AppArmor, the Aliyun security agent, and c3pool_miner.service.T1496 · Resource HijackingThe payload chain deploys a customized XMRig miner for Monero mining; current-variant miner execution was not observed in the sandbox.T1497 · Virtualization/Sandbox EvasionThe authors report sandbox-stalling sleeps in the 2026 lambsys build.T1531 · Account Access Removallambsys deletes the akay and vfinder accounts associated with earlier cryptominer operations.T1552.004 · Private Keysisp.sh searches for id_rsa, id_ed25519, and id_dsa private keys to authenticate to other hosts.T1562.001 · Disable or Modify ToolsThe malware disables AppArmor, SELinux enforcement, the NMI watchdog, and the Aliyun security agent.T1562.004 · Disable or Modify System Firewallufw disable and iptables -F remove host firewall protections.T1564.001 · Hidden Files and DirectoriesPayloads are stored in /var/tmp/.xlamb/ and dot-space directories intended to evade casual inspection.T1588.002 · ToolThe operation uses a precompiled customized XMRig miner delivered as procq in ks.tar.T1595.002 · Vulnerability ScanningThe exploitation source probed Langflow version, health, manifest, and authentication endpoints with rotating User-Agents.T1614 · System Location Discoverylambsys queries ipinfo[.]io for host geolocation information; the authors hypothesize pool selection and geo-gating.

CVE

People

Threat Actors

Malware

Vendors

Products

Tools

Related Articles