CVE-2021-32681
June 17, 2021
Wagtail is an open source content management system built on Django. A cross-site scripting vulnerability exists in versions 2.13-2.13.1, versions 2.12-2.12.4, and versions prior to 2.11.8. When the "{% include_block %}" template tag is used to output the value of a plain-text StreamField block ("CharBlock", "TextBlock" or a similar user-defined block derived from "FieldBlock"), and that block does not specify a template for rendering, the tag output is not properly escaped as HTML. This could allow users to insert arbitrary HTML or scripting. This vulnerability is only exploitable by users with the ability to author StreamField content (i.e. users with 'editor' access to the Wagtail admin). Patched versions have been released as Wagtail 2.11.8 (for the LTS 2.11 branch), Wagtail 2.12.5, and Wagtail 2.13.2 (for the current 2.13 branch). As a workaround, site implementors who are unable to upgrade to a current supported version should audit their use of "{% include_block %}" to ensure it is not used to output "CharBlock" / "TextBlock" values with no associated template. Note that this only applies where "{% include_block %}" is used directly on that block (uses of "include_block" on a block containing a CharBlock / TextBlock, such as a StructBlock, are unaffected). In these cases, the tag can be replaced with Django's "{{ ... }}" syntax - e.g. "{% include_block my_title_block %}" becomes "{{ my_title_block }}".
Affected Packages
wagtail (PYTHON):
Affected version(s) >=0.1 <2.11.8Fix Suggestion:
Update to version 2.11.8wagtail (PYTHON):
Affected version(s) >=2.12 <2.12.5Fix Suggestion:
Update to version 2.12.5wagtail (PYTHON):
Affected version(s) >=2.13 <2.13.2Fix Suggestion:
Update to version 2.13.2Additional Notes
The description of this vulnerability differs from MITRE.
Related ResourcesĀ (7)
Do you need more information?
Contact UsCVSS v4
Base Score:
5.1
Attack Vector
NETWORK
Attack Complexity
LOW
Attack Requirements
NONE
Privileges Required
LOW
User Interaction
PASSIVE
Vulnerable System Confidentiality
LOW
Vulnerable System Integrity
LOW
Vulnerable System Availability
NONE
Subsequent System Confidentiality
LOW
Subsequent System Integrity
LOW
Subsequent System Availability
NONE
CVSS v3
Base Score:
5.4
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
LOW
User Interaction
REQUIRED
Scope
CHANGED
Confidentiality
LOW
Integrity
LOW
Availability
NONE
CVSS v2
Base Score:
3.5
Access Vector
NETWORK
Access Complexity
MEDIUM
Authentication
SINGLE
Confidentiality Impact
NONE
Integrity Impact
PARTIAL
Availability Impact
NONE
Weakness Type (CWE)
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
EPSS
Base Score:
0.29