OpenClaw has stored XSS in exported session HTML viewer via markdown/raw-HTML rendering
Summary
The exported session HTML viewer allowed stored XSS when untrusted session content included raw HTML markdown tokens or unescaped metadata fields.
Impact
Opening a crafted exported HTML session could execute attacker-controlled JavaScript in the viewer context. This can expose session content in the page and enable phishing or UI spoofing in the trusted export view.
Affected Packages / Versions
- Package:
openclaw(npm) - Affected versions:
<= 2026.2.22-2 - Patched version (released):
>= 2026.2.23
Technical Details
The exporter rendered markdown with marked.parse(...) and inserted HTML via innerHTML, but did not override the html renderer token path. Raw HTML (for example <img ... onerror=...>) was passed through. Additional tree/header metadata fields were interpolated without escaping in the export template.
Reproduction
- Create a session containing content like
<img src=x onerror=alert(1)>. - Export the session to HTML.
- Open the exported file.
- Observe script execution from injected content.
Remediation
- Added a
markedhtml(token)renderer override that escapes raw HTML tokens. - Escaped previously unescaped tree/header metadata fields in the export template.
- Added image MIME sanitization for exported data-URL image rendering.
- Added regression tests for markdown/token and metadata escaping paths.
Fix Commit(s)
f8524ec77a3999d573e6c6b8a5055bf35c49a2e6
Release Process Note
patched_versions is pre-set to the released version (>= 2026.2.23). This advisory now reflects released fix version 2026.2.23.
OpenClaw thanks @allsmog 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.23 | 2026.2.23 |
Odnośniki
- Wektor CVSS
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N- Słabość (CWE)
CWE-79- Platforma
- npm
- Paczka
openclaw- Ujawniono
- 03.03.2026
- Aktualizacja
- 11.10.2026 10:22
Źródła i licencje
OSV / GitHub Advisory Database - GHSA-r294-2894-92j3 - 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
- 588
- Pierwsza → ostatnia
- 02.2026 07.2026
- Bez poprawki
- 9
- Wykorzystywana w atakach
- 0
Rozkład istotności
- Krytyczna 20
- Wysoka 215
- Średnia 299
- Niska 54
Ujawnienia w latach
- 2026: 588
-
OpenClaw has stored XSS in exported session HTML viewer via markdown/raw-HTML rendering 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.