OpenClaw: Reject symlinks in local skill packaging script
Vulnerability
skills/skill-creator/scripts/package_skill.py (a local helper script used when authors package skills) previously followed symlinks while building .skill archives.
If an author runs this script on a crafted local skill directory containing symlinks to files outside the skill root, the resulting archive can include unintended file contents.
Severity and Exposure
- Severity: Low
- Execution context: local/manual workflow only (skill author packaging step)
- No remote trigger: this is not reachable via normal OpenClaw gateway/chat runtime paths
- No extraction Zip Slip in this finding: this issue is limited to packaging-time symlink following
Impact
- Potential unintentional disclosure of local files from the packaging machine into a generated
.skillartifact. - Requires local execution of the packaging script on attacker-controlled skill contents.
Affected Components
skills/skill-creator/scripts/package_skill.py
Affected Packages / Versions
- Package:
openclaw(npm) - Latest published version during triage:
2026.2.17 - Vulnerable version range:
<= 2026.2.17 - Planned patched version (next release):
2026.2.18
Remediation
- Reject symlinks during skill packaging.
- Add regression tests for symlink file and symlink directory cases.
- Update packaging guidance to document the symlink restriction.
Fix Commit(s)
c275932aa4230fb7a8212fe1b9d2a18424874b3fee1d6427b544ccadd73e02b1630ea5c29ba9a9f0
Related PR
Release Process Note
patched_versions is pre-set to the planned next release (2026.2.18). Once npm openclaw@2026.2.18 is published, this advisory is ready to publish without additional edits.
Thanks @aether-ai-agent for reporting.
Czego dotyczy
Kliknij technologię, aby zobaczyć wszystkie dotyczące jej podatności.
| Platforma | Paczka | Podatne wersje | Poprawka w wersji |
|---|---|---|---|
| Paczka npm | openclaw | < 2026.2.19 | 2026.2.19 |
Odnośniki
- https://github.com/openclaw/openclaw/security/advisories/GHSA-r6h2-5gqq-v5v6
- https://nvd.nist.gov/vuln/detail/CVE-2026-27485
- https://github.com/openclaw/openclaw/pull/20796
- https://github.com/openclaw/openclaw/commit/c275932aa4230fb7a8212fe1b9d2a18424874b3f
- https://github.com/openclaw/openclaw/commit/ee1d6427b544ccadd73e02b1630ea5c29ba9a9f0
- https://github.com/openclaw/openclaw
- https://github.com/openclaw/openclaw/releases/tag/v2026.2.19
- Wektor CVSS
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N- Słabość (CWE)
CWE-61- Platforma
- npm
- Paczka
openclaw- Ujawniono
- 20.02.2026
- Aktualizacja
- 11.10.2026 10:22
Źródła i licencje
OSV / GitHub Advisory Database - GHSA-r6h2-5gqq-v5v6 - CC BY 4.0
Historia podatności: openclaw
Wszystkie opisane podatności tej paczki (Paczka npm), od najnowszej. Widać, czy to jednorazowa wpadka, czy paczka, której trzeba pilnować.
- Wszystkich wpisów
- 589
- Pierwsza → ostatnia
- 02.2026 10.2026
- Bez poprawki
- 9
- Wykorzystywana w atakach
- 0
Rozkład istotności
- Krytyczna 20
- Wysoka 215
- Średnia 300
- Niska 54
Ujawnienia w latach
- 2026: 589
-
OpenClaw: Reject symlinks in local skill packaging script ten wpis
Dowiedz się, które podatności dotyczą Twojej aplikacji
Po podłączeniu integracji DockRay i włączeniu raportowania oprogramowania DockRay porównuje zgłoszone wersje komponentów ze znanymi podatnościami i powiadamia o potwierdzonych dopasowaniach. Zakres zależy od obsługiwanej technologii i dostępnych biuletynów.