Skip to main content

Etherpad EUVDEUVD-2026-62740

| CVE-2026-55085 CRITICAL
Cross-site Scripting (XSS) (CWE-79)
2026-08-19 GitHub_M
9.6
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain pad write access
  2. Delivery
    Import crafted .etherpad with malicious ol start
  3. Exploit
    Payload stored in attribute pool
  4. Execution
    Admin opens pad or /timeslider
  5. Persist
    svg onload executes in browser
  6. Impact
    Script runs in privileged session

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires (1) write access to a pad - anonymous on default Etherpad configurations, but restricted to authenticated users on instances that enforce login for editing; (2) the ability to submit a crafted .etherpad import so setPadRaw ingests a malicious attribute-pool entry (list:number1 with a chosen start), meaning the import feature must be reachable; (3) a space-free start value to satisfy the sink's \S+ capture (e.g. 1><svg/onload=...>); and (4) a victim, notably an administrator, subsequently opening the affected pad or its /timeslider view (UI:R). Limiting factors: exploitation is per-victim (each targeted user must view the pad), instances that disable import or gate write access with authentication materially reduce exposure, and versions 3.3.1 and later are not vulnerable.

Impact

The source CVSS 3.1 score is 9.6 (AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:L), reflecting network reach, low complexity, a scope change (script runs in a victim/admin browser context), and the requirement that a victim open the pad. Note a tension worth verifying: the vector uses PR:N (unauthenticated) while the description states 'any user with write access to a pad' must store the payload - this is reconcilable because default Etherpad deployments allow anonymous pad editing, but hardened instances that gate write access behind authentication effectively raise the bar to PR:L, so real-world risk depends on deployment. No EPSS score, KEV listing, or SSVC decision data was provided, so exploitation probability and automatability cannot be quantified from the input. There is no public exploit identified at time of analysis and no evidence of active exploitation; however, the impact is genuinely high because a low-privileged pad editor can escalate to full compromise of an administrator's session. This is a real priority for any multi-user or public Etherpad instance, especially where import is enabled.

Exploit ScenarioDerived

An attacker with write access to a pad (anonymous by default on an unhardened instance) imports a crafted .etherpad file whose attribute pool defines a numbered-list line with a start value of 1><svg/onload=alert(document.domain)>. The value is stored and, when a moderator or administrator later opens the pad or the /timeslider replay view, the browser parses the injected markup and runs the attacker's JavaScript in that privileged session. The vendor's own regression test demonstrates exactly this payload, so a working proof-of-concept effectively exists in the fix commit even though no separate public exploit was catalogued.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 19, 2026

Stored cross-site scripting in Etherpad before 3.3.1 lets any user with write access to a pad execute arbitrary JavaScript in the browser of anyone - including an administrator - who later opens the pad or its /timeslider view. The root cause is the numbered-list rendering path interpolating an attacker-controlled ordered-list 'start' value, sourced from a crafted .etherpad import, directly into unquoted markup assigned to innerHTML. A vendor patch exists in 3.3.1; no public exploit identified at time of analysis, though the vendor's regression test embeds a working payload.

RemediationAI

Vendor-released patch: upgrade to Etherpad 3.3.1, which coerces the ordered-list start value to an integer and HTML-escapes it before rendering (fix commit d828185efcac9abc2e46e6da1c171393500fa319 via PR https://github.com/ether/etherpad/pull/7937; advisory https://github.com/ether/etherpad/security/advisories/GHSA-f7h5-v9hm-548j). If immediate upgrade is not possible, disable or restrict the pad import feature, since the .etherpad import via ImportEtherpad.setPadRaw is the injection entry point - the trade-off is loss of import/migration functionality for legitimate users. Additionally require authentication for pad write access rather than allowing anonymous editing, which removes the unauthenticated attack surface at the cost of open collaboration, and consider a Content-Security-Policy forbidding inline script execution to blunt the payload, noting that some Etherpad plugins may rely on inline handlers and could break.

Affected VersionsENISA

etherpad < 3.3.1

Affected Packages

euvd etherpad fix: 3.3.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Etherpad is a Node.js/TypeScript real-time collaborative document editor whose text lines carry formatting via an 'attribute pool.' The client-side sink src/static/js/domline.ts (result.appendSpan) builds an ordered-list element by concatenating the numbered-list 'start' value into an <ol start=...> tag with no quoting and no HTML-escaping, then assigns the resulting string to node.innerHTML. Because src/node/utils/ImportEtherpad.ts (setPadRaw) trusts attribute-pool values (e.g. list:number1 with a chosen start) from an imported .etherpad file, an attacker controls that interpolated value. This is a classic CWE-79 (Improper Neutralization of Input During Web Page Generation) DOM-sink injection: a value such as 1><svg/onload=alert(document.domain)> breaks out of the unquoted attribute and is parsed as live markup. The single affected CPE is cpe:2.3:a:ether:etherpad. The fix coerces start to an integer via Number.parseInt and applies Security.escapeHTMLAttribute defensively.

Know when Etherpad gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 9.6 CRITICAL
AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:L
vuln.today AI 9.6 CRITICAL

Default Etherpad allows anonymous pad writes (PR:N); a victim must open the pad (UI:R); script escapes into another user's/admin session (S:C) with high confidentiality and integrity impact and limited availability impact.

3.1 AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Changed
Confidentiality
High
Integrity
High
Availability
Low

Lifecycle Timeline

2
Patch available
Aug 19, 2026 - 20:03 EUVD
CVE Published
Aug 19, 2026 - 19:34 cve.org
CRITICAL 9.6

DescriptionCVE.org

Etherpad is a real-time collaborative editor. Prior to 3.3.1, result.appendSpan in src/static/js/domline.ts interpolates the start attribute of a numbered list directly into an unquoted ol start attribute before assigning the generated markup to node.innerHTML. ImportEtherpad.setPadRaw in src/node/utils/ImportEtherpad.ts accepts attacker-controlled attribute-pool values from a crafted .etherpad import, including list:number1 and a malicious start value. Any user with write access to a pad can store markup that executes as cross-site scripting when another user opens the pad or /timeslider, including when an administrator views the pad. This issue is fixed in version 3.3.1.

Executive ViewAI

Why It Matters

Etherpad versions prior to 3.3.1 contain a stored cross-site scripting vulnerability that allows any user with write access to inject malicious code into collaborative documents, which then executes in the browsers of all users who view the affected pad, including administrators. This enables attackers to steal session credentials, compromise administrative accounts, and manipulate business-critical documents. Organizations relying on Etherpad for team collaboration face immediate risk of unauthorized data access and integrity compromise.

Business Impact: Severe
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 70% exploitable
Prevalence
Medium
popular self-hosted open-source collaborative editor, common but not ubiquitous
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
Very High
Technical Impact
Total

Priority Score

48
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +48
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2018-9845 CRITICAL POC
9.8 Apr 29

Etherpad Lite before 1.6.4 is exploitable for admin access. Rated critical severity (CVSS 9.8), this vulnerability is re

CVE-2021-34816 HIGH POC
7.2 Jul 21

An Argument Injection issue in the plugin management of Etherpad 1.8.13 allows privileged users to execute arbitrary cod

CVE-2021-34817 MEDIUM POC
6.1 Jul 19

A Cross-Site Scripting (XSS) issue in the chat component of Etherpad 1.8.13 allows remote attackers to inject arbitrary

CVE-2026-55089 CRITICAL
9.9 Aug 19

Privilege escalation to administrative API access in Etherpad 2.1.0 through 3.0.x lets any authenticated non-admin OAuth

CVE-2018-9326 CRITICAL
9.8 Apr 07

Etherpad 1.6.3 before 1.6.4 allows an attacker to execute arbitrary code. Rated critical severity (CVSS 9.8), this vulne

CVE-2018-6835 CRITICAL
9.8 Feb 08

node/hooks/express/apicalls.js in Etherpad Lite before v1.6.3 mishandles JSONP, which allows remote attackers to bypass

CVE-2021-43802 HIGH
8.8 Dec 09

Etherpad is a real-time collaborative editor. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable

CVE-2015-3297 HIGH
7.5 Jul 07

Directory traversal vulnerability in node/utils/Minify.js in Etherpad 1.1.1 through 1.5.2 allows remote attackers to rea

CVE-2018-9327 HIGH
8.1 Apr 07

Etherpad 1.5.x and 1.6.x before 1.6.4 allows an attacker to execute arbitrary code on the server. Rated high severity (C

CVE-2015-4085 HIGH
7.5 Sep 07

Directory traversal vulnerability in node/hooks/express/tests.js in Etherpad frontend tests before 1.6.1. Rated high sev

CVE-2018-9325 HIGH
7.5 Apr 07

Etherpad 1.5.x and 1.6.x before 1.6.4 allows an attacker to export all the existing pads of an instance without knowledg

CVE-2019-18209 MEDIUM
6.1 Oct 19

templates/pad.html in Etherpad-Lite 1.7.5 has XSS when the browser does not encode the path of the URL, as demonstrated

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy