Every CVE Search/ Get API key

CVE-2020-12108

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.

6.5 MediumFix available

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.

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
None
Integrity
High
Availability
None

Exploit likelihood

2.70%Up 0.2 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 6.5

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.

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

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.

Record
CVE-2020-12108
Updated
2026-11-02
EUVDEUVD-2020-4424 No score

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.

Record
EUVD-2020-4424
Updated
2026-11-03
GitHub AdvisoriesGHSA-67xg-7gqq-pccf No score

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.

Record
GHSA-67xg-7gqq-pccf
Weakness
CWE-74
Updated
2026-11-02
OSVOESA-2021-1405 8.8

mailman security update

Mailman is free software for managing electronic mail discussion and e-newsletter lists. Mailman is integrated with the web, making it easy for users to manage their accounts and for list owners to administer their lists. Mailman supports built-in archiving, automatic bounce processing, content filtering, digest delivery, spam filters, and more.

Security Fix(es):

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.(CVE-2020-12108)

GNU Mailman 2.x before 2.1.30 uses the .obj extension for scrubbed application/octet-stream MIME parts. This behavior may contribute to XSS attacks against list-archive visitors, because an HTTP reply from an archive web server may lack a MIME type, and a web browser may perform MIME sniffing, conclude that the MIME type should have been text/html, and execute JavaScript code.(CVE-2020-12137)

GNU Mailman before 2.1.33 allows arbitrary content injection via the Cgi/private.py private archive login page.(CVE-2020-15011)

GNU Mailman before 2.1.35 may allow remote Privilege Escalation. A certain csrf_token value is derived from the admin password, and may be useful in conducting a brute-force attack against that password.(CVE-2021-42096)

GNU Mailman before 2.1.35 may allow remote Privilege Escalation. A csrf_token value is not specific to a single user account. An attacker can obtain a value within the context of an unprivileged user account, and then use that value in a CSRF attack against an admin (e.g., for account takeover).(CVE-2021-42097)

Record
OESA-2021-1405
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVRHSA-2021:1751 5.5

Red Hat Security Advisory: mailman:2.1 security update

Record
RHSA-2021:1751
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N
Updated
2026-11-02
Show 10 moreShow less
OSVRLSA-2021:1751 5.5

Moderate: mailman:2.1 security update

Mailman is a program used to help manage e-mail discussion lists.

Security Fix(es):

  • mailman: arbitrary content injection via the options login page (CVE-2020-12108)

  • mailman: arbitrary content injection via the private archive login page (CVE-2020-15011)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Additional Changes:

For detailed information on changes in this release, see the Rocky Linux 8.4 Release Notes linked from the References section.

Record
RLSA-2021:1751
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVUBUNTU-CVE-2020-12108 6.5

/options/mailman in GNU Mailman before 2.1.31 allows Arbitrary Content Injection.

Record
UBUNTU-CVE-2020-12108
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVMGASA-2020-0276 No score

Updated mailman packages fix security vulnerability

Updated mailman package fixes security vulnerability:

Up to mailman 2.1.29 when sending a file without a file extension (or an unknown file extension) then the file is stored in the list archive with the file extension .obj. Most web servers will try to assign a mime type based on the file extension and entries in /etc/mime.types, where .obj is usually not specified. This means the web server will send it out without a mime type. The browser will then try to guess the MIME type based on the file's content (MIME-sniffing). If the content is HTML then it will execute any javascript contained, leading to a potential cross-site scripting vulnerability.

The mailman package has been updated to version 2.1.30, fixing this bug and other issues. See the release announcement for details.

Record
MGASA-2020-0276
Updated
2026-11-02
OSVopenSUSE-SU-2020:0661-1 No score

Security update for mailman

This update for mailman fixes the following issues:

Security issue fixed:

  • CVE-2020-12108: Fixed a content injection bug (boo#1171363).

Non-security issue fixed:

  • Don't default to invalid hosts for DEFAULT_EMAIL_HOST (boo#682920)
Record
openSUSE-SU-2020:0661-1
Updated
2026-11-02
OSVopenSUSE-SU-2020:0764-1 No score

Security update for mailman

This update for mailman fixes the following issues:

Security issue fixed:

  • CVE-2020-12108: Fixed a content injection bug (boo#1171363).

Non-security issue fixed:

  • Don't default to invalid hosts for DEFAULT_EMAIL_HOST (boo#682920)

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

Record
openSUSE-SU-2020:0764-1
Updated
2026-11-02
OSVopenSUSE-SU-2020:1707-1 No score

Recommended update for mailman

This update for mailman to version 2.1.34 fixes the following issues:

  • The fix for lp#1859104 can result in ValueError being thrown on attempts to subscribe to a list. This is fixed and extended to apply REFUSE_SECOND_PENDING to unsubscription as well. (lp#1878458)
  • DMARC mitigation no longer misses if the domain name returned by DNS contains upper case. (lp#1881035)
  • A new WARN_MEMBER_OF_SUBSCRIBE setting can be set to No to prevent mailbombing of a member of a list with private rosters by repeated subscribe attempts. (lp#1883017)
  • Very long filenames for scrubbed attachments are now truncated. (lp#1884456)
  • A content injection vulnerability via the private login page has been fixed. CVE-2020-15011 (lp#1877379, bsc#1173369)
  • A content injection vulnerability via the options login page has been discovered and reported by Vishal Singh. CVE-2020-12108 (lp#1873722, bsc#1171363)
  • Bounce recognition for a non-compliant Yahoo format is added.
  • Archiving workaround for non-ascii in string.lowercase in some Python packages is added.
  • Thanks to Jim Popovitch, there is now a dmarc_moderation_addresses list setting that can be used to apply dmarc_moderation_action to mail From: addresses listed or matching listed regexps. This can be used to modify mail to addresses that don't accept external mail From: themselves.
  • There is a new MAX_LISTNAME_LENGTH setting. The fix for lp#1780874 obtains a list of the names of all the all the lists in the installation in order to determine the maximum length of a legitimate list name. It does this on every web access and on sites with a very large number of lists, this can have performance implications. See the description in Defaults.py for more information.
  • Thanks to Ralf Jung there is now the ability to add text based captchas (aka textchas) to the listinfo subscribe form. See the documentation for the new CAPTCHA setting in Defaults.py for how to enable this. Also note that if you have custom listinfo.html templates, you will have to add a <mm-captcha-ui> tag to those templates to make this work. This feature can be used in combination with or instead of the Google reCAPTCHA feature added in 2.1.26.
  • Thanks to Ralf Hildebrandt the web admin Membership Management section now has a feature to sync the list's membership with a list of email addresses as with the bin/sync_members command.
  • There is a new drop_cc list attribute set from DEFAULT_DROP_CC. This controls the dropping of addresses from the Cc: header in delivered messages by the duplicate avoidance process. (lp#1845751)
  • There is a new REFUSE_SECOND_PENDING mm_cfg.py setting that will cause a second request to subscribe to a list when there is already a pending confirmation for that user. This can be set to Yes to prevent mailbombing of a third party by repeatedly posting the subscribe form. (lp#1859104)
  • Fixed the confirm CGI to catch a rare TypeError on simultaneous confirmations of the same token. (lp#1785854)
  • Scrubbed application/octet-stream MIME parts will now be given a .bin extension instead of .obj. CVE-2020-12137 (lp#1886117)
  • Added bounce recognition for a non-compliant opensmtpd DSN with Action: error. (lp#1805137)
  • Corrected and augmented some security log messages. (lp#1810098)
  • Implemented use of QRUNNER_SLEEP_TIME for bin/qrunner --runner=All. (lp#1818205)
  • Leading/trailing spaces in provided email addresses for login to private archives and the user options page are now ignored. (lp#1818872)
  • Fixed the spelling of the --no-restart option for mailmanctl.
  • Fixed an issue where certain combinations of charset and invalid characters in a list's description could produce a List-ID header without angle brackets. (lp#1831321)
  • With the Postfix MTA and virtual domains, mappings for the site list -bounces and -request addresses in each…
Record
openSUSE-SU-2020:1707-1
Updated
2026-11-02
OSVopenSUSE-SU-2020:1752-1 No score

Recommended update for mailman

This update for mailman to version 2.1.34 fixes the following issues:

  • The fix for lp#1859104 can result in ValueError being thrown on attempts to subscribe to a list. This is fixed and extended to apply REFUSE_SECOND_PENDING to unsubscription as well. (lp#1878458)
  • DMARC mitigation no longer misses if the domain name returned by DNS contains upper case. (lp#1881035)
  • A new WARN_MEMBER_OF_SUBSCRIBE setting can be set to No to prevent mailbombing of a member of a list with private rosters by repeated subscribe attempts. (lp#1883017)
  • Very long filenames for scrubbed attachments are now truncated. (lp#1884456)
  • A content injection vulnerability via the private login page has been fixed. CVE-2020-15011 (lp#1877379, bsc#1173369)
  • A content injection vulnerability via the options login page has been discovered and reported by Vishal Singh. CVE-2020-12108 (lp#1873722, bsc#1171363)
  • Bounce recognition for a non-compliant Yahoo format is added.
  • Archiving workaround for non-ascii in string.lowercase in some Python packages is added.
  • Thanks to Jim Popovitch, there is now a dmarc_moderation_addresses list setting that can be used to apply dmarc_moderation_action to mail From: addresses listed or matching listed regexps. This can be used to modify mail to addresses that don't accept external mail From: themselves.
  • There is a new MAX_LISTNAME_LENGTH setting. The fix for lp#1780874 obtains a list of the names of all the all the lists in the installation in order to determine the maximum length of a legitimate list name. It does this on every web access and on sites with a very large number of lists, this can have performance implications. See the description in Defaults.py for more information.
  • Thanks to Ralf Jung there is now the ability to add text based captchas (aka textchas) to the listinfo subscribe form. See the documentation for the new CAPTCHA setting in Defaults.py for how to enable this. Also note that if you have custom listinfo.html templates, you will have to add a <mm-captcha-ui> tag to those templates to make this work. This feature can be used in combination with or instead of the Google reCAPTCHA feature added in 2.1.26.
  • Thanks to Ralf Hildebrandt the web admin Membership Management section now has a feature to sync the list's membership with a list of email addresses as with the bin/sync_members command.
  • There is a new drop_cc list attribute set from DEFAULT_DROP_CC. This controls the dropping of addresses from the Cc: header in delivered messages by the duplicate avoidance process. (lp#1845751)
  • There is a new REFUSE_SECOND_PENDING mm_cfg.py setting that will cause a second request to subscribe to a list when there is already a pending confirmation for that user. This can be set to Yes to prevent mailbombing of a third party by repeatedly posting the subscribe form. (lp#1859104)
  • Fixed the confirm CGI to catch a rare TypeError on simultaneous confirmations of the same token. (lp#1785854)
  • Scrubbed application/octet-stream MIME parts will now be given a .bin extension instead of .obj. CVE-2020-12137 (lp#1886117)
  • Added bounce recognition for a non-compliant opensmtpd DSN with Action: error. (lp#1805137)
  • Corrected and augmented some security log messages. (lp#1810098)
  • Implemented use of QRUNNER_SLEEP_TIME for bin/qrunner --runner=All. (lp#1818205)
  • Leading/trailing spaces in provided email addresses for login to private archives and the user options page are now ignored. (lp#1818872)
  • Fixed the spelling of the --no-restart option for mailmanctl.
  • Fixed an issue where certain combinations of charset and invalid characters in a list's description could produce a List-ID header without angle brackets. (lp#1831321)
  • With the Postfix MTA and virtual domains, mappings for the site list -bounces and -request addresses in each…
Record
openSUSE-SU-2020:1752-1
Updated
2026-11-02
OSVSUSE-SU-2020:1301-1 No score

Security update for mailman

This update for mailman fixes the following issues:

Security issue fixed:

  • CVE-2020-12108: Fixed a content injection bug (bsc#1171363).
  • CVE-2020-12137: Fixed a XSS vulnerability caused by MIME type confusion (bsc#1170558).

Non-security issue fixed:

  • Fixed rights and ownership on /var/lib/mailman/archives (bsc#1167068).
  • Don't default to invalid hosts for DEFAULT_EMAIL_HOST (bsc#682920).
Record
SUSE-SU-2020:1301-1
Updated
2026-11-02
OSVUSN-4354-1 No score

mailman vulnerability

It was discovered that Mailman incorrectly handled certain inputs. An attacker could possibly use this issue to inject arbitrary content in the login page.

Record
USN-4354-1
Updated
2026-11-02
OSVUSN-5121-2 No score

mailman vulnerabilities

USN-5009-1 fixed vulnerabilities in Mailman. This update provides the corresponding updates for Ubuntu 20.04 LTS. In addition, the following CVEs were fixed:

It was discovered that Mailman allows arbitrary content injection. An attacker could use this to inject malicious content. (CVE-2020-12108, CVE-2020-15011)

It was discovered that Mailman improperly sanitize the MIME content. An attacker could obtain sensitive information by sending a special type of attachment. (CVE-2020-12137)

Original advisory details:

Andre Protas, Richard Cloke, and Andy Nuttall discovered that Mailman did not properly associate cross-site request forgery (CSRF) tokens to specific accounts. A remote attacker could use this to perform a CSRF attack to gain access to another account. (CVE-2021-42097)

Andre Protas, Richard Cloke, and Andy Nuttall discovered that Mailman’s cross-site request forgery (CSRF) tokens for the options page are derived from the admin password. A remote attacker could possibly use this to assist in performing a brute force attack against the admin password. (CVE-2021-42096)

Record
USN-5121-2
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
mailman
Debian:8
before 1:2.1.18-2+deb8u6, plus listed versions
1:2.1.18-21:2.1.18-2+deb8u11:2.1.18-2+deb8u21:2.1.18-2+deb8u31:2.1.18-2+deb8u41:2.1.18-2+deb8u5
1:2.1.18-2+deb8u6
mailman
Debian:9
From an advisory covering 2 CVEs
before 1:2.1.23-1+deb9u6, plus listed versions
1:2.1.23-11:2.1.23-1+deb9u11:2.1.23-1+deb9u21:2.1.23-1+deb9u31:2.1.23-1+deb9u41:2.1.23-1+deb9u5
1:2.1.23-1+deb9u6
mailman
Debian:10
From an advisory covering 4 CVEs
before 1:2.1.29-1+deb10u2, plus listed versions
1:2.1.29-11:2.1.29-1+deb10u1
1:2.1.29-1+deb10u2
mailman
Mageia:7
From an advisory covering 3 CVEs
before 2.1.33-1.mga7
2.1.33-1.mga7
mailman
openEuler:20.03-LTS-SP1
From an advisory covering 5 CVEs
before 2.1.29-8.oe1
2.1.29-8.oe1
mailman
openEuler:20.03-LTS-SP2
From an advisory covering 5 CVEs
before 2.1.29-8.oe1
2.1.29-8.oe1
mailman
Red Hat:enterprise_linux:8::appstream
From an advisory covering 2 CVEs
before 3:2.1.29-11.module+el8.4.0+8277+5e2c6e6e
3:2.1.29-11.module+el8.4.0+8277+5e2c6e6e
mailman-debuginfo
Red Hat:enterprise_linux:8::appstream
From an advisory covering 2 CVEs
before 3:2.1.29-11.module+el8.4.0+8277+5e2c6e6e
3:2.1.29-11.module+el8.4.0+8277+5e2c6e6e
mailman-debugsource
Red Hat:enterprise_linux:8::appstream
From an advisory covering 2 CVEs
before 3:2.1.29-11.module+el8.4.0+8277+5e2c6e6e
3:2.1.29-11.module+el8.4.0+8277+5e2c6e6e
mailman
Rocky Linux:8
From an advisory covering 2 CVEs
before 3:2.1.29-11.module+el8.4.0+539+54f8785b
3:2.1.29-11.module+el8.4.0+539+54f8785b
Show 25 moreShow less
Affected packages
PackageAffectedFixed
mailman
SUSE:HPE Helion OpenStack 8
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:OpenStack Cloud 7
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:OpenStack Cloud 8
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:OpenStack Cloud Crowbar 8
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server for SAP Applications 12 SP1
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server for SAP Applications 12 SP2
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server for SAP Applications 12 SP3
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server 12 SP1-LTSS
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server 12 SP2-LTSS
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server 12 SP2-BCL
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server 12 SP3-LTSS
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server 12 SP3-BCL
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server 12 SP4
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server for SAP Applications 12 SP4
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server 12 SP5
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Linux Enterprise Server for SAP Applications 12 SP5
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
SUSE:Enterprise Storage 5
From an advisory covering 2 CVEs
before 2.1.17-3.20.1
2.1.17-3.20.1
mailman
Ubuntu:16.04:LTS
before 1:2.1.20-1ubuntu0.5, plus listed versions
1:2.1.20-11:2.1.20-1ubuntu0.11:2.1.20-1ubuntu0.31:2.1.20-1ubuntu0.4
1:2.1.20-1ubuntu0.5
mailman
Ubuntu:18.04:LTS
before 1:2.1.26-1ubuntu0.2, plus listed versions
1:2.1.23-11:2.1.24-11:2.1.25-11:2.1.26-11:2.1.26-1ubuntu0.1
1:2.1.26-1ubuntu0.2
mailman
Ubuntu:20.04:LTS
before 1:2.1.29-1ubuntu3.1, plus listed versions
1:2.1.29-11:2.1.29-1build11:2.1.29-1ubuntu3
1:2.1.29-1ubuntu3.1
mailman
Ubuntu:20.04:LTS
From an advisory covering 5 CVEs
before 1:2.1.29-1ubuntu3.1, plus listed versions
1:2.1.29-11:2.1.29-1build11:2.1.29-1ubuntu3
1:2.1.29-1ubuntu3.1
mailman
openSUSE:Leap 15.1
before 2.1.29-lp151.3.11.1
2.1.29-lp151.3.11.1
mailman
SUSE:Package Hub 15 SP1
before 2.1.29-bp151.5.9.1
2.1.29-bp151.5.9.1
mailman
openSUSE:Leap 15.2
From an advisory covering 3 CVEs
before 2.1.34-lp152.7.3.1
2.1.34-lp152.7.3.1
mailman
SUSE:Package Hub 15 SP2
From an advisory covering 3 CVEs
before 2.1.34-bp152.7.3.1
2.1.34-bp152.7.3.1

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

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

In short

CVE-2020-12108 is a medium vulnerability (CVSS 6.5) in Gnu Mailman, published May 6, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.70%, the 85th percentile. Fixed in mailman 1:2.1.18-2+deb8u6.

References

Show 49 moreShow less
This page doesn't list everything

Left out here: the rest of 2 source descriptions. The JSON record has them.

MoveEnter Open