Etherpad: Stored XSS in HTML export via unescaped attribute-pool values
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| ether | etherpad | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Etherpad | Etherpad |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-2jp7-wwpg-3p9w | Etherpad has stored XSS in HTML export via unescaped attribute-pool values |
No CVSS v3.1
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.547% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Etherpad
Etherpad etherpad |
|
| Vendors & Products |
Etherpad
Etherpad etherpad |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Etherpad is a real-time collaborative editor. Prior to 3.3.0, getHTMLFromAtext in src/node/utils/ExportHtml.ts interpolates values from the exportHtmlAdditionalTagsWithData plugin hook into span data attributes without HTML attribute escaping. A pad editor can place an attacker-controlled value into the attribute pool through moveOpsToNewPool and AttributePool.putAttrib. When a bundled plugin such as ep_font_color or ep_font_size registers the hook, opening the resulting HTML export causes the value to execute as stored cross-site scripting in the Etherpad origin. This issue is fixed in version 3.3.0. | |
| Title | Etherpad: Stored XSS in HTML export via unescaped attribute-pool values | |
| Weaknesses | CWE-79 | |
| References |
| |
| Metrics |
cvssV4_0
|