Command Injection in openclaw (CVE-2026-32063)
Summary
Command injection in openclaw (CVE-2026-32063). Risk of unauthorized operations or information disclosure. Exploitable via ExecStartPre. Mitigation: upgrade to 2026.2.21 or later.
Original description
The description as published by the source.
Summary
A command injection vulnerability exists in OpenClaw’s Linux systemd unit generation path.
When rendering Environment= entries, attacker-controlled values are not rejected for CR/LF, and systemdEscapeArg() uses an incorrect whitespace-matching regex. This allows newline injection to break out of an Environment= line and inject standalone systemd directives (for example, ExecStartPre=). On service restart, the injected command is executed, resulting in local arbitrary command execution (local RCE) under the gateway service user.
Details
The issue is in src/daemon/systemd-unit.ts:
renderEnvLines(...)builds:Environment=${systemdEscapeArg(${key}=${value})}- No CR/LF validation is enforced for environment keys/values before writing unit lines.
systemdEscapeArg(...)uses:/[\\s"\\\\]/- In this regex,
\\sis interpreted as a literal backslash +s, not a whitespace character class.
As a result, whitespace detection/quoting behavior is incorrect.
Because systemd parses unit files line-by-line, a newline inside an environment value can inject an additional directive line. Example rendered output:
Environment=INJECT=ok
ExecStartPre=/bin/touch /tmp/oc15789_rce
At restart time, systemd executes ExecStartPre, enabling command execution.
Relevant code path/components involved in exploitation chain:
src/daemon/systemd-unit.tssrc/commands/daemon-install-helpers.tssrc/config/env-vars.ts- `src/config/zod-s…
Source: OSV.dev (Open Source Vulnerabilities) NVD GitHub Advisory OSV
Auto-generated summary
Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.
A vulnerability tracked as CVE-2026-32063 has been found in openclaw.
Attackers can target a specific entry point like ExecStartPre over the network to misuse the product.
Risk of unauthorized operations or information disclosure.
What to do: upgrade openclaw to 2026.2.21 or later.
If unsure, ask your IT team or search "openclaw CVE-2026-32063" on the vendor's site.
CVE-2026-32063 (openclaw) — CWE-77
Attack surface: ExecStartPre / config.env.vars / INJECT
Patched: 2026.2.21 — apply immediately
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.
A vulnerability (CWE-77) exists in openclaw. Attackers reach the vulnerable code path via ExecStartPre.
Check the vendor advisory for the affected versions of openclaw. Attack surface: ExecStartPre / config.env.vars / INJECT.
Severity: ?. Risk of unauthorized operations or information disclosure.
Update to 2026.2.21.
Until the patch is applied: disable the affected feature, apply WAF rules, or restrict access via network ACLs.
Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r 'openclaw' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.
Response actions
Concrete steps and command examples for SOC/SRE teams to execute in order
-
1Identify exposure identify
grep -r 'openclaw' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
openclawを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply patch patch
Upgrade openclaw to 2026.2.21ステージング環境で 2026.2.21 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
3Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。
Affected packages
References
- advisory nvd.nist.gov
- package github.com
- web github.com
- web github.com
- web vulncheck.com