{"id":"CVE-2021-32837","aliases":["DEBIAN-CVE-2021-32837","DLA-3460-1","DLA-4418-1","EUVD-2023-0144","GHSA-g3pv-pj5f-3hfq","MGASA-2023-0036","PYSEC-2023-25","UBUNTU-CVE-2021-32837","openSUSE-SU-2023:0030-1","openSUSE-SU-2024:12621-1","openSUSE-SU-2025:15098-1"],"status":"published","title":"mechanize vulnerable to ReDoS","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.28661,"percentile":0.98164,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-1333"],"published":"2023-01-17T00:00:00Z","modified":"2026-10-24T10:51:25Z","fixes":[{"ecosystem":"PyPI","package":"mechanize","fixed_in":["0.4.6"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"python-mechanize","fixed_in":["1:0.4.7-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"python-mechanize","fixed_in":["1:0.4.7-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"python-mechanize","fixed_in":["1:0.4.7-1"],"sources":["osv"]},{"ecosystem":"Debian:10","package":"python-mechanize","fixed_in":["1:0.2.5-3+deb10u1"],"sources":["osv"]},{"ecosystem":"Debian:11","package":"python-mechanize","fixed_in":["1:0.4.5-2+deb11u1"],"sources":["osv"]},{"ecosystem":"Mageia:8","package":"python-mechanize","fixed_in":["0.4.6-1.mga8"],"sources":["osv"]},{"ecosystem":"SUSE:Package Hub 15 SP4","package":"python-mechanize","fixed_in":["0.4.8-bp154.2.3.1"],"sources":["osv"]},{"ecosystem":"openSUSE:Leap 15.4","package":"python-mechanize","fixed_in":["0.4.8-bp154.2.3.1"],"sources":["osv"]},{"ecosystem":"openSUSE:Tumbleweed","package":"python-mechanize","fixed_in":["0.4.10-1.4"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.6"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:0.4.7-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:0.4.7-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:0.4.7-1"}]}]},{"source":"osv","ecosystem":"Debian:10","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:0.2.5-3+deb10u1"}]}],"versions":["1:0.2.5-3"]},{"source":"osv","ecosystem":"Debian:11","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:0.4.5-2+deb11u1"}]}],"versions":["1:0.4.5-2"]},{"source":"osv","ecosystem":"PyPI","package":"mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.6"}]}],"versions":["0.0.10a","0.0.11a","0.0.1a","0.0.8a","0.0.9a","0.1.0a","0.1.10","0.1.11","0.1.1a","0.1.2b","0.1.4b","0.1.5b","0.1.6b","0.1.7b","0.1.8","0.1.9","0.2.0","0.2.1","0.2.2","0.2.3","0.2.4","0.2.5","0.3.0","0.3.1","0.3.2","0.3.3","0.3.4","0.3.5","0.3.6","0.3.7","0.4.0","0.4.1","0.4.2","0.4.3","0.4.4","0.4.5"]},{"source":"osv","ecosystem":"Mageia:8","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.6-1.mga8"}]}]},{"source":"osv","ecosystem":"PyPI","package":"mechanize","ranges":[{"type":"GIT","events":[{"introduced":"0"},{"fixed":"dd05334448e9f39814bab044d2eaa5ef69b410d6"}]},{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.6"}]}],"versions":["0.0.10a","0.0.11a","0.0.1a","0.0.8a","0.0.9a","0.1.0a","0.1.10","0.1.11","0.1.1a","0.1.2b","0.1.4b","0.1.5b","0.1.6b","0.1.7b","0.1.8","0.1.9","0.2.0","0.2.1","0.2.2","0.2.3","0.2.4","0.2.5","0.3.0","0.3.1","0.3.2","0.3.3","0.3.4","0.3.5","0.3.6","0.3.7","0.4.0","0.4.1","0.4.2","0.4.3","0.4.4","0.4.5","v0.4.5","v0.4.4","v0.4.3","v0.4.2","v0.4.1","v0.4.0","v0.3.7","v0.3.6","v0.3.5","v0.3.4","v0.3.3","v0.3.2","v0.3.1","v0.3.0"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:0.2.5-3"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:0.2.5-3"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1:0.2.5-3","1:0.4.3-2","1:0.4.5-1","1:0.4.5-2"]},{"source":"osv","ecosystem":"SUSE:Package Hub 15 SP4","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.8-bp154.2.3.1"}]}]},{"source":"osv","ecosystem":"openSUSE:Leap 15.4","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.8-bp154.2.3.1"}]}]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"python-mechanize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.10-1.4"}]}]}],"products":[{"vendor":"mechanize_project","product":"mechanize"},{"vendor":"python-mechanize","product":"mechanize"}],"references":[{"url":"https://securitylab.github.com/advisories/GHSL-2021-108-python-mechanize-mechanize/","tags":["x_transferred","Exploit","Third Party Advisory","evidence","advisory","report"]},{"url":"https://github.com/python-mechanize/mechanize/blob/3acb1836f3fd8edc5a758a417dd46b53832ae3b5/mechanize/_urllib2_fork.py#L878-L879","tags":["x_transferred","Exploit","Third Party Advisory","evidence","web","report"]},{"url":"https://github.com/python-mechanize/mechanize/releases/tag/v0.4.6","tags":["x_transferred","Third Party Advisory","advisory","web","report"]},{"url":"https://github.com/python-mechanize/mechanize/commit/dd05334448e9f39814bab044d2eaa5ef69b410d6","tags":["x_transferred","Patch","Third Party Advisory","fix","web"]},{"url":"https://lists.debian.org/debian-lts-announce/2023/06/msg00022.html","tags":["mailing-list","x_transferred","web"]},{"url":"https://lists.debian.org/debian-lts-announce/2025/12/msg00028.html","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-32837","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/mechanize/PYSEC-2023-25.yaml","tags":["web"]},{"url":"https://securitylab.github.com/advisories/GHSL-2021-108-python-mechanize-mechanize","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-g3pv-pj5f-3hfq","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2021-32837","tags":["advisory"]},{"url":"https://github.com/python-mechanize/mechanize","tags":["package"]},{"url":"https://advisories.mageia.org/MGASA-2023-0036.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=31450","tags":["report"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/UJMENNGUMOIJQDKIMSMKR4ZGHVXN6F4U/","tags":["web","advisory"]},{"url":"https://ubuntu.com/security/CVE-2021-32837","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-32837","tags":["report"]},{"url":"https://bugzilla.suse.com/1202003","tags":["report"]},{"url":"https://bugzilla.suse.com/1207242","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2021-32837","tags":["web"]},{"url":"","tags":["advisory"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/ALVMKGJWEWB5TB7PXYN2YHAGDNLAFVMJ/","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2021-32837","title":"mechanize vulnerable to ReDoS","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-17T00:00:00Z","modified":"2025-12-22T01:32:19.985Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"cna"}],"cwes":["CWE-1333"],"updated_at":"2026-11-02T14:33:07.014772Z"}],"euvd":[{"id":"EUVD-2023-0144","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-17T00:00:00Z","modified":"2025-12-22T01:32:19Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T19:49:02.188903Z"}],"ghsa":[{"id":"GHSA-g3pv-pj5f-3hfq","title":"mechanize Regular Expression Denial of Service vulnerability","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-18T00:30:18Z","modified":"2025-12-22T16:31:05Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","level":"high"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-1333"],"updated_at":"2026-11-02T14:39:14.093341Z"}],"nvd":[{"id":"CVE-2021-32837","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-17T22:15:10.533Z","modified":"2026-06-17T03:53:43.88Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"secondary"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary"}],"cwes":["CWE-1333"],"updated_at":"2026-11-02T14:07:07.323379Z"}],"osv":[{"id":"CVE-2021-32837","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-17T22:15:10.533Z","modified":"2026-10-24T10:51:25.10771059Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:19.793849Z"},{"id":"DEBIAN-CVE-2021-32837","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-17T22:15:10.533Z","modified":"2026-10-23T18:03:14.463992439Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:35.233346Z"},{"id":"GHSA-g3pv-pj5f-3hfq","title":"mechanize Regular Expression Denial of Service vulnerability","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-18T00:30:18Z","modified":"2025-12-22T16:59:04.476381Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"},{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","level":"high"}],"cwes":["CWE-1333"],"updated_at":"2026-11-02T15:46:47.119724Z"},{"id":"UBUNTU-CVE-2021-32837","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-17T22:15:00Z","modified":"2025-10-24T04:50:21Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:54:27.332852Z"},{"id":"DLA-3460-1","title":"python-mechanize - security update","status":"published","published":"2023-06-20T00:00:00Z","modified":"2026-03-09T01:19:17.126175Z","updated_at":"2026-11-02T15:46:11.734021Z"},{"id":"DLA-4418-1","title":"python-mechanize - security update","status":"published","published":"2025-12-22T00:00:00Z","modified":"2025-12-22T01:29:50.437637Z","updated_at":"2026-11-02T15:46:12.7027Z"},{"id":"MGASA-2023-0036","title":"Updated python-mechanize packages fix security vulnerability","description":"Denial of service via crafted regular expression (CVE-2021-32837)\nFixed mechanize not found during build.\n","status":"published","published":"2023-02-07T00:06:39Z","modified":"2026-04-16T04:42:18.083096667Z","updated_at":"2026-11-02T15:49:42.263076Z"},{"id":"openSUSE-SU-2023:0030-1","title":"Security update for python-mechanize","description":"This update for python-mechanize fixes the following issues:\n\nUpdate to version 0.4.8:\n\n- CVE-2021-32837: Fixed a denial of service via regular expression (boo#1207242).\n- Fixed mechanize not found during build (boo#1202003).\n","status":"published","published":"2023-01-23T15:01:15Z","modified":"2026-02-04T04:28:02.239792Z","updated_at":"2026-11-02T16:58:32.653274Z"},{"id":"openSUSE-SU-2024:12621-1","title":"python310-mechanize-0.4.8-4.1 on GA media","description":"These are all security issues fixed in the python310-mechanize-0.4.8-4.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T04:37:32.821074Z","updated_at":"2026-11-02T16:58:35.751245Z"},{"id":"openSUSE-SU-2025:15098-1","title":"python311-mechanize-0.4.10-1.4 on GA media","description":"These are all security issues fixed in the python311-mechanize-0.4.10-1.4 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2025-05-17T00:00:00Z","modified":"2026-02-04T02:58:13.113532Z","updated_at":"2026-11-02T16:58:37.399567Z"},{"id":"PYSEC-2023-25","description":"mechanize, a library for automatically interacting with HTTP web servers, contains a regular expression that is vulnerable to regular expression denial of service (ReDoS) prior to version 0.4.6. If a web server responds in a malicious way, then mechanize could crash. Version 0.4.6 has a patch for the issue.","status":"published","published":"2023-01-17T22:15:00Z","modified":"2026-06-10T17:02:09.109644376Z","updated_at":"2026-11-02T15:52:53.837392Z"}]}}
