October CMS has Stored XSS in Backend Editor Markup Classes
Published 14 Apr 2026 · Updated 5 May 2026
Affected packages
- Affected
- >=4.0.0 <4.1.10
- Fixed in
- 4.1.10
composer require october/system:^4.1.10- Affected
- <3.7.14
- Fixed in
- 3.7.14
composer require october/system:^3.7.14Details
A stored cross-site scripting (XSS) vulnerability was identified in the Backend Editor Settings. The Markup Classes fields (used for paragraph styles, inline styles, table styles, etc.) did not sanitize input to valid CSS class name characters. Malicious values were rendered unsanitized in Froala editor dropdown menus, allowing JavaScript execution when any user opened a RichEditor.
Impact
- Stored XSS via editor settings rendered in RichEditor dropdowns
- Could allow privilege escalation if a superuser opens any RichEditor (e.g., editing a blog post)
- Requires authenticated backend access with editor settings permissions
- Triggers on routine content editing operations
Patches
The vulnerability has been patched in v3.7.14 and v4.1.10. All users are encouraged to upgrade to the latest patched version.
Workarounds
If upgrading immediately is not possible:
- Restrict editor settings permissions to fully trusted administrators only
References
- Reported by Chris Alupului
Is GHSA-6qmh-j78v-ffp7 in any of your client repos?
Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected october/system, and gives you the command that fixes it.
References
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.