8 THREATS CRITICAL 2026-03-20 Comprehensive Report

The OpenClaw Threat Landscape: 8 Attacks on the AI Agent Platform (2026)

Threadlinqs Intelligence 18 min
openclawCVE-2026-25253supply-chainai-agent-securityamos-stealerghostclawclawhubmoltbotbing-seo-poisoningghostloader

Threats: TL-2026-0008, TL-2026-0019, TL-2026-0043, TL-2026-0044, TL-2026-0056, TL-2026-0136, TL-2026-0182, TL-2026-0255


Executive Summary

8
Threats
2
Critical
100K+
Users Exposed
88+
Detections

Between February and March 2026, OpenClaw became the most targeted AI agent platform in history. Eight distinct threats spanning three attack classes converged on a single framework trusted by over 100,000 developers: remote code execution via CVE-2026-25253, supply chain poisoning through 2,500+ malicious skills and packages, and social engineering leveraging Bing search poisoning, fake installers, and AI-as-intermediary techniques.

Two threats reached CRITICAL severity. Five were HIGH. One was MEDIUM. The campaign arc tells a story of rapid escalation: a CVE disclosure in late January became a multi-vector, multi-actor ecosystem attack by March. What started as a single WebSocket vulnerability evolved into coordinated campaigns deploying AMOS macOS stealer, Vidar, PureLogs, GhostSocks proxy malware, and the novel GhostLoader RAT across Windows, macOS, and Linux.

This report consolidates all eight threats into a single reference with full detection coverage in SPL, KQL, and Sigma.

What Is OpenClaw?

OpenClaw (formerly MoltBot/ClawdBot) is an open-source AI personal assistant platform that gives AI agents the ability to execute shell commands, read/write files, send messages through WhatsApp, Telegram, Discord, Slack, and Signal, fetch URLs, schedule automated tasks, and access connected services. Skills installed from ClawHub (the official registry) are loaded directly into the agent's system prompt with full tool access.

This capability model made OpenClaw extraordinarily useful and extraordinarily dangerous. As OpenClaw's own security team acknowledged: "Running an AI agent with shell access on your machine is... spicy." Every attack in this report exploits the fundamental tension between agent utility and agent security.

Attack Timeline

DateEventSeverityTL-ID
Jan 20OpenClaw goes viral on X, 100K+ rapid adoption
Jan 26CVE-2026-25253 independently discovered by 3 researchersHIGHTL-0008
Jan 28Patch merged (commit 8cb0fa9), v2026.1.29 released
Feb 2230+ malicious skills discovered on ClawHubHIGHTL-0019
Feb 2Trojanized OpenClaw installers appear on GitHubHIGH
Feb 3230+ password-stealing skills documented (distinct campaign)HIGHTL-0043
Feb 3CVE-2026-25253 RCE via malicious link fully analyzed (CRITICAL)CRITICALTL-0044
Feb 3OpenClaw attack surface and security model documentedMEDIUMTL-0056
Feb 9Huntress detects Bing search poisoning driving fake installersHIGHTL-0182
Feb 10Apple XProtect v5329 adds AMOS/OpenClaw YARA rule
Feb 23Trend Micro: AMOS macOS stealer via ClawHub skillsCRITICALTL-0136
Feb 23Koi Research: 341+ ClawHavoc skills, 2,200+ on GitHub
Mar 5SKILL.md files target AI coding agent workflows
Mar 8JFrog discovers GhostClaw npm package (@openclaw-ai/openclawai)HIGHTL-0255
Mar 20Jamf: GhostClaw expands to 10+ GitHub repos, AI workflows

CVE-2026-25253: One-Click RCE

Threats: TL-2026-0008 + TL-2026-0044 | CVSS: 8.8 | CWE: CWE-669, CWE-601, CWE-346

The vulnerability chains three flaws into a one-click kill chain:

  1. Gateway URL injection: The Control UI blindly accepts a gatewayUrl query parameter and auto-connects via WebSocket, sending the stored authentication token to the attacker-controlled server
  2. Cross-Site WebSocket Hijacking: The WebSocket server fails to validate the Origin header, enabling the attacker to use the victim's browser as a pivot to connect back to the localhost-only gateway at ws://localhost:18789
  3. Sandbox escape + RCE: The stolen operator.admin-scoped token allows disabling all safety guardrails (exec-approvals, sandbox containers) and executing arbitrary commands via the API

A single visit to a malicious webpage gives attackers full host compromise. No user interaction beyond the initial click. The vulnerability was independently discovered by Ethiack's Hackian AI pentester (in ~100 minutes of autonomous testing), depthfirst GSI (static analysis), and researcher @0xacb. Public PoC exploit code is available on GitHub.

Patch: Commit 8cb0fa9 adds a gateway URL confirmation modal. All users must update to v2026.1.29+ and rotate tokens.

GHSA-g8p2-7wf7-98mq | NVD | Ethiack writeup | depthfirst writeup

Supply Chain: 230+ Malicious Skills

Threats: TL-2026-0019 + TL-2026-0043 | CVSS: 7.8-8.1 | Status: ACTIVE

The first large-scale supply chain attack against an AI agent skill ecosystem. Over 230 malicious skills were published to ClawHub, GitHub, and community forums exploiting OpenClaw's trust model where installed skills receive system-level access through the AI agent.

Five Attack Vectors

  1. Prompt injection via SKILL.md: Malicious instructions embedded in SKILL.md files override safety guardrails. Because SKILL.md content is injected directly into the system prompt, traditional code analysis tools cannot detect the threat. Skills instructed agents to silently exfiltrate openclaw.json contents, disable exec.approvals, and read MEMORY.md personal data
  2. Bundled malicious scripts: Skills included shell scripts and Python modules that established reverse shells, installed XMRig cryptocurrency miners, exfiltrated SSH keys and AWS credentials, and modified other installed skills for persistence
  3. Typosquatting: Malicious skills published under near-identical names (nano-bannana-pro vs legitimate nano-banana-pro, weatherr vs weather)
  4. Name shadowing: Workspace skills override bundled skills via precedence. Malicious skills with the same names as bundled skills silently replaced legitimate versions
  5. Metadata abuse: Skills requested unnecessary environment variables (AWS_SECRET_ACCESS_KEY, GITHUB_TOKEN) in frontmatter metadata

Impact

Known C2 domains included skill-analytics[.]com (disguised as telemetry) and clawhub-cdn[.]net (impersonating ClawHub CDN). ClawHub has since implemented skill signing, reputation scoring, and enhanced review.

AMOS macOS Stealer via Skills

Threat: TL-2026-0136 | Severity: CRITICAL | Actor: AMOS-as-a-Service operators

Trend Micro identified 39 malicious OpenClaw skills on ClawHub distributing a new Atomic macOS Stealer (AMOS) variant. This campaign represents a paradigm shift: social engineering the AI agent itself as a trusted intermediary to trick users into installing malware.

The infection chain begins with malicious SKILL.md files containing prerequisite instructions directing the AI agent to visit openclawcli[.]vercel[.]app — a fake CLI tool website. The agent fetches the installation instructions and presents them to the user. Claude Opus 4.5 identified the trick and refused to proceed, while GPT-4o either silently installed or repeatedly prompted the user.

The malicious site serves a Base64-encoded payload that decodes to a curl command fetching a Mach-O universal binary from 91.92.242[.]30. The binary runs on both Intel and Apple Silicon, exfiltrating:

Koi Research later documented 341+ ClawHavoc skills and 2,200+ malicious skills on GitHub, confirming this was far larger than the initial ClawHub findings.

Fake Installers: Bing Search Poisoning

Threat: TL-2026-0182 | Severity: HIGH | Discovery: Huntress

Threat actors exploited Bing AI search results to surface malicious GitHub repositories at the top of results for queries like "OpenClaw Windows." The campaign weaponized trust in both Bing and GitHub as software distribution platforms.

Windows Attack Chain

A trojanized installer named OpenClaw_x64.exe (original name: TradeAI.exe) contained largely legitimate code from Cloudflare's moltworker project to evade static analysis. A never-before-seen packer dubbed "Stealth Packer" orchestrated payload delivery with in-memory injection, Windows Firewall manipulation, hidden scheduled tasks, and anti-VM detection.

Payloads deployed:

GitHub removed the malicious repositories within 8 hours of the Huntress report. Apple released XProtect v5329 with YARA rule MACOS.SOMA.CLBIFEA blocking the AMOS variant. Microsoft later adjusted Bing AI to return OpenClaw's official site.

GhostClaw Campaign

Threat: TL-2026-0255 | Severity: HIGH | Actor: helenigtxu (operator handle) | Status: ACTIVE

The most recent campaign (March 2026) distributes GhostLoader RAT through malicious GitHub repositories and npm packages. JFrog discovered the malicious @openclaw-ai/openclawai npm package (v1.5.14-1.5.15) with postinstall hooks deploying GhostLoader.

Attack Chain

  1. Lure: 10+ GitHub repositories across trading bots, SDKs, AI integrations, gaming tools. Accounts staged since January with benign code to build credibility
  2. SKILL.md targeting: Files added targeting AI coding agents (OpenClaw, ZeroClaw, PicoClaw), enabling infection without direct user interaction
  3. Delivery: curl|bash install scripts and npm postinstall hooks deploy multi-stage payload
  4. GhostLoader: Full RAT with SOCKS5 proxy, browser session cloning via Chrome DevTools Protocol, and NUKE self-destruct anti-forensics

Exfiltration Channels

GhostLoader steals credentials, crypto wallets (BIP-39 seed phrase detection), SSH keys, browser data, and cloud tokens (AWS, Azure, GCP, GitHub, npm). The campaign used AES-256-GCM encryption and had 178 npm downloads before removal.

Framework Security Model

Threat: TL-2026-0056 | Severity: MEDIUM | Category: AI Security Assessment

OpenClaw's comprehensive attack surface includes five categories that every enterprise deploying AI agents must address:

  1. Prompt injection — Direct injection (user messages), indirect injection (fetched web content), and tool argument injection. The least solvable attack class because AI agents interpret natural language
  2. Authentication and access control — AllowFrom bypass, gateway exposure on 0.0.0.0 without auth, API key exposure in auth-profiles.json, cross-session access, node execution via system.run
  3. Data security — Session logs on disk, system prompt disclosure, MEMORY.md leakage, workspace file exposure
  4. Infrastructure — SSRF via web_fetch (cloud metadata at 169.254.169.254), CDP browser control exposure, dangerouslyDisableDeviceAuth misconfiguration
  5. Supply chain — Malicious ClawHub skills, untrusted plugins executing in-process

OpenClaw's defense philosophy: "Assume the model can be manipulated; design so manipulation has limited blast radius." The platform provides openclaw security audit tooling and a formal 4-phase security program led by Jamieson O'Reilly (Dvuln): Transparency, Product Security Roadmap, Code Review, and Security Triage.

Detection Rules

Threadlinqs Intelligence provides 88+ detection rules across all 8 threats. Below are representative rules covering the primary attack vectors.

CVE-2026-25253 — Malicious GatewayUrl Parameter

SPLindex=proxy sourcetype=proxy OR index=web sourcetype=access_combined
| where match(url, "(?i)openclaw|moltbot|clawdbot")
| where match(url, "(?i)gatewayUrl=")
| rex field=url "gatewayUrl=(?<gateway_target>[^&]+)"
| where NOT match(gateway_target, "(?i)(localhost|127\.0\.0\.1|::1)")
| stats count values(gateway_target) as targets by src_ip, user, url
| eval alert_severity="CRITICAL"
| eval alert_reason="OpenClaw exploit attempt - malicious gatewayUrl parameter detected"

CVE-2026-25253 — CSWSH Pivot Detection

KQLlet openclaw_ports = dynamic([18789, 18788]);
let external_connections = DeviceNetworkEvents
| where Timestamp > ago(1h)
| where InitiatingProcessFileName in~ ("chrome.exe", "msedge.exe", "firefox.exe")
| where RemotePort in (80, 443)
| where not(RemoteUrl has_any ("localhost", "127.0.0.1"))
| project ExtTime=Timestamp, DeviceId, DeviceName, InitiatingProcessId,
    ExternalDomain=RemoteUrl;
let localhost_ws = DeviceNetworkEvents
| where Timestamp > ago(1h)
| where RemotePort in (openclaw_ports)
| where RemoteUrl has_any ("localhost", "127.0.0.1")
| project WsTime=Timestamp, DeviceId, InitiatingProcessId, RemotePort;
external_connections
| join kind=inner (localhost_ws) on DeviceId, InitiatingProcessId
| where WsTime between (ExtTime .. (ExtTime + 5m))
| project DeviceName, ExternalDomain, RemotePort, ExtTime, WsTime

AMOS Supply Chain — Base64 Decode-to-Bash and C2

KQLlet base64 = DeviceProcessEvents
| where Timestamp > ago(24h)
| where ProcessCommandLine has_all ("base64", "-D", "bash")
| extend Signal = "base64_decode_bash", Score = 50;
let curl_c2 = DeviceProcessEvents
| where Timestamp > ago(24h)
| where FileName == "curl"
| where ProcessCommandLine has "91.92.242"
| extend Signal = "amos_c2_curl", Score = 50;
let fake_cli = DeviceNetworkEvents
| where Timestamp > ago(24h)
| where RemoteUrl has_any ("openclawcli", "openclawupdater", "clawhub-installer")
| extend Signal = "fake_cli_download", Score = 45;
union base64, curl_c2, fake_cli
| summarize TotalScore=sum(Score), Signals=make_set(Signal) by DeviceName
| where TotalScore >= 50

Supply Chain — Reverse Shell from Skill Script

SIGMAtitle: Reverse Shell from OpenClaw Skill Script Execution
id: tl-2026-0019-lin-01
status: experimental
date: 2026/02/11
author: Shannon (Threadlinqs)
description: |
    Detects reverse shell establishment from OpenClaw skill script execution.
references:
    - https://intel.threadlinqs.com/#TL-2026-0019
logsource:
    category: process_creation
    product: linux
detection:
    selection_parent:
        ParentCommandLine|contains: 'openclaw'
    selection_revshell:
        CommandLine|contains:
            - '/dev/tcp/'
            - 'bash -i'
            - 'nc -e'
            - 'python -c'
            - 'import socket'
    condition: selection_parent and selection_revshell
falsepositives:
    - None - reverse shell from OpenClaw is always malicious
level: critical
tags:
    - attack.execution
    - attack.t1059.004

GhostClaw — Credential Harvesting and Exfiltration

KQLunion DeviceProcessEvents, DeviceFileEvents
| where Timestamp > ago(24h)
| where (ProcessCommandLine has "dscl" and ProcessCommandLine has "-authonly")
    or (ProcessCommandLine has_any ("find-generic-password", "dump-keychain"))
    or (ProcessCommandLine has_any ("Login Data", "logins.json", "Cookies")
        and ProcessCommandLine has_any ("Chrome", "Brave", "Edge", "Firefox"))
    or (FolderPath has_any ("exodus", "electrum", "atomic")
        or ProcessCommandLine has_any ("metamask", "phantom", "solflare"))
    or (FolderPath has ".ssh" and FileName in ("id_rsa", "id_ed25519"))
| summarize SignalCount=count(), Signals=make_set(FileName) by DeviceName, bin(Timestamp, 10m)
| where SignalCount >= 3

GhostClaw — Malicious npm Package

SIGMAtitle: GhostClaw Malicious npm Package Installation
id: c3f9e5a6-b7d8-4012-cdef-123456780003
status: experimental
description: |
    Detects installation of malicious @openclaw-ai/openclawai npm package
    and execution of known GhostClaw dropper files.
references:
    - https://research.jfrog.com/post/ghostclaw-unmasked/
    - https://www.jamf.com/blog/ghostclaw-ghostloader-malware-github-repositories-ai-workflows/
author: AII-Detector - ThreadLinqs Intelligence
date: 2026/03/20
logsource:
    category: process_creation
detection:
    selection_npm:
        CommandLine|contains:
            - '@openclaw-ai/openclawai'
            - 'openclawai@1.5.14'
            - 'openclawai@1.5.15'
    selection_env:
        CommandLine|contains:
            - 'GHOST_PASSWORD_ONLY'
            - 'NODE_CHANNEL'
    condition: selection_npm or selection_env
falsepositives:
    - None
level: critical
tags:
    - attack.initial_access
    - attack.t1195.002
Browse all 88+ detection rules across 8 threats: View on Threadlinqs Intelligence

Indicators of Compromise

Network Indicators

TypeIndicatorContext
Domaintrackpipe[.]devGhostClaw/GhostLoader primary C2
Domainopenclawcli[.]vercel[.]appFake CLI site serving AMOS payload
Domainsocifiapp[.]comAMOS exfiltration server (/api/reports/upload)
Domainskill-analytics[.]comSupply chain C2 disguised as telemetry
Domainclawhub-cdn[.]netAttacker domain impersonating ClawHub
IP91.92.242[.]30AMOS payload hosting (Mach-O binaries)
IP185.196.9[.]98PureLogs stealer C2 (port 56001)
IP147.45.197[.]92GhostSocks primary helper (TLS 443)
IP94.228.161[.]88GhostSocks fallback helper
IP121.127.33[.]212Bing campaign C2 infrastructure
IP193.143.1[.]155Bing campaign C2 infrastructure
Port18789/tcpDefault OpenClaw gateway WebSocket port

File Indicators

TypeHash / PathContext
SHA256518ff5fb...b70e2b3OpenClaw_x64.exe (trojanized installer)
SHA256f03e38e1...523b4b51cloudvideo.exe (Vidar stealer)
SHA25640fc240f...894f12690svc_service.exe (PureLogs + Stealth Packer)
SHA256a22ddb30...8740ed5serverdrive.exe (GhostSocks proxy)
SHA256e13d9304...8b9fdOpenClawBot (AMOS Mach-O, macOS)
SHA2565968bd7d...c12cAMOS Mach-O binary (ece0f208u7uqhs6x)
SHA256e3ee5909...7fe4GhostClaw setup.js dropper (variant 1)
SHA2563ab0bcc8...1040GhostClaw postinstall.js (anti-forensics)
npm@openclaw-ai/openclawaiMalicious npm package (v1.5.14-1.5.15)

Behavioral Indicators

MITRE ATT&CK Mapping

Consolidated across all 8 threats. Unique techniques mapped to the attack lifecycle:

TacticTechniqueIDThreats
ReconnaissanceSearch Open Technical DatabasesT1596TL-0056
Initial AccessSupply Chain CompromiseT1195.002TL-0019, 0043, 0136, 0255
Initial AccessTrusted RelationshipT1199TL-0019, 0056
Initial AccessExploit Public-Facing ApplicationT1190TL-0008, 0044, 0056
ExecutionCommand and Scripting Interpreter: Unix ShellT1059.004TL-0019, 0056, 0136
ExecutionCommand and Scripting Interpreter: JavaScriptT1059.007TL-0019, 0044, 0255
ExecutionCommand and Scripting Interpreter: PythonT1059.006TL-0019
ExecutionUser Execution: Malicious LinkT1204.001TL-0008, 0044, 0182
ExecutionUser Execution: Malicious FileT1204.002TL-0019, 0182, 0255
PersistenceEvent Triggered ExecutionT1546TL-0019
PersistenceCompromise Client Software BinaryT1554TL-0019
PersistenceScheduled Task/Job: CronT1053.003TL-0056
Defense EvasionImpair Defenses: Disable ToolsT1562.001TL-0019, 0044
Defense EvasionMasqueradingT1036.005TL-0019, 0056, 0182
Defense EvasionObfuscated FilesT1027TL-0019, 0255
Credential AccessCredentials in FilesT1552.001TL-0019, 0043, 0056, 0136
Credential AccessSteal Application Access TokenT1528TL-0008, 0019, 0044, 0056
DiscoveryFile and Directory DiscoveryT1083TL-0019, 0056, 0136, 0255
CollectionData from Local SystemT1005TL-0019, 0056, 0136, 0182, 0255
CollectionData from Information RepositoriesT1213TL-0019
C2Application Layer Protocol: WebT1071.001TL-0019, 0136, 0182, 0255
ExfiltrationExfiltration Over C2 ChannelT1041TL-0019, 0136
ExfiltrationExfiltration Over Web ServiceT1567TL-0019, 0056, 0255
ImpactResource HijackingT1496TL-0019
Full MITRE coverage across 40+ unique techniques available on Threadlinqs Intelligence

Recommendations

Immediate Actions

  1. Update OpenClaw to v2026.1.29+ to patch CVE-2026-25253. Rotate all gateway tokens immediately
  2. Audit all installed skills — remove anything from unverified publishers. Run openclaw security audit --fix
  3. Block known C2 infrastructure at the firewall: trackpipe.dev, 91.92.242.30, 185.196.9.98, 147.45.197.92, openclawcli.vercel.app, socifiapp.com
  4. Scan for GhostClaw npm packages: check for @openclaw-ai/openclawai in node_modules and package-lock.json
  5. Hunt for AMOS indicators on macOS: check for osascript password dialogs, connections to 91.92.242.30, and ad-hoc signed Mach-O binaries

Long-Term Measures

  1. Implement AI agent usage policies — restrict which skills can be installed, enforce sandboxing, require approval for shell execution
  2. Deploy detection rules from this report into SIEM/EDR. Monitor for credential store access, reverse shells, and data exfiltration by AI agent processes
  3. Restrict OpenClaw gateway to localhost with authentication. Never expose the Gateway HTTP API on 0.0.0.0 without TLS and authentication
  4. Monitor npm/pip dependencies for AI projects — audit postinstall hooks, watch for typosquatting of AI framework names
  5. Include AI agents in your EDR/MDR scope — traditional endpoint monitoring doesn't distinguish between legitimate agent actions and prompt-injection-driven malicious actions

FAQ

What is CVE-2026-25253 and how does it affect OpenClaw?

CVE-2026-25253 is a critical 1-click Remote Code Execution vulnerability in OpenClaw (CVSS 8.8). It chains three flaws: the Control UI auto-connects to an attacker-supplied gatewayUrl without confirmation, WebSocket Origin validation is missing enabling Cross-Site WebSocket Hijacking, and the stolen operator token allows disabling all safety guardrails and executing arbitrary commands. A single click on a malicious link gives attackers full host access. Patched in v2026.1.29.

How many malicious OpenClaw skills have been discovered?

Over 2,500 malicious OpenClaw skills have been identified across ClawHub, GitHub, and npm. The initial wave found 230+ credential-stealing packages in early February 2026. Trend Micro later identified 39 skills distributing AMOS macOS stealer, Koi Research documented 341+ ClawHavoc skills, and 2,200+ additional malicious skills were found on GitHub. The GhostClaw campaign added malicious npm packages and SKILL.md files targeting AI coding workflows.

What is GhostClaw and how does it target developers?

GhostClaw is an active supply chain campaign discovered in March 2026 distributing the GhostLoader RAT through malicious GitHub repos and npm packages disguised as developer tools. It uses curl|bash install scripts and AI workflow SKILL.md files to deliver a multi-stage credential stealer targeting macOS, Linux, and Windows. GhostLoader exfiltrates credentials, crypto wallets, SSH keys, and cloud tokens to trackpipe[.]dev C2 via Telegram Bot API and GoFile.io.

How can I detect OpenClaw-related attacks in my environment?

Threadlinqs Intelligence provides 88+ detection rules across all 8 threats in SPL, KQL, and Sigma. Key strategies: monitor for malicious gatewayUrl parameters in proxy logs, detect credential store access by AI assistant processes, alert on Base64-decode-to-bash chains, watch for known C2 domains (trackpipe.dev, 91.92.242.30), and monitor npm postinstall hooks from untrusted packages.

References


Full threat intelligence, detection rules, and IOC feeds for all 8 threats are available on Threadlinqs Intelligence.