Craft CMS has Stored XSS in Table Field in its "Row Heading" Column Type
Package
Affected versions
>= 4.5.0-beta.1, <= 4.16.18
>= 5.0.0-RC1, <= 5.8.22
Patched versions
4.16.19
5.8.23
Description
Published to the GitHub Advisory Database
Feb 25, 2026
Reviewed
Feb 25, 2026
Last updated
Feb 25, 2026
A stored Cross-site Scripting (XSS) vulnerability exists in the
editableTable.twigcomponent when using theRow Headingcolumn type. The application fails to sanitize input within row headings, allowing an attacker to execute arbitrary JavaScript when another user views a page with the malicious table field.Prerequisites
allowAdminChangesmust be enabled in production, which is against security recommendations.Steps to Reproduce
Row HeadingStatic RowsResources
craftcms/cms@7b372de
References