CVE-2020-6817: High severity mozilla bleach vulnerability
Impact
bleach.clean behavior parsing style attributes could result in a regular expression denial of service (ReDoS).
Calls to bleach.clean with an allowed tag with an allowed style attribute are vulnerable to ReDoS. For example, bleach.clean(..., attributes={'a': ['style']}).
Patches
3.1.4
Workarounds
do not whitelist the style attribute in bleach.clean calls
limit input string length
References
https://bugzilla.mozilla.org/showbug.cgi?id=1623633 https://www.regular-expressions.info/redos.html https://blog.r2c.dev/posts/finding-python-redos-bugs-at-scale-using-dlint-and-r2c/ https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6817
Credits
Reported by schwag09 of r2c
For more information If you have any questions or comments about this advisory:
Open an issue at https://github.com/mozilla/bleach/issues Email us at security@mozilla.org
Other sources
bleach.clean behavior parsing style attributes could result in a regular expression denial of service (ReDoS). Calls to bleach.clean with an allowed tag with an allowed style attribute are vulnerable to ReDoS. For example, bleach.clean(..., attributes={'a': ['style']}).
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2020-6817?
CVE-2020-6817 has been classified as a moderate severity vulnerability due to its potential for regular expression denial of service (ReDoS).
How do I fix CVE-2020-6817?
To fix CVE-2020-6817, upgrade your Bleach package to version 3.1.4 or later.
Which versions of Bleach are affected by CVE-2020-6817?
Bleach versions prior to 3.1.4 are affected by CVE-2020-6817.
What type of vulnerability is CVE-2020-6817?
CVE-2020-6817 is a regular expression denial of service (ReDoS) vulnerability.
In which scenarios does CVE-2020-6817 occur?
CVE-2020-6817 occurs when using bleach.clean with allowed tags that include an allowed style attribute.