{"answers":{"affected":"2 open source packages ship an affected version, including openclaw. It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-26322 in the wild and no public exploit code.","fix":"Upgrade openclaw to 2026.2.14 or later.","what":"CVE-2026-26322 is a high-severity server-side request forgery vulnerability in Openclaw Openclaw, published on 19 Feb 2026. Any signed-in user can exploit it over the network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-26322 and fix it if it is affected.\n\nWhat it is: CVE-2026-26322 is a high-severity server-side request forgery vulnerability in Openclaw Openclaw, published on 19 Feb 2026. Any signed-in user can exploit it over the network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-26322 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- openclaw (npm): affected all versions; fixed in 2026.2.14\n- openclaw (npm): affected all versions; fixed in 2026.2.14\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-26322/ (Markdown: https://insights.sbomify.com/CVE-2026-26322/index.md)","id":"CVE-2026-26322","markdown":"https://insights.sbomify.com/CVE-2026-26322/index.md","name":"CVE-2026-26322","record":{"aliases":["GHSA-g6q9-8fvw-f7rf"],"analysis":{"component_type":"server_software","fix_type":"upgrade","impacts":["data_read","security_bypass"],"network_reachable":"yes","non_default_config":true,"product_category":"OpenClaw AI assistant","requires_auth":"low_privilege","summary":"Attackers with tool invocation privileges can force the OpenClaw host to connect to arbitrary internal or external URLs, enabling network probing and potential data access.","user_interaction":"not_required","vuln_class":"ssrf"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"openclaw","vendor":"openclaw"}],"cvss":{"score":7.6,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:L","version":"3.1"},"cwes":[{"id":"CWE-918","name":"Server-Side Request Forgery"}],"description":"OpenClaw is a personal AI assistant. Prior to OpenClaw version 2026.2.14, the Gateway tool accepted a tool-supplied `gatewayUrl` without sufficient restrictions, which could cause the OpenClaw host to attempt outbound WebSocket connections to user-specified targets. This requires the ability to invoke tools that accept `gatewayUrl` overrides (directly or indirectly). In typical setups this is limited to authenticated operators, trusted automation, or environments where tool calls are exposed to non-operators. In other words, this is not a drive-by issue for arbitrary internet users unless a deployment explicitly allows untrusted users to trigger these tool calls. Some tool call paths allowed `gatewayUrl` overrides to flow into the Gateway WebSocket client without validation or allowlisting. This meant the host could be instructed to attempt connections to non-gateway endpoints (for example, localhost services, private network addresses, or cloud metadata IPs). In the common case, this results in an outbound connection attempt from the OpenClaw host (and corresponding errors/timeouts). In environments where the tool caller can observe the results, this can also be used for limited network reachability probing. If the target speaks WebSocket and is reachable, further interaction may be possible. Starting in version 2026.2.14, tool-supplied `gatewayUrl` overrides are restricted to loopback (on the configured gateway port) or the configured `gateway.remote.url`. Disallowed protocols, credentials, query/hash, and non-root paths are rejected.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"OpenClaw Gateway tool allowed unrestricted gatewayUrl override","id":"CVE-2026-26322","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":"openclaw:openclaw","products":["openclaw:openclaw"],"type":"ssrf","year":"2026"},"n_packages":2,"n_references":3,"next":{"headline":"OpenClaw has a command injection in maintainer clawtributors updater","id":"CVE-2026-26323"},"packages":[{"ecosystem":"npm","fixed":["2026.2.14"],"introduced":["0"],"last_affected":[],"package":"openclaw","purl":null,"source":"GHSA-g6q9-8fvw-f7rf"},{"ecosystem":"npm","fixed":["2026.2.14"],"introduced":["0"],"last_affected":[],"package":"openclaw","purl":"pkg:npm/openclaw","source":"GHSA-g6q9-8fvw-f7rf"}],"prev":{"headline":"OpenClaw has a local file disclosure via sendMediaFeishu in Feishu extension","id":"CVE-2026-26321"},"products":["openclaw"],"published":"2026-02-19","related":[{"cvss_score":9.9,"headline":"Security feature bypass in OpenClaw","id":"CVE-2026-28363","kev_date_added":null,"published":"2026-02-27"},{"cvss_score":9.8,"headline":"Code injection in n/a","id":"CVE-2026-30741","kev_date_added":null,"published":"2026-03-11"},{"cvss_score":9.4,"headline":"OpenClaw \u003c 2026.3.28 - Privilege Escalation via Missing Caller Scope Validation in Device Pair Approval","id":"CVE-2026-33579","kev_date_added":null,"published":"2026-03-31"},{"cvss_score":9.4,"headline":"OpenClaw \u003c 2026.3.11 - Privilege Escalation via Unvalidated Scope in device.token.rotate","id":"CVE-2026-32922","kev_date_added":null,"published":"2026-03-29"},{"cvss_score":9.4,"headline":"OpenClaw \u003c 2026.3.11 - Approval Bypass via Unrecognized Script Runners","id":"CVE-2026-32978","kev_date_added":null,"published":"2026-03-29"},{"cvss_score":9.4,"headline":"OpenClaw \u003c 2026.3.12 - Scope Elevation in WebSocket Shared-Auth Connections","id":"CVE-2026-22172","kev_date_added":null,"published":"2026-03-20"},{"cvss_score":9.4,"headline":"OpenClaw \u003c 2026.2.14 - Remote Code Execution via Node Invoke Approval Bypass","id":"CVE-2026-28466","kev_date_added":null,"published":"2026-03-05"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-02-20","vendors":["openclaw"]},"summary":"Attackers with tool invocation privileges can force the OpenClaw host to connect to arbitrary internal or external URLs, enabling network probing and potential data access.","url":"https://insights.sbomify.com/CVE-2026-26322/"}