CVE-2026-30587
Stored XSS in Seafile Server sdoc Editor Allows Remote Injection
Publication date: 2026-03-25
Last updated on: 2026-03-31
Assigner: MITRE
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| seafile | seafile_server | to 12.0.20 (exc) |
| seafile | seafile_server | 13.0.15 |
| seafile | seafile_server | 13.0.16 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-79 | The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability involves multiple Stored Cross-Site Scripting (XSS) issues in Seafile Server versions 13.0.15, 13.0.16-pro, 12.0.14 and earlier. It occurs because the Seadoc (sdoc) editor does not properly sanitize WebSocket messages that update document structures. As a result, authenticated remote attackers can inject malicious JavaScript code through the src attribute of embedded Excalidraw whiteboards or the href attribute of anchor tags.
How can this vulnerability impact me? :
The impact of this vulnerability is that an authenticated attacker can execute malicious JavaScript code within the context of the affected application. This can lead to unauthorized actions such as stealing user credentials, session hijacking, defacing content, or performing actions on behalf of other users.
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability, you should upgrade Seafile Server to a fixed version. The vulnerability is fixed in versions 13.0.17, 13.0.17-pro, and 12.0.20-pro.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
The CVE-2026-30587 vulnerability involves multiple stored Cross-Site Scripting (XSS) issues that allow attackers to inject malicious JavaScript payloads, potentially leading to full account takeover and execution of privileged actions.
Such security flaws can compromise the confidentiality and integrity of user data, which are critical requirements under common standards and regulations like GDPR and HIPAA.
Specifically, unauthorized access or data exfiltration resulting from this vulnerability could lead to violations of data protection obligations, including failure to protect personal or sensitive health information.
Therefore, organizations using affected versions of Seafile Server may face compliance risks if this vulnerability is exploited and not remediated.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
Detection of CVE-2026-30587 involves monitoring for exploitation attempts of stored Cross-Site Scripting (XSS) vulnerabilities in the Seafile Server's SeaDoc editor, specifically targeting WebSocket messages that update document structures.
Since the vulnerability exploits manipulation of WebSocket frames to inject malicious JavaScript payloads via the src attribute of Excalidraw whiteboards or href attributes of anchor tags, detection can focus on inspecting WebSocket traffic for suspicious payloads.
Suggested detection steps include:
- Capture and analyze WebSocket traffic between clients and the Seafile server to identify any messages containing suspicious 'javascript:' URIs or unexpected modifications to whiteboard src or anchor href attributes.
- Use network packet capture tools such as tcpdump or Wireshark to filter WebSocket frames on the relevant ports.
- Example tcpdump command to capture WebSocket traffic (assuming default Seafile ports):
- tcpdump -i <interface> -s 0 -w seafile_ws.pcap port 8000 or port 8082
- After capture, analyze the pcap file with Wireshark or tshark to inspect WebSocket frames for suspicious payloads containing 'javascript:' URIs or unexpected script injections.
- Additionally, review server logs and application logs for unusual document updates or errors related to SeaDoc editor components.
Note that no specific detection commands or signatures are provided in the available resources, so detection relies on manual inspection of WebSocket traffic and logs for anomalies consistent with the described attack vectors.