Cross-site scripting vulnerabilities in old version of bundled TinyMCEGHSA-wqm8-jx8r-8rcq
MEDIUMGHSA-wqm8-jx8r-8rcq is a medium-severity (CVSS 5.4) vulnerability in silverstripe/admin. A fix is available for silverstripe/admin — see the affected versions and patch details below.
Real-World Exposure
silverstripe/adminReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Packagist packages — download data is not available via public APIs for these ecosystems.
Description
An old version of TinyMCE include an XSS vulnerability, which was patched in a later version. This was described by TinyMCE:
A cross-site scripting (XSS) vulnerability was discovered in the core parser. The vulnerability allowed arbitrary JavaScript execution when inserting a specially crafted piece of content into the editor via the clipboard or APIs. This impacts all users who are using TinyMCE 4.9.10 or lower and TinyMCE 5.4.0 or lower.
We reviewed the potential impact of this vulnerability within the context of Silverstripe CMS. We concluded this is a medium impact vulnerability given how TinyMCE is used by Silverstripe CMS.
Reported by: Developers at ACC
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐘Packagist | silverstripe/admin | all versions | 1.12.7composer require silverstripe/admin:^1.12.7 |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for silverstripe/admin, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update silverstripe/admin to 1.12.7 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-wqm8-jx8r-8rcq is resolved across your whole dependency graph.
Workarounds
Escape or sanitise the affected output on the server side rather than relying on client-side filtering, and add a Content-Security-Policy that blocks inline script execution so injected markup cannot run even if it reaches the page.
Frequently Asked Questions
Is GHSA-wqm8-jx8r-8rcq in your dependencies?
Find it across Packagist, including transitive dependencies.