docs/releases/6.3.8.md
March 3, 2026
---
local:
depth: 1
---
This release addresses a stored cross-site scripting (XSS) vulnerability on rendering TableBlock blocks within a StreamField. A user with access to create or edit pages containing TableBlock StreamField blocks is able to set specially-crafted class attributes on the block which run arbitrary JavaScript code when the page is viewed. When viewed by a user with higher privileges, this could lead to performing actions with that user's credentials. The vulnerability is not exploitable by an ordinary site visitor without access to the Wagtail admin, and only affects sites using TableBlock.
Many thanks to Guan Chenxian for reporting this issue. For further details, please see the CVE-2026-28222 security advisory.
This release addresses a stored cross-site scripting (XSS) vulnerability on confirmation messages within the wagtail.contrib.simple_translation module. A user with access to the Wagtail admin area may create a page with a specially-crafted title which, when another user performs the "Translate" action, causes arbitrary JavaScript code to run. This could lead to performing actions with that user's credentials. The vulnerability is not exploitable by an ordinary site visitor without access to the Wagtail admin.
Many thanks to Guan Chenxian for reporting this issue. For further details, please see the CVE-2026-28223 security advisory.
django.contrib.messages notification messagesNotification messages created through the django.contrib.messages module are now escaped according to Django's automatic HTML escaping mechanism when displayed within the Wagtail admin area. In most cases this is desirable to prevent cross-site scripting attacks; however, if your project makes intentional use of HTML markup within notification messages, this must now be passed as a safe string, through the use of a function such as format_html.