Every CVE Search/ Get API key

CVE-2020-6816

Bleach vulnerable to mutation XSS via whitelisted math or svg and raw tag

6.1 MediumFix available

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
Low
Integrity
Low
Availability
None

Exploit likelihood

1.34%Up 0.3 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 6.1

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Record
CVE-2020-6816
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
CVSS 2.0
4.3 MediumAV:N/AC:M/Au:N/C:N/I:P/A:N
Weakness
CWE-79
Updated
2026-11-02
CVE List No score

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Record
CVE-2020-6816
Updated
2026-11-02
EUVDEUVD-2020-0055 No score

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Record
EUVD-2020-0055
Updated
2026-11-03
GitHub AdvisoriesGHSA-m6xf-fq7q-8743 5.3

Bleach vulnerable to mutation XSS via whitelisted math or svg and raw tag

Impact

A mutation XSS affects users calling bleach.clean with all of:

  • the svg or math in the allowed/whitelisted tags
  • an RCDATA tag (see below) in the allowed/whitelisted tags
  • the keyword argument strip=False

Patches

Users are encouraged to upgrade to bleach v3.1.2 or greater.

Workarounds

  • modify bleach.clean calls to use strip=True, or not whitelist math or svg tags and one or more of the following tags:
script
noscript
style
noframes
xmp
noembed
iframe

References

Credits

  • Reported by Yaniv Nizry from the CxSCA AppSec group at Checkmarx

For more information

If you have any questions or comments about this advisory:

Record
GHSA-m6xf-fq7q-8743
CVSS 4.0
5.3 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Weakness
CWE-79
Updated
2026-11-02
OSVALPINE-CVE-2020-6816 6.1

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Record
ALPINE-CVE-2020-6816
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-03
OSV 6.1

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Record
CVE-2020-6816
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
Show 10 moreShow less
OSVDEBIAN-CVE-2020-6816 6.1

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Record
DEBIAN-CVE-2020-6816
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVGHSA-m6xf-fq7q-8743 5.3

Bleach vulnerable to mutation XSS via whitelisted math or svg and raw tag

Impact

A mutation XSS affects users calling bleach.clean with all of:

  • the svg or math in the allowed/whitelisted tags
  • an RCDATA tag (see below) in the allowed/whitelisted tags
  • the keyword argument strip=False

Patches

Users are encouraged to upgrade to bleach v3.1.2 or greater.

Workarounds

  • modify bleach.clean calls to use strip=True, or not whitelist math or svg tags and one or more of the following tags:
script
noscript
style
noframes
xmp
noembed
iframe

References

Credits

  • Reported by Yaniv Nizry from the CxSCA AppSec group at Checkmarx

For more information

If you have any questions or comments about this advisory:

Record
GHSA-m6xf-fq7q-8743
CVSS 4.0
5.3 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Weakness
CWE-79
Updated
2026-11-02
OSVUBUNTU-CVE-2020-6816 6.1

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Record
UBUNTU-CVE-2020-6816
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVMGASA-2020-0176 No score

Updated python-bleach packages fix security vulnerability

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False. (CVE-2020-6816)

Regular expression denial of service. (CVE-2020-6817)

Record
MGASA-2020-0176
Updated
2026-11-02
OSVopenSUSE-SU-2021:0552-1 No score

Security update for python-bleach

This update for python-bleach fixes the following issues:

  • CVE-2021-23980: Fixed mutation XSS on bleach.clean with specific combinations of allowed tags (boo#1184547)

Update to 3.1.5:

  • replace missing setuptools dependency with packaging. Thank you Benjamin Peterson.

Update to 3.1.4 (boo#1168280, CVE-2020-6817):

  • 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 were vulnerable to ReDoS. For example, bleach.clean(..., attributes={'a': ['style']}).
  • Style attributes with dashes, or single or double quoted values are cleaned instead of passed through.

update to 3.1.3 (boo#1167379, CVE-2020-6816):

  • Add relative link to code of conduct. (#442)
  • Drop deprecated 'setup.py test' support. (#507)
  • Fix typo: curren -> current in tests/test_clean.py (#504)
  • Test on PyPy 7
  • Drop test support for end of life Python 3.4
  • bleach.clean behavior parsing embedded MathML and SVG content with RCDATA tags did not match browser behavior and could result in a mutation XSS. Calls to bleach.clean with strip=False and math or svg tags and one or more of the RCDATA tags script, noscript, style, noframes, iframe, noembed, or xmp in the allowed tags whitelist were vulnerable to a mutation XSS.
Record
openSUSE-SU-2021:0552-1
Updated
2026-11-02
OSVopenSUSE-SU-2021:0571-1 No score

Security update for python-bleach

This update for python-bleach fixes the following issues:

  • CVE-2021-23980: Fixed mutation XSS on bleach.clean with specific combinations of allowed tags (boo#1184547)

Update to 3.1.5:

  • replace missing setuptools dependency with packaging. Thank you Benjamin Peterson.

Update to 3.1.4 (boo#1168280, CVE-2020-6817):

  • 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 were vulnerable to ReDoS. For example, bleach.clean(..., attributes={'a': ['style']}).
  • Style attributes with dashes, or single or double quoted values are cleaned instead of passed through.

update to 3.1.3 (boo#1167379, CVE-2020-6816):

  • Add relative link to code of conduct. (#442)
  • Drop deprecated 'setup.py test' support. (#507)
  • Fix typo: curren -> current in tests/test_clean.py (#504)
  • Test on PyPy 7
  • Drop test support for end of life Python 3.4
  • bleach.clean behavior parsing embedded MathML and SVG content with RCDATA tags did not match browser behavior and could result in a mutation XSS. Calls to bleach.clean with strip=False and math or svg tags and one or more of the RCDATA tags script, noscript, style, noframes, iframe, noembed, or xmp in the allowed tags whitelist were vulnerable to a mutation XSS.

This update was imported from the openSUSE:Leap:15.2:Update update project.

Record
openSUSE-SU-2021:0571-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11219-1 No score

python36-bleach-3.3.0-1.4 on GA media

These are all security issues fixed in the python36-bleach-3.3.0-1.4 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11219-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:14134-1 No score

python310-bleach-6.1.0-1.5 on GA media

These are all security issues fixed in the python310-bleach-6.1.0-1.5 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:14134-1
Updated
2026-11-02
OSVopenSUSE-SU-2026:11323-1 No score

python313-bleach-6.4.0-1.1 on GA media

These are all security issues fixed in the python313-bleach-6.4.0-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:11323-1
Updated
2026-11-02
OSVPYSEC-2020-28 No score

In Mozilla Bleach before 3.12, a mutation XSS in bleach.clean when RCDATA and either svg or math tags are whitelisted and the keyword argument strip=False.

Record
PYSEC-2020-28
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
bleach
PyPI
before 3.1.2
3.1.2
py3-bleach
Alpine:v3.11
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.12
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.13
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.14
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.15
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.16
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.17
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.18
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.19
before 3.1.2-r0
3.1.2-r0
Show 18 moreShow less
Affected packages
PackageAffectedFixed
py3-bleach
Alpine:v3.20
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.21
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.22
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.23
before 3.1.2-r0
3.1.2-r0
py3-bleach
Alpine:v3.24
before 3.1.2-r0
3.1.2-r0
python-bleach
Debian:12
before 3.1.3-1
3.1.3-1
python-bleach
Debian:13
before 3.1.3-1
3.1.3-1
python-bleach
Debian:14
before 3.1.3-1
3.1.3-1
python-bleach
Debian:10
before 3.1.2-0+deb10u1, plus listed versions
3.1.0-13.1.0-23.1.1-0+deb10u13.1.1-1
3.1.2-0+deb10u1
bleach
PyPI
before 3.1.2, plus listed versions
0.10.1.10.1.20.20.2.1
Show 37 moreShow less
0.2.20.30.3.10.3.30.3.40.5.00.5.11.0.01.0.11.0.21.0.31.0.41.1.01.1.11.1.21.1.31.1.41.1.51.21.2.11.2.21.41.4.11.4.21.4.31.5.02.0.02.12.1.12.1.22.1.32.1.43.0.03.0.13.0.23.1.03.1.1
3.1.2
python-bleach
Mageia:7
From an advisory covering 2 CVEs
before 3.1.4-1.mga7
3.1.4-1.mga7
python-bleach
Ubuntu:Pro:16.04:LTS
before 1.4.2-1ubuntu0.1~esm1, plus listed versions
1.4-11.4.2-1
1.4.2-1ubuntu0.1~esm1
python-bleach
Ubuntu:Pro:18.04:LTS
before 2.1.2-1ubuntu0.1~esm1, plus listed versions
2.0-12.1.2-1
2.1.2-1ubuntu0.1~esm1
python-bleach
Ubuntu:Pro:20.04:LTS
before 3.1.1-1ubuntu0.1~esm1, plus listed versions
3.1.0-13.1.0-23.1.1-1
3.1.1-1ubuntu0.1~esm1
python-bleach
openSUSE:Leap 15.2
From an advisory covering 3 CVEs
before 3.1.5-lp152.2.3.1
3.1.5-lp152.2.3.1
python-bleach
SUSE:Package Hub 15 SP2
From an advisory covering 3 CVEs
before 3.1.5-bp152.2.4.1
3.1.5-bp152.2.4.1
python-bleach
openSUSE:Tumbleweed
From an advisory covering 5 CVEs
before 6.1.0-1.5
6.1.0-1.5
python-bleach
openSUSE:Tumbleweed
From an advisory covering 5 CVEs
before 6.4.0-1.1
6.4.0-1.1

History

History
RecordedChangedSources
affected, facts
affected, aliases, referencesOSV
aliases, productsEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2020-6816 is a medium vulnerability (CVSS 6.1) in Mozilla Bleach, published March 20, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.34%, the 71st percentile. Fixed in bleach 3.1.2.

References

Show 26 moreShow less
MoveEnter Open