Every CVE Search/ Get API key

CVE-2024-29203

TinyMCE Cross-Site Scripting (XSS) vulnerability in handling iframes

4.3 MediumFix available

TinyMCE is an open source rich text editor. A cross-site scripting (XSS) vulnerability was discovered in TinyMCE’s content insertion code. This allowed iframe elements containing malicious code to execute when inserted into the editor. These iframe elements are restricted in their permissions by same-origin browser protections, but could still trigger operations such as downloading of malicious assets. This vulnerability is fixed in 6.8.1.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
Low
Integrity
None
Availability
None

Exploit likelihood

0.71%Up 0.7 points since Mar 27, 2024
90%50%10%1%

What each source reports

CVE List Score used 4.3

TinyMCE Cross-Site Scripting (XSS) vulnerability in handling iframes

TinyMCE is an open source rich text editor. A cross-site scripting (XSS) vulnerability was discovered in TinyMCE’s content insertion code. This allowed iframe elements containing malicious code to execute when inserted into the editor. These iframe elements are restricted in their permissions by same-origin browser protections, but could still trigger operations such as downloading of malicious assets. This vulnerability is fixed in 6.8.1.

Record
CVE-2024-29203
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
Weakness
CWE-79
Updated
2026-11-02
EUVDEUVD-2024-0810 4.3

TinyMCE is an open source rich text editor. A cross-site scripting (XSS) vulnerability was discovered in TinyMCE’s content insertion code. This allowed iframe elements containing malicious code to execute when inserted into the editor. These iframe elements are restricted in their permissions by same-origin browser protections, but could still trigger operations such as downloading of malicious assets. This vulnerability is fixed in 6.8.1.

Record
EUVD-2024-0810
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
Updated
2026-11-03
GitHub AdvisoriesGHSA-438c-3975-5x3f 4.3

TinyMCE Cross-Site Scripting (XSS) vulnerability in handling iframes

Impact

A cross-site scripting (XSS) vulnerability was discovered in TinyMCE’s content insertion code. This allowed iframe elements containing malicious code to execute when inserted into the editor. These iframe elements are restricted in their permissions by same-origin browser protections, but could still trigger operations such as downloading of malicious assets.

Fix

TinyMCE 6.8.1 introduced a new sandbox_iframes boolean option which adds the sandbox="" attribute to every iframe element by default when enabled. This will prevent cross-origin, and in special cases same-origin, XSS by embedded resources in iframe elements. From TinyMCE 7.0.0 onwards the default value of this option is true.

In TinyMCE 7.0.0 a new sandbox_iframes_exclusions option was also added, allowing a list of domains to be specified that should be excluded from having the sandbox="" attribute applied when the sandbox_iframes option is enabled. By default, this option is set to an array of domains that are provided in embed code by popular websites. To sandbox iframe elements from every domain, set this option to [].

Workarounds

The HTTP Content-Security-Policy (CSP) frame-src or object-src can be configured to restrict or block the loading of unauthorized URLS. Refer to the TinyMCE Content Security Policy Guide.

References

Record
GHSA-438c-3975-5x3f
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
Weakness
CWE-79
Updated
2026-11-02
GitHub AdvisoriesGHSA-5vm8-hhgr-jcjp No score

Cross-site scripting vulnerability in TinyMCE

Impact

A cross-site scripting (XSS) vulnerability was discovered in the URL sanitization logic of the core parser for form elements. The vulnerability allowed arbitrary JavaScript execution when inserting a specially crafted piece of content into the editor using the clipboard or APIs, and then submitting the form. However, as TinyMCE does not allow forms to be submitted while editing, the vulnerability could only be triggered when the content was previewed or rendered outside of the editor. This impacts all users who are using TinyMCE 5.7.0 or lower.

Patches

This vulnerability has been patched in TinyMCE 5.7.1 by improved URL sanitization logic.

Workarounds

To work around this vulnerability, either:

  • Upgrade to TinyMCE 5.7.1 or higher
  • Manually sanitize form URL attributes using a TinyMCE node filter.
  • Disable form elements in your content using the invalid_elements setting.

Example: Sanitizing using a node filter

editor.parser.addNodeFilter('form', function(nodes) {
  nodes.forEach(function(node) {
    if (node.attributes) {
      node.attributes.forEach(function(attr) {
        var name = attr.name;
        var value = attr.value;
        // Sanitize the attribute value here or remove it entirely
        var sanitizedValue = ...;
        node.attr(name, santizedValue);
      });
    }
  });
});

Example: Using invalid_elements

invalid_elements: 'form'

Acknowledgements

Tiny Technologies would like to thank Mikhail Khramenkov at Solar Security Research Team for discovering this vulnerability.

References

https://www.tiny.cloud/docs/release-notes/release-notes571/#securityfixes

For more information

If you have any questions or comments about this advisory:

Record
GHSA-5vm8-hhgr-jcjp
Weakness
CWE-79
Updated
2026-11-02
NVD 4.3

TinyMCE is an open source rich text editor. A cross-site scripting (XSS) vulnerability was discovered in TinyMCE’s content insertion code. This allowed iframe elements containing malicious code to execute when inserted into the editor. These iframe elements are restricted in their permissions by same-origin browser protections, but could still trigger operations such as downloading of malicious assets. This vulnerability is fixed in 6.8.1.

Record
CVE-2024-29203
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Weakness
CWE-79
Updated
2026-11-02
OSV 4.3

TinyMCE Cross-Site Scripting (XSS) vulnerability in handling iframes

TinyMCE is an open source rich text editor. A cross-site scripting (XSS) vulnerability was discovered in TinyMCE’s content insertion code. This allowed iframe elements containing malicious code to execute when inserted into the editor. These iframe elements are restricted in their permissions by same-origin browser protections, but could still trigger operations such as downloading of malicious assets. This vulnerability is fixed in 6.8.1.

Record
CVE-2024-29203
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
Weakness
CWE-79
Updated
2026-11-02
Show 5 moreShow less
OSVGHSA-438c-3975-5x3f 4.3

TinyMCE Cross-Site Scripting (XSS) vulnerability in handling iframes

Impact

A cross-site scripting (XSS) vulnerability was discovered in TinyMCE’s content insertion code. This allowed iframe elements containing malicious code to execute when inserted into the editor. These iframe elements are restricted in their permissions by same-origin browser protections, but could still trigger operations such as downloading of malicious assets.

Fix

TinyMCE 6.8.1 introduced a new sandbox_iframes boolean option which adds the sandbox="" attribute to every iframe element by default when enabled. This will prevent cross-origin, and in special cases same-origin, XSS by embedded resources in iframe elements. From TinyMCE 7.0.0 onwards the default value of this option is true.

In TinyMCE 7.0.0 a new sandbox_iframes_exclusions option was also added, allowing a list of domains to be specified that should be excluded from having the sandbox="" attribute applied when the sandbox_iframes option is enabled. By default, this option is set to an array of domains that are provided in embed code by popular websites. To sandbox iframe elements from every domain, set this option to [].

Workarounds

The HTTP Content-Security-Policy (CSP) frame-src or object-src can be configured to restrict or block the loading of unauthorized URLS. Refer to the TinyMCE Content Security Policy Guide.

References

Record
GHSA-438c-3975-5x3f
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
Weakness
CWE-79
Updated
2026-11-02
OSVUBUNTU-CVE-2024-29203 4.3

TinyMCE is an open source rich text editor. A cross-site scripting (XSS) vulnerability was discovered in TinyMCE’s content insertion code. This allowed iframe elements containing malicious code to execute when inserted into the editor. These iframe elements are restricted in their permissions by same-origin browser protections, but could still trigger operations such as downloading of malicious assets. This vulnerability is fixed in 6.8.1.

Record
UBUNTU-CVE-2024-29203
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVCLSA-2026-1777423184 No score

TuxCare security update for tinymce (12 CVEs)

TuxCare rebuilt tinymce to address 12 CVEs. Fixed in 4.9.11-tuxcare.1.

Record
CLSA-2026-1777423184
Updated
2026-11-02
OSVCLSA-2026-1777423186 No score

TuxCare security update for tinymce (4 CVEs)

TuxCare rebuilt tinymce to address 4 CVEs. Fixed in 5.10.9-tuxcare.1.

Record
CLSA-2026-1777423186
Updated
2026-11-02
OSVGHSA-5vm8-hhgr-jcjp No score

Cross-site scripting vulnerability in TinyMCE

Impact

A cross-site scripting (XSS) vulnerability was discovered in the URL sanitization logic of the core parser for form elements. The vulnerability allowed arbitrary JavaScript execution when inserting a specially crafted piece of content into the editor using the clipboard or APIs, and then submitting the form. However, as TinyMCE does not allow forms to be submitted while editing, the vulnerability could only be triggered when the content was previewed or rendered outside of the editor. This impacts all users who are using TinyMCE 5.7.0 or lower.

Patches

This vulnerability has been patched in TinyMCE 5.7.1 by improved URL sanitization logic.

Workarounds

To work around this vulnerability, either:

  • Upgrade to TinyMCE 5.7.1 or higher
  • Manually sanitize form URL attributes using a TinyMCE node filter.
  • Disable form elements in your content using the invalid_elements setting.

Example: Sanitizing using a node filter

editor.parser.addNodeFilter('form', function(nodes) {
  nodes.forEach(function(node) {
    if (node.attributes) {
      node.attributes.forEach(function(attr) {
        var name = attr.name;
        var value = attr.value;
        // Sanitize the attribute value here or remove it entirely
        var sanitizedValue = ...;
        node.attr(name, santizedValue);
      });
    }
  });
});

Example: Using invalid_elements

invalid_elements: 'form'

Acknowledgements

Tiny Technologies would like to thank Mikhail Khramenkov at Solar Security Research Team for discovering this vulnerability.

References

https://www.tiny.cloud/docs/release-notes/release-notes571/#securityfixes

For more information

If you have any questions or comments about this advisory:

Record
GHSA-5vm8-hhgr-jcjp
Weakness
CWE-79
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
tinymce
npm
before 6.8.1
6.8.1
TinyMCE
NuGet
before 6.8.1
6.8.1
tinymce/tinymce
Packagist
before 6.8.1
6.8.1
tinymce
npm
before 5.7.1
5.7.1
tinymce
TuxCare:npm
From an advisory covering 11 CVEs
4.9.11-tuxcare.0 up to 4.9.11-tuxcare.1, plus listed versions
4.9.11
4.9.11-tuxcare.1
tinymce
TuxCare:npm
From an advisory covering 4 CVEs
5.10.9-tuxcare.0 up to 5.10.9-tuxcare.1, plus listed versions
5.10.9
5.10.9-tuxcare.1
TinyMCE
NuGet
before 6.8.1, plus listed versions
3.4.3.23.4.43.4.53.4.73.5.0
Show 45 moreShow less
3.5.0.13.5.13.5.1.13.5.23.5.33.5.43.5.4.13.5.53.5.63.5.73.5.84.0.04.0.14.0.104.0.114.0.134.0.144.0.154.0.164.0.174.0.184.0.194.0.24.0.204.0.214.0.224.0.234.0.244.0.254.0.264.0.274.0.284.0.44.0.54.0.64.0.84.0.94.1.04.1.14.1.104.1.24.1.34.1.44.1.54.1.6
6.8.1
tinymce/tinymce
Packagist
before 6.8.1, plus listed versions
4.0.04.0.14.0.104.0.114.0.12
Show 45 moreShow less
4.0.134.0.144.0.154.0.164.0.174.0.184.0.194.0.24.0.204.0.214.0.224.0.234.0.244.0.254.0.264.0.274.0.284.0.34.0.44.0.54.0.64.0.74.0.84.0.94.1.04.1.14.1.104.1.24.1.34.1.44.1.54.1.64.1.74.1.84.1.94.2.04.2.14.2.24.2.34.2.44.2.54.2.64.2.74.2.84.3.0
6.8.1
tinymce
Ubuntu:16.04:LTS
All versions, plus listed versions
3.4.8+dfsg0-1
None known
tinymce
Ubuntu:18.04:LTS
All versions, plus listed versions
3.4.8+dfsg0-2
None known
tinymce
Ubuntu:20.04:LTS
All versions, plus listed versions
3.4.8+dfsg0-2
None known

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2024-29203 is a medium vulnerability (CVSS 4.3) in Tiny Tinymce, published May 28, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.71%, the 53rd percentile. Fixed in tinymce 6.8.1.

References

Show 6 moreShow less
This page doesn't list everything

Left out here: 301 versions. The JSON record has them.

MoveEnter Open