# Document Embedder – let visitors read files without downloading <= 2.4.0 - Authenticated (Contributor+) Stored Cross-Site Scripting via Document Embed Block 'doc' Attribute

- **ID:** WPSEC-2026-1210
- **Plugin:** Document Embedder – let visitors read files without downloading (`document-emberdder`), https://wordpress.org/plugins/document-emberdder/
- **Affected versions:** all versions before 2.4.1
- **Fixed in:** 2.4.1 (Update to 2.4.1 or later.)
- **Severity:** Medium 6.4 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N)
- **Weakness:** CWE-79
- **Usage among sites WPSec scans:** plugin Low, affected versions Low (as of 2026-10-18)
- **Attack surface analysis:** https://attacksurface.wpsec.com/plugin/document-emberdder
- **Fix released:** 2026-10-17
- **Published:** 2026-10-18
- **URL:** https://wpsec.com/vuln/WPSEC-2026-1210/

## Description

The Document Embedder plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the Document Embed block's 'doc' attribute in all versions up to, and including, 2.4.0 due to insufficient validation of the URL scheme before the value is used as a link href, iframe/image source, or window location by the front-end viewer. This makes it possible for authenticated attackers, with contributor-level access and above, to store 'javascript:' URLs in block attributes. The injected scripts execute when a user views the page or clicks the document's download button.

## References

- https://wpsec.com/vuln/WPSEC-2026-1210/
- https://plugins.svn.wordpress.org/document-emberdder/tags/2.4.1/
- https://wordpress.org/plugins/document-emberdder/

Source: WPSec, https://wpsec.com/vuln/WPSEC-2026-1210/

License: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Free to use, share and adapt, also commercially, if you credit WPSec and link to this advisory.
