Skip to main content

TinyMCE EUVDEUVD-2026-32920

| CVE-2026-47760 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-05-28 GitHub_M GHSA-mh5m-5hw4-5c69
5.4
CVSS 3.1 · NVD
View

Attack ChainAIDerived

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

  1. Recon
    Obtain low-privilege account on host app
  2. Delivery
    Craft nested SVG payload bypassing sanitizer
  3. Exploit
    Submit content via TinyMCE editor
  4. Install
    Payload stored in application database
  5. C2
    Victim renders page containing payload
  6. Execute
    JavaScript executes in host origin
  7. Impact
    Hijack session or escalate privileges

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

Exploitation requires (1) a target application that embeds TinyMCE between 6.8.0 and 7.0.x and relies on the editor's built-in sanitizer rather than an additional server-side sanitization layer, (2) an attacker account with permission to submit editor content (PR:L), (3) a victim with an authenticated session who views or previews the attacker-supplied content in a browser (UI:R), and (4) the application must allow SVG markup to survive into the rendered output - deployments that already strip svg/foreignObject tags server-side are not exploitable. The scope change (S:C) means the impact lands on the hosting application's origin, not on TinyMCE itself, so the realistic blast radius depends on what privileges the victim's session holds in that hosting app.

Impact

The CVSS 3.1 vector AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N yields 8.7 (High), driven primarily by the scope change (S:C) - the editor sanitizes content that is later rendered in the parent application, so a successful XSS pivots into the hosting site's origin and impacts other users. PR:L means a low-privilege account that can submit editor content is sufficient, and UI:R reflects that a victim must view the malicious content. There is no EPSS score, KEV listing, or POC reference in the supplied intelligence, so real-world risk is currently theoretical but elevated by TinyMCE's massive install base and the fact that the GHSA advisory provides enough detail for a competent researcher to reproduce. No conflicting signals were observed between the CVSS vector and the description; both consistently describe an authenticated, user-interaction-dependent client-side attack.

Exploit ScenarioDerived

An attacker with a low-privilege account on a CMS, helpdesk, or collaboration platform that embeds vulnerable TinyMCE composes a comment or article containing a crafted SVG payload with nested elements that smuggle an event-handler attribute past the sanitizer. The malicious content is stored and later rendered to a moderator or administrator who views the page, triggering JavaScript execution in the host application's origin and enabling session theft, CSRF token exfiltration, or privilege escalation through admin-only API calls.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.0% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – May 28, 2026

Stored/reflected cross-site scripting in TinyMCE rich text editor versions 6.8.0 through 7.0.x allows authenticated users to inject and execute arbitrary JavaScript in the context of any application embedding the editor. The flaw stems from improper SVG namespace scope handling in the built-in sanitizer, letting nested-element payloads bypass attribute sanitization. No public exploit identified at time of analysis, but the issue is disclosed via a GitHub security advisory with a CVSS of 8.7 reflecting scope change to the embedding application.

RemediationAI

Vendor-released patch: TinyMCE 7.1.0 - upgrade all embedded instances to 7.1.0 or later as published in the upstream advisory at https://github.com/tinymce/tinymce/security/advisories/GHSA-mh5m-5hw4-5c69. Where an immediate upgrade is not possible, apply a server-side secondary sanitization pass on TinyMCE output using a hardened sanitizer (e.g., DOMPurify with SVG and MathML namespaces locked down) before persisting or rendering content, accepting that this may strip legitimate SVG markup users have authored; alternatively configure TinyMCE's valid_elements / invalid_elements to deny svg, foreignObject, and event-handler attributes, at the cost of losing inline SVG editing. Enforce a strict Content Security Policy (script-src without 'unsafe-inline' and with no permissive nonces echoed into editor output) to blunt the impact of any sanitizer bypass, noting CSP will not prevent same-origin DOM manipulation if inline scripts are otherwise permitted on the page.

Affected VersionsENISA

tinymce 6.0.0, < 7.1.0

Affected Packages

composer tinymce fix: 7.1.0
composer tinymce/tinymce fix: 7.1.0
npm tinymce fix: 7.1.0
npm tinymce/tinymce fix: 7.1.0
nuget tinymce fix: 7.1.0
nuget tinymce/tinymce fix: 7.1.0
euvd tinymce fix: 7.1.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, npm, nuget and 1 more

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

Technical ContextAI · show details

TinyMCE is a widely deployed WYSIWYG editor (cpe:2.3:a:tinymce:tinymce) embedded in CMSes, SaaS dashboards, ticketing systems, and email composers. The vulnerability is a CWE-79 (Improper Neutralization of Input During Web Page Generation) caused by namespace confusion when the sanitizer processes SVG subtrees: SVG allows XML namespaces and foreignObject content where HTML parsing rules differ from the surrounding document, and when nested elements cross these boundaries the attribute allow/deny logic does not re-evaluate scope correctly. As a result, event handler attributes (e.g., onload, onerror) or javascript: URIs on otherwise-stripped elements survive sanitization and are interpreted by the browser when the content is later rendered.

Know when Tinymce 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

NVD PRIMARY 5.4 MEDIUM
AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

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

Lifecycle Timeline

3
Severity Changed
Oct 14, 2026 - 20:23 NVD
HIGH MEDIUM
CVSS changed
Oct 14, 2026 - 20:23 NVD
8.7 (HIGH) 5.4 (MEDIUM)
Patch available
May 28, 2026 - 17:01 EUVD

DescriptionNVD

TinyMCE is an open source rich text editor. From 6.8.0 to before 7.1.0, TinyMCE contains an XSS vulnerability caused by improper SVG namespace scope handling in the sanitizer. A crafted payload using nested elements can bypass attribute sanitization and execute arbitrary JavaScript. This vulnerability is fixed in 7.1.0.

Executive ViewAI

Why It Matters

Any organization using TinyMCE rich-text editor versions 6.8.0 through 7.0.x faces elevated risk of user account compromise and data theft. The vulnerability allows authenticated users to inject malicious code that executes within the embedding application, potentially exposing customer data, compromising user sessions, and damaging organizational trust.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include: (1) Disable SVG element handling in TinyMCE if not required for your use case; (2) Implement application-layer input validation and content filtering; (3) Deploy Content Security Policy headers to restrict JavaScript execution context; (4) Limit editor access to authenticated users in low-risk internal environments; (5) Evaluate downgrade to TinyMCE versions prior to 6.8.0.

Threat Intelligence Overview

EPSS Score
0.0%
Top 90% exploitable
Threat Intel
1
1 source
Social Media
2
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA CIRCL GitHub VulDB

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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

27
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +27
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-2026-116675 HIGH POC
8.5 Oct 27

Stored cross-site scripting in the TinyMCE rich text editor's media plugin lets a low-privileged authenticated content a

CVE-2024-21911 MEDIUM POC
6.1 Jan 03

TinyMCE versions before 5.6.0 are affected by a stored cross-site scripting vulnerability. Rated medium severity (CVSS 6

CVE-2024-21910 MEDIUM POC
6.1 Jan 03

TinyMCE versions before 5.10.0 are affected by a cross-site scripting vulnerability. Rated medium severity (CVSS 6.1), t

CVE-2024-21908 MEDIUM POC
6.1 Jan 03

TinyMCE versions before 5.9.0 are affected by a stored cross-site scripting vulnerability. Rated medium severity (CVSS 6

CVE-2020-17480 MEDIUM POC
6.1 Aug 10

TinyMCE before 4.9.7 and 5.x before 5.1.4 allows XSS in the core parser, the paste plugin, and the visualchars plugin by

CVE-2019-1010091 MEDIUM POC
6.1 Jul 17

tinymce 4.7.11, 4.7.12 is affected by: CWE-79: Improper Neutralization of Input During Web Page Generation. Rated medium

CVE-2012-3414 MEDIUM POC
4.3 Jul 19

Cross-site scripting (XSS) vulnerability in swfupload.swf in SWFUpload 2.2.0.1 and earlier, as used in WordPress before

CVE-2013-2204 MEDIUM POC
4.3 Jul 08

moxieplayer.as in Moxiecode moxieplayer, as used in the TinyMCE Media plugin in WordPress before 3.5.2 and other product

CVE-2012-4230 MEDIUM POC
4.3 Apr 25

The bbcode plugin in TinyMCE 3.5.8 does not properly enforce the TinyMCE security policy for the (1) encoding directive

CVE-2014-3845 MEDIUM
6.8 May 22

Cross-site request forgery (CSRF) vulnerability in the TinyMCE Color Picker plugin before 1.2 for WordPress allows remot

CVE-2024-29881 MEDIUM
6.1 Mar 26

TinyMCE is an open source rich text editor. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable

CVE-2024-29203 MEDIUM
6.1 Mar 26

TinyMCE is an open source rich text editor. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable

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