highVulnerability

GHSA-659f-22xc-98f2

## Vulnerability Webhook transform modules were validated with lexical path checks only. A symlink under the allowed hooks transform tree could resolve outside the intended directory and be dynamically imported. ## Affected Packages / Versions - Package: `openclaw` (npm) - Affected versions: `<= 2026.2.21-2` - Patched version (planned next release): `2026.2.22` ## Impact When an attacker can cause a transform module path to reference a symlinked entry that resolves outside the trusted transform directory, the gateway may import and execute unintended JavaScript with gateway-process privileges. ## Attack Preconditions - Hook transforms are enabled and reachable. - Attacker can influence transform path resolution (for example via privileged config access and/or writable filesystem path in the transform tree). - A symlink escape exists to attacker-controlled code. ## Remediation - Enforce realpath-aware containment for existing path ancestors before dynamic import. - Keep lexical containment checks for traversal and absolute-path escapes. - Add regression coverage for: - transform module symlink escape rejection, - `hooks.transformsDir` symlink escape rejection, - in-root symlink allow-case. ## Fix Commit(s) - `f4dd0577b055f77af783105bd65eae32f3d5e6a1` OpenClaw thanks @aether-ai-agent for reporting.

Properties

ghsa_id
GHSA-659f-22xc-98f2
severity
high
summary
OpenClaw hook transform path containment missed symlink-resolved escapes
cve_id
GHSA-659f-22xc-98f2
is_ghsa_only
true
ghsa_published
2026-03-03T23:00:53Z
source_url
https://github.com/advisories/GHSA-659f-22xc-98f2
ghsa_updated
2026-03-03T23:00:53Z

Related Entities (3)

AFFECTS (1)

[Software]npm/OpenClaw

HAS_WEAKNESS (1)

[Weakness]Improper Control of Generation of Code ('Code Injection')

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph