Skip to content
Fencer Intel
medium —

GHSA-9mph-4f7v-fmvh json

OpenClaw has agent avatar symlink traversal in gateway session metadata

published 8mo ago modified 8mo ago

cvss
—
not scored
cisa kev
Not listed
not in CISA's catalog
epss
—
no score, EPSS covers CVEs only
public exploits
0
none known

Summary

## Summary A crafted local avatar path could follow a symlink outside the agent workspace and return arbitrary file contents as a base64 `data:` URL in gateway responses.

## Impact - Confidentiality impact: local file read in the gateway process context. - Exfiltration path: `agents.list` can return the resulting `avatarUrl` payload.

## Affected Components - `src/gateway/session-utils.ts` (`resolveIdentityAvatarUrl`)

## Affected Packages / Versions - Package: `openclaw` (npm) - Introduced: `v2026.1.21` - Affected published versions: `<= 2026.2.21-2` - Planned patched version: `2026.2.22`

## Remediation - Resolve workspace and avatar paths with `realpath` and enforce realpath containment. - Open files with `O_NOFOLLOW` when available. - Compare pre-open and opened file identity (`dev`/`ino`) to block swap races. - Add regression tests for outside-workspace symlink rejection and in-workspace symlink allowance.

## Fix Commit(s) - `3d0337504349954237d09e4d957df5cb844d5e77`

OpenClaw thanks @aether-ai-agent for reporting.

Patch / fix

  • npm openclaw 2026.2.22

Is GHSA-9mph-4f7v-fmvh in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.

Check with Fencer

Affected packages

ecosystem package affected fixed in
npm openclaw
<2026.2.22
2026.2.22

Classification

Weakness
  • CWE-59 Improper Link Resolution Before File Access

References

Sources

Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.

The maintainers of openclaw/openclaw published their own advisory on GitHub. Reviewed sources take precedence over it.