OpenClaw: Process Safety - Unvalidated PID Kill via SIGKILL in Process Cleanup

Description

Summary

OpenClaw CLI process cleanup used system-wide process enumeration and pattern matching to terminate processes without verifying they were owned by the current OpenClaw process. On shared hosts, unrelated processes could be terminated if they matched the pattern.

Affected Packages / Versions

  • Package: openclaw (npm)
  • Affected: < 2026.2.14 (including the latest published version 2026.2.13)
  • Fixed: 2026.2.14 (planned next release)

Details

The CLI runner cleanup helpers could kill processes matched by command-line patterns without validating process ownership.

Fix

Process cleanup is now scoped to owned processes only by filtering to direct child PIDs of the current process (ppid == process.pid) before sending signals.

Hardening follow-ups:
- Prefer graceful termination for resume cleanup (SIGTERM, then SIGKILL fallback).
- Reduce false negatives from ps argv truncation by preferring wide output (ps -axww) with a fallback.
- Tighten command-line token matching to avoid substring matches.

Fix Commit(s)

  • 6084d13b956119e3cf95daaf9a1cae1670ea3557
  • eb60e2e1b213740c3c587a7ba4dbf10da620ca66

Release Process Note

This advisory is pre-set with patched version 2026.2.14. After 2026.2.14 is published to npm, the remaining step should be to publish this advisory.

Thanks @aether-ai-agent for reporting.

Basic information

Type
reviewed
Severity
medium
Advisory on GitHub
Open advisory ↗
Repository advisory
Open repository advisory ↗
Source code
Browse source ↗
Published (advisory)
2026-02-18 17:41:09 UTC
Updated
2026-02-23 22:28:51 UTC
GitHub reviewed
2026-02-18 17:41:09 UTC
NVD published
2026-02-21

EPSS Score

Score Percentile
0.04% 11.32%

CVSS Scores

Base score Version Severity Vector
4.3 4.0
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:N/SC:N/SI:N/SA:H Click to expand
Attack vector (AV:L)
Attacker needs local access on the target system.
Attack complexity (AC:L)
Exploitation conditions are straightforward and stable.
Attack requirements (AT:P)
Additional preconditions must be present for exploitation.
Privileges required (PR:L)
Low privileges are required.
User interaction (UI:N)
No user interaction is required.
Vulnerable system confidentiality impact (VC:N)
No confidentiality impact on the vulnerable system.
Vulnerable system integrity impact (VI:N)
No integrity impact on the vulnerable system.
Vulnerable system availability impact (VA:N)
No availability impact on the vulnerable system.
Subsequent system confidentiality impact (SC:N)
No confidentiality impact on subsequent systems.
Subsequent system integrity impact (SI:N)
No integrity impact on subsequent systems.
Subsequent system availability impact (SA:H)
High availability impact on subsequent systems.

Identifiers

CWEs

CWE id Name
CWE-283 Unverified Ownership

Credits

  • aether-ai-agent (reporter)

Affected packages (1)

Vulnerable version ranges and first patched releases as published by GitHub.

Ecosystem Package Vulnerable range First patched Vulnerable functions
npm openclaw < 2026.2.14 2026.2.14

References

cvelogic Threat Intelligence