{"id":"CVE-2025-12781","aliases":["AZL-109683","AZL-75225","AZL-75231","AZL-84287","BELL-CVE-2025-12781","BIT-libpython-2025-12781","BIT-python-2025-12781","BIT-python-min-2025-12781","DEBIAN-CVE-2025-12781","EUVD-2026-3598","GHSA-hfpw-x3fg-wmmg","MGASA-2026-0455","OESA-2026-1356","OESA-2026-1357","OESA-2026-1358","OESA-2026-1461","PSF-2026-7","ROOT-OS-DEBIAN-11-CVE-2025-12781","ROOT-OS-DEBIAN-12-CVE-2025-12781","ROOT-OS-DEBIAN-13-CVE-2025-12781","SUSE-SU-2026:0693-1","SUSE-SU-2026:0767-1","SUSE-SU-2026:20665-1","SUSE-SU-2026:20710-1","UBUNTU-CVE-2025-12781","openSUSE-SU-2026:10152-1","openSUSE-SU-2026:10206-1","openSUSE-SU-2026:10221-1","openSUSE-SU-2026:10222-1"],"status":"published","title":"base64.b64decode() always accepts \"+/\" characters, despite setting altchars","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","severity":{"version":"4.0","score":6.3,"vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00859,"percentile":0.58736,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-704"],"published":"2026-01-21T19:34:47Z","modified":"2026-11-05T05:36:30Z","fixes":[{"ecosystem":"Alpaquita:23","package":"python3","fixed_in":["3.11.13-r3"],"sources":["osv"]},{"ecosystem":"Alpaquita:25","package":"python3","fixed_in":["3.12.12-r2"],"sources":["osv"]},{"ecosystem":"Alpaquita:stream","package":"python3","fixed_in":["3.12.12-r3"],"sources":["osv"]},{"ecosystem":"BellSoft Hardened Containers:23","package":"python3","fixed_in":["3.11.13-r3"],"sources":["osv"]},{"ecosystem":"BellSoft Hardened Containers:25","package":"python3","fixed_in":["3.12.12-r2"],"sources":["osv"]},{"ecosystem":"BellSoft Hardened Containers:stream","package":"python3","fixed_in":["3.12.12-r3"],"sources":["osv"]},{"ecosystem":"Bitnami","package":"libpython","fixed_in":["3.15.0"],"sources":["osv"]},{"ecosystem":"Bitnami","package":"python","fixed_in":["3.15.0"],"sources":["osv"]},{"ecosystem":"Bitnami","package":"python-min","fixed_in":["3.15.0"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"python3.14","fixed_in":["3.14.2-1"],"sources":["osv"]},{"ecosystem":"Root:Debian:11","package":"python3.9","fixed_in":["3.9.2-1+deb11u7.aikido.18","3.9.2-1+deb11u7.aikido.19","3.9.2-1+deb11u7.aikido.20","3.9.2-1+deb11u7.aikido.17","3.9.2-1+deb11u7.root.io.15","3.9.2-1+deb11u7.root.io.16","3.9.2-1+deb11u7.aikido.21","3.9.2-1+deb11u7.aikido.22"],"sources":["osv"]},{"ecosystem":"Root:Debian:11","package":"rootio-python3.9","fixed_in":["3.9.2-1+deb11u7.aikido.18","3.9.2-1+deb11u7.aikido.19","3.9.2-1+deb11u7.aikido.20","3.9.2-1+deb11u7.aikido.17","3.9.2-1+deb11u7.root.io.15","3.9.2-1+deb11u7.root.io.16","3.9.2-1+deb11u7.aikido.21","3.9.2-1+deb11u7.aikido.22"],"sources":["osv"]},{"ecosystem":"Root:Debian:12","package":"python3.11","fixed_in":["3.11.2-6+deb12u9.aikido.39"],"sources":["osv"]},{"ecosystem":"Root:Debian:12","package":"rootio-python3.11","fixed_in":["3.11.2-6+deb12u9.aikido.39"],"sources":["osv"]},{"ecosystem":"Root:Debian:13","package":"python3.13","fixed_in":["3.13.5-2+deb13u5.aikido.28","3.13.5-2+deb13u5.aikido.25","3.13.5-2+deb13u5.aikido.26","3.13.5-2+deb13u5.aikido.27"],"sources":["osv"]},{"ecosystem":"Root:Debian:13","package":"rootio-python3.13","fixed_in":["3.13.5-2+deb13u5.aikido.28","3.13.5-2+deb13u5.aikido.25","3.13.5-2+deb13u5.aikido.26","3.13.5-2+deb13u5.aikido.27"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Azure Linux:3","package":"python-py","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"1.11.0-1"}]}]},{"source":"osv","ecosystem":"Azure Linux:2","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"3.9.19-19"}]}]},{"source":"osv","ecosystem":"Azure Linux:3","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"3.12.9-9"}]}]},{"source":"osv","ecosystem":"Azure Linux:3","package":"docbook5-style-xsl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"1.79.2-11"}]}]},{"source":"osv","ecosystem":"Alpaquita:23","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.11.3-r0"},{"fixed":"3.11.13-r3"}]}]},{"source":"osv","ecosystem":"Alpaquita:25","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.12.10-r1"},{"fixed":"3.12.12-r2"}]}]},{"source":"osv","ecosystem":"Alpaquita:stream","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.11.4-r0"},{"fixed":"3.12.12-r3"}]}]},{"source":"osv","ecosystem":"BellSoft Hardened Containers:23","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.11.3-r0"},{"fixed":"3.11.13-r3"}]}]},{"source":"osv","ecosystem":"BellSoft Hardened Containers:25","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.12.10-r1"},{"fixed":"3.12.12-r2"}]}]},{"source":"osv","ecosystem":"BellSoft Hardened Containers:stream","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.11.4-r0"},{"fixed":"3.12.12-r3"}]}]},{"source":"osv","ecosystem":"Bitnami","package":"libpython","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.15.0"}]}]},{"source":"osv","ecosystem":"Bitnami","package":"python","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.15.0"}]}]},{"source":"osv","ecosystem":"Bitnami","package":"python-min","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.15.0"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.3.11+dfsg-2","7.3.11+dfsg-2+deb12u1","7.3.11+dfsg-2+deb12u2","7.3.11+dfsg-2+deb12u3","7.3.12+dfsg-1","7.3.12~rc1+dfsg-1","7.3.12~rc2+dfsg-1","7.3.13+dfsg-1","7.3.14+dfsg-1","7.3.15+dfsg-1","7.3.16+dfsg-1","7.3.16+dfsg-2","7.3.17+dfsg-1","7.3.17+dfsg-2","7.3.17+dfsg-3","7.3.18+dfsg-1","7.3.18+dfsg-2","7.3.19+dfsg-1","7.3.19+dfsg-2","7.3.20+dfsg-1","7.3.20+dfsg-2","7.3.20+dfsg-3","7.3.20+dfsg-4","7.3.21+dfsg-1","7.3.21+dfsg-2","7.3.21+dfsg-3","7.3.21+dfsg-4","7.3.22+dfsg-1","7.3.23+dfsg-1","7.3.23+dfsg-2","8.0.0+dfsg-1","8.0.1+dfsg-1"]},{"source":"osv","ecosystem":"Debian:13","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.3.19+dfsg-2","7.3.20+dfsg-1","7.3.20+dfsg-2","7.3.20+dfsg-3","7.3.20+dfsg-4","7.3.21+dfsg-1","7.3.21+dfsg-2","7.3.21+dfsg-3","7.3.21+dfsg-4","7.3.22+dfsg-1","7.3.23+dfsg-1","7.3.23+dfsg-2","8.0.0+dfsg-1","8.0.1+dfsg-1"]},{"source":"osv","ecosystem":"Debian:14","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.3.19+dfsg-2","7.3.20+dfsg-1","7.3.20+dfsg-2","7.3.20+dfsg-3","7.3.20+dfsg-4","7.3.21+dfsg-1","7.3.21+dfsg-2","7.3.21+dfsg-3","7.3.21+dfsg-4","7.3.22+dfsg-1","7.3.23+dfsg-1","7.3.23+dfsg-2","8.0.0+dfsg-1","8.0.1+dfsg-1"]},{"source":"osv","ecosystem":"Debian:12","package":"python3.11","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.11.2-6","3.11.2-6+deb12u1","3.11.2-6+deb12u2","3.11.2-6+deb12u3","3.11.2-6+deb12u4","3.11.2-6+deb12u5","3.11.2-6+deb12u6","3.11.2-6+deb12u7","3.11.2-6+deb12u8","3.11.2-6+deb12u9","3.11.3-1","3.11.3-2","3.11.4-1","3.11.5-1","3.11.5-2","3.11.5-3","3.11.6-1","3.11.6-2","3.11.6-3","3.11.6-3~hurd.2","3.11.7-1","3.11.7-2","3.11.8-1","3.11.8-1.1~exp1","3.11.8-1.1~exp2","3.11.8-2","3.11.8-3","3.11.8-3+hurd.1","3.11.9-1"]},{"source":"osv","ecosystem":"Debian:13","package":"python3.13","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.13.11-1","3.13.12-1","3.13.14-1","3.13.15-1","3.13.18-1","3.13.5-2","3.13.5-2+deb13u1","3.13.5-2+deb13u2","3.13.5-2+deb13u3","3.13.5-2+deb13u4","3.13.5-2+deb13u5","3.13.6-1","3.13.7-1","3.13.8-1","3.13.9-1"]},{"source":"osv","ecosystem":"Debian:14","package":"python3.14","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.14.2-1"}]}],"versions":["3.14.0-1","3.14.0-2","3.14.0-3","3.14.0-4","3.14.0-5","3.14.0~a7-1","3.14.0~b1-1","3.14.0~b2-1","3.14.0~b3-1","3.14.0~b4-1","3.14.0~rc1-1","3.14.0~rc2-1","3.14.0~rc3-1"]},{"source":"osv","ecosystem":"Mageia:10","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.13.15-1.mga10"}]}],"bundled":17},{"source":"osv","ecosystem":"Mageia:10","package":"python-pip","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"26.2.1-1.mga10"}]}],"bundled":17},{"source":"osv","ecosystem":"openEuler:24.03-LTS","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.6-20.oe2403"}]}],"bundled":5},{"source":"osv","ecosystem":"openEuler:24.03-LTS-SP1","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.6-23.oe2403sp1"}]}],"bundled":5},{"source":"osv","ecosystem":"openEuler:24.03-LTS-SP2","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.6-23.oe2403sp2"}]}],"bundled":5},{"source":"osv","ecosystem":"openEuler:24.03-LTS-SP3","package":"python3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.6-24.oe2403sp3"}]}],"bundled":7},{"source":"osv","ecosystem":"Root:Debian:11","package":"python3.9","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.9.2-1+deb11u7.aikido.18"},{"fixed":"3.9.2-1+deb11u7.aikido.19"},{"fixed":"3.9.2-1+deb11u7.aikido.20"},{"fixed":"3.9.2-1+deb11u7.aikido.17"},{"fixed":"3.9.2-1+deb11u7.root.io.15"},{"fixed":"3.9.2-1+deb11u7.root.io.16"},{"fixed":"3.9.2-1+deb11u7.aikido.21"},{"fixed":"3.9.2-1+deb11u7.aikido.22"}]}]},{"source":"osv","ecosystem":"Root:Debian:11","package":"rootio-python3.9","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.9.2-1+deb11u7.aikido.18"},{"fixed":"3.9.2-1+deb11u7.aikido.19"},{"fixed":"3.9.2-1+deb11u7.aikido.20"},{"fixed":"3.9.2-1+deb11u7.aikido.17"},{"fixed":"3.9.2-1+deb11u7.root.io.15"},{"fixed":"3.9.2-1+deb11u7.root.io.16"},{"fixed":"3.9.2-1+deb11u7.aikido.21"},{"fixed":"3.9.2-1+deb11u7.aikido.22"}]}]},{"source":"osv","ecosystem":"Root:Debian:12","package":"python3.11","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.2-6+deb12u9.aikido.39"}]}]},{"source":"osv","ecosystem":"Root:Debian:12","package":"rootio-python3.11","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.2-6+deb12u9.aikido.39"}]}]},{"source":"osv","ecosystem":"Root:Debian:13","package":"python3.13","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.13.5-2+deb13u5.aikido.28"},{"fixed":"3.13.5-2+deb13u5.aikido.25"},{"fixed":"3.13.5-2+deb13u5.aikido.26"},{"fixed":"3.13.5-2+deb13u5.aikido.27"}]}]},{"source":"osv","ecosystem":"Root:Debian:13","package":"rootio-python3.13","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.13.5-2+deb13u5.aikido.28"},{"fixed":"3.13.5-2+deb13u5.aikido.25"},{"fixed":"3.13.5-2+deb13u5.aikido.26"},{"fixed":"3.13.5-2+deb13u5.aikido.27"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Public Cloud 15 SP4","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Public Cloud 15 SP4","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP4-LTSS","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP4-LTSS","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP4-LTSS","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP5-LTSS","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP5-LTSS","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP5-LTSS","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP4","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP4","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP4","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP5","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP5","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP5","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150400.9.75.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Basesystem 15 SP7","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Python 3 15 SP7","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Python 3 15 SP7","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP6-LTSS","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP6-LTSS","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP6","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP6","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"openSUSE:Leap 15.6","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"openSUSE:Leap 15.6","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"openSUSE:Leap 15.6","package":"python311-documentation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-150600.3.44.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Micro 6.1","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-slfo.1.1_3.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Micro 6.1","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-slfo.1.1_3.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Micro 6.0","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-3.1"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Micro 6.0","package":"python311-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-3.1"}]}],"bundled":7},{"source":"osv","ecosystem":"Ubuntu:Pro:14.04:LTS","package":"python2.7","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.7.5-8ubuntu3","2.7.5-8ubuntu4","2.7.6-2","2.7.6-2ubuntu1","2.7.6-3","2.7.6-3ubuntu1","2.7.6-4","2.7.6-4ubuntu1","2.7.6-5","2.7.6-7","2.7.6-8","2.7.6-8ubuntu0.2","2.7.6-8ubuntu0.3","2.7.6-8ubuntu0.4","2.7.6-8ubuntu0.5","2.7.6-8ubuntu0.6+esm2","2.7.6-8ubuntu0.6+esm3","2.7.6-8ubuntu0.6+esm5","2.7.6-8ubuntu0.6+esm6","2.7.6-8ubuntu0.6+esm7","2.7.6-8ubuntu0.6+esm8","2.7.6-8ubuntu0.6+esm9","2.7.6-8ubuntu0.6+esm10","2.7.6-8ubuntu0.6+esm11","2.7.6-8ubuntu0.6+esm12","2.7.6-8ubuntu0.6+esm13","2.7.6-8ubuntu0.6+esm14","2.7.6-8ubuntu0.6+esm15","2.7.6-8ubuntu0.6+esm16","2.7.6-8ubuntu0.6+esm17","2.7.6-8ubuntu0.6+esm18","2.7.6-8ubuntu0.6+esm20","2.7.6-8ubuntu0.6+esm21","2.7.6-8ubuntu0.6+esm22","2.7.6-8ubuntu0.6+esm24","2.7.6-8ubuntu0.6+esm25","2.7.6-8ubuntu0.6+esm26","2.7.6-8ubuntu0.6+esm28","2.7.6-8ubuntu0.6+esm29","2.7.6-8ubuntu0.6+esm30"]},{"source":"osv","ecosystem":"Ubuntu:Pro:14.04:LTS","package":"python3.4","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.4~b1-0ubuntu3","3.4~b1-4ubuntu4","3.4~b1-4ubuntu6","3.4~b1-5ubuntu2","3.4~b2-1","3.4~b3-1ubuntu1","3.4~rc1-1build1","3.4~rc2-1","3.4~rc3-0ubuntu1","3.4.0-1","3.4.0-2ubuntu1","3.4.0-2ubuntu1.1","3.4.3-1ubuntu1~14.04.1","3.4.3-1ubuntu1~14.04.3","3.4.3-1ubuntu1~14.04.4","3.4.3-1ubuntu1~14.04.5","3.4.3-1ubuntu1~14.04.6","3.4.3-1ubuntu1~14.04.7","3.4.3-1ubuntu1~14.04.7+esm2","3.4.3-1ubuntu1~14.04.7+esm4","3.4.3-1ubuntu1~14.04.7+esm6","3.4.3-1ubuntu1~14.04.7+esm7","3.4.3-1ubuntu1~14.04.7+esm8","3.4.3-1ubuntu1~14.04.7+esm10","3.4.3-1ubuntu1~14.04.7+esm11","3.4.3-1ubuntu1~14.04.7+esm12","3.4.3-1ubuntu1~14.04.7+esm13","3.4.3-1ubuntu1~14.04.7+esm14","3.4.3-1ubuntu1~14.04.7+esm15","3.4.3-1ubuntu1~14.04.7+esm16","3.4.3-1ubuntu1~14.04.7+esm17","3.4.3-1ubuntu1~14.04.7+esm19","3.4.3-1ubuntu1~14.04.7+esm20","3.4.3-1ubuntu1~14.04.7+esm21"]},{"source":"osv","ecosystem":"Ubuntu:Pro:14.04:LTS","package":"python3.5","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.5.2-2ubuntu0~16.04.4~14.04.1","3.5.2-2ubuntu0~16.04.4~14.04.1+esm1","3.5.2-2ubuntu0~16.04.4~14.04.1+esm3","3.5.2-2ubuntu0~16.04.4~14.04.1+esm4","3.5.2-2ubuntu0~16.04.4~14.04.1+esm5","3.5.2-2ubuntu0~16.04.4~14.04.1+esm6","3.5.2-2ubuntu0~16.04.4~14.04.1+esm7","3.5.2-2ubuntu0~16.04.4~14.04.1+esm8","3.5.2-2ubuntu0~16.04.4~14.04.1+esm9","3.5.2-2ubuntu0~16.04.4~14.04.1+esm10","3.5.2-2ubuntu0~16.04.4~14.04.1+esm11"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"python2.7","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.7.10-4ubuntu1","2.7.10-4ubuntu2","2.7.11-2","2.7.11-3","2.7.11-4","2.7.11-6","2.7.11-7","2.7.11-7ubuntu1","2.7.12-1~16.04","2.7.12-1ubuntu0~16.04.1","2.7.12-1ubuntu0~16.04.2","2.7.12-1ubuntu0~16.04.3","2.7.12-1ubuntu0~16.04.4","2.7.12-1ubuntu0~16.04.8","2.7.12-1ubuntu0~16.04.9","2.7.12-1ubuntu0~16.04.11","2.7.12-1ubuntu0~16.04.12","2.7.12-1ubuntu0~16.04.13","2.7.12-1ubuntu0~16.04.14","2.7.12-1ubuntu0~16.04.16","2.7.12-1ubuntu0~16.04.18","2.7.12-1ubuntu0~16.04.18+esm1","2.7.12-1ubuntu0~16.04.18+esm2","2.7.12-1ubuntu0~16.04.18+esm3","2.7.12-1ubuntu0~16.04.18+esm4","2.7.12-1ubuntu0~16.04.18+esm5","2.7.12-1ubuntu0~16.04.18+esm6","2.7.12-1ubuntu0~16.04.18+esm7","2.7.12-1ubuntu0~16.04.18+esm8","2.7.12-1ubuntu0~16.04.18+esm9","2.7.12-1ubuntu0~16.04.18+esm10","2.7.12-1ubuntu0~16.04.18+esm11","2.7.12-1ubuntu0~16.04.18+esm12","2.7.12-1ubuntu0~16.04.18+esm13","2.7.12-1ubuntu0~16.04.18+esm15","2.7.12-1ubuntu0~16.04.18+esm16","2.7.12-1ubuntu0~16.04.18+esm17","2.7.12-1ubuntu0~16.04.18+esm18","2.7.12-1ubuntu0~16.04.18+esm19","2.7.12-1ubuntu0~16.04.18+esm20","2.7.12-1ubuntu0~16.04.18+esm21","2.7.12-1ubuntu0~16.04.18+esm22"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"python3.5","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.5.0-3","3.5.0-3ubuntu1","3.5.1~rc1-2ubuntu1","3.5.1-1","3.5.1-2","3.5.1-3","3.5.1-5","3.5.1-6ubuntu1","3.5.1-6ubuntu2","3.5.1-9ubuntu1","3.5.1-10","3.5.2-2~16.01","3.5.2-2~16.04","3.5.2-2ubuntu0~16.04.1","3.5.2-2ubuntu0~16.04.2","3.5.2-2ubuntu0~16.04.3","3.5.2-2ubuntu0~16.04.4","3.5.2-2ubuntu0~16.04.5","3.5.2-2ubuntu0~16.04.8","3.5.2-2ubuntu0~16.04.9","3.5.2-2ubuntu0~16.04.10","3.5.2-2ubuntu0~16.04.11","3.5.2-2ubuntu0~16.04.12","3.5.2-2ubuntu0~16.04.13","3.5.2-2ubuntu0~16.04.13+esm1","3.5.2-2ubuntu0~16.04.13+esm2","3.5.2-2ubuntu0~16.04.13+esm3","3.5.2-2ubuntu0~16.04.13+esm5","3.5.2-2ubuntu0~16.04.13+esm6","3.5.2-2ubuntu0~16.04.13+esm7","3.5.2-2ubuntu0~16.04.13+esm8","3.5.2-2ubuntu0~16.04.13+esm9","3.5.2-2ubuntu0~16.04.13+esm10","3.5.2-2ubuntu0~16.04.13+esm11","3.5.2-2ubuntu0~16.04.13+esm12","3.5.2-2ubuntu0~16.04.13+esm13","3.5.2-2ubuntu0~16.04.13+esm14","3.5.2-2ubuntu0~16.04.13+esm15","3.5.2-2ubuntu0~16.04.13+esm16","3.5.2-2ubuntu0~16.04.13+esm17","3.5.2-2ubuntu0~16.04.13+esm18","3.5.2-2ubuntu0~16.04.13+esm19","3.5.2-2ubuntu0~16.04.13+esm20","3.5.2-2ubuntu0~16.04.13+esm21","3.5.2-2ubuntu0~16.04.13+esm22","3.5.2-2ubuntu0~16.04.13+esm23","3.5.2-2ubuntu0~16.04.13+esm24","3.5.2-2ubuntu0~16.04.13+esm25"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"python2.7","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.7.14-2ubuntu2","2.7.14-4","2.7.14-6","2.7.14-7","2.7.14-8","2.7.15~rc1-1","2.7.15~rc1-1ubuntu0.1","2.7.15-4ubuntu4~18.04","2.7.15-4ubuntu4~18.04.1","2.7.15-4ubuntu4~18.04.2","2.7.17-1~18.04","2.7.17-1~18.04ubuntu1","2.7.17-1~18.04ubuntu1.1","2.7.17-1~18.04ubuntu1.2","2.7.17-1~18.04ubuntu1.3","2.7.17-1~18.04ubuntu1.5","2.7.17-1~18.04ubuntu1.6","2.7.17-1~18.04ubuntu1.7","2.7.17-1~18.04ubuntu1.8","2.7.17-1~18.04ubuntu1.10","2.7.17-1~18.04ubuntu1.11","2.7.17-1~18.04ubuntu1.13","2.7.17-1~18.04ubuntu1.13+esm1","2.7.17-1~18.04ubuntu1.13+esm2","2.7.17-1~18.04ubuntu1.13+esm3","2.7.17-1~18.04ubuntu1.13+esm4","2.7.17-1~18.04ubuntu1.13+esm5","2.7.17-1~18.04ubuntu1.13+esm6","2.7.17-1~18.04ubuntu1.13+esm7","2.7.17-1~18.04ubuntu1.13+esm8","2.7.17-1~18.04ubuntu1.13+esm10","2.7.17-1~18.04ubuntu1.13+esm11","2.7.17-1~18.04ubuntu1.13+esm12","2.7.17-1~18.04ubuntu1.13+esm13","2.7.17-1~18.04ubuntu1.13+esm14","2.7.17-1~18.04ubuntu1.13+esm15"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"python3.6","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.6.3-1ubuntu1","3.6.4~rc1-1","3.6.4~rc1-2","3.6.4-1","3.6.4-2","3.6.4-3build1","3.6.4-4","3.6.5~rc1-1","3.6.5-3","3.6.6-1~18.04","3.6.7-1~18.04","3.6.8-1~18.04.1","3.6.8-1~18.04.2","3.6.8-1~18.04.3","3.6.9-1~18.04","3.6.9-1~18.04ubuntu1","3.6.9-1~18.04ubuntu1.1","3.6.9-1~18.04ubuntu1.3","3.6.9-1~18.04ubuntu1.4","3.6.9-1~18.04ubuntu1.6","3.6.9-1~18.04ubuntu1.7","3.6.9-1~18.04ubuntu1.8","3.6.9-1~18.04ubuntu1.9","3.6.9-1~18.04ubuntu1.10","3.6.9-1~18.04ubuntu1.12","3.6.9-1~18.04ubuntu1.13","3.6.9-1~18.04ubuntu1.13+esm1","3.6.9-1~18.04ubuntu1.13+esm2","3.6.9-1~18.04ubuntu1.13+esm3","3.6.9-1~18.04ubuntu1.13+esm4","3.6.9-1~18.04ubuntu1.13+esm5","3.6.9-1~18.04ubuntu1.13+esm6","3.6.9-1~18.04ubuntu1.13+esm7","3.6.9-1~18.04ubuntu1.13+esm8","3.6.9-1~18.04ubuntu1.13+esm9","3.6.9-1~18.04ubuntu1.13+esm10"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"python3.7","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.7.0~a2-1","3.7.0~a3-1","3.7.0~a3-2","3.7.0~a3-3","3.7.0~a4-1","3.7.0~b1-1","3.7.0~b1-1build1","3.7.0~b2-1","3.7.0~b3-1","3.7.0-1~18.04","3.7.1-1~18.04","3.7.3-2~18.04.1","3.7.5-2~18.04","3.7.5-2~18.04.4","3.7.5-2ubuntu1~18.04.2","3.7.5-2ubuntu1~18.04.2+esm1","3.7.5-2ubuntu1~18.04.2+esm2","3.7.5-2ubuntu1~18.04.2+esm3","3.7.5-2ubuntu1~18.04.2+esm4","3.7.5-2ubuntu1~18.04.2+esm5","3.7.5-2ubuntu1~18.04.2+esm6","3.7.5-2ubuntu1~18.04.2+esm7","3.7.5-2ubuntu1~18.04.2+esm8","3.7.5-2ubuntu1~18.04.2+esm9","3.7.5-2ubuntu1~18.04.2+esm10","3.7.5-2ubuntu1~18.04.2+esm11"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"python3.8","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.8.0-3~18.04","3.8.0-3~18.04.1","3.8.0-3ubuntu1~18.04.2","3.8.0-3ubuntu1~18.04.2+esm1","3.8.0-3ubuntu1~18.04.2+esm2","3.8.0-3ubuntu1~18.04.2+esm3","3.8.0-3ubuntu1~18.04.2+esm4","3.8.0-3ubuntu1~18.04.2+esm5","3.8.0-3ubuntu1~18.04.2+esm6","3.8.0-3ubuntu1~18.04.2+esm7","3.8.0-3ubuntu1~18.04.2+esm8","3.8.0-3ubuntu1~18.04.2+esm9","3.8.0-3ubuntu1~18.04.2+esm10","3.8.0-3ubuntu1~18.04.2+esm11"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"python3.8","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.8.0-1","3.8.0-2","3.8.0-3","3.8.0-4","3.8.0-5","3.8.1-2ubuntu3","3.8.2~rc1-1ubuntu1","3.8.2-1","3.8.2-1ubuntu1","3.8.2-1ubuntu1.1","3.8.2-1ubuntu1.2","3.8.5-1~20.04","3.8.5-1~20.04.2","3.8.5-1~20.04.3","3.8.10-0ubuntu1~20.04","3.8.10-0ubuntu1~20.04.1","3.8.10-0ubuntu1~20.04.2","3.8.10-0ubuntu1~20.04.4","3.8.10-0ubuntu1~20.04.5","3.8.10-0ubuntu1~20.04.6","3.8.10-0ubuntu1~20.04.7","3.8.10-0ubuntu1~20.04.8","3.8.10-0ubuntu1~20.04.9","3.8.10-0ubuntu1~20.04.10","3.8.10-0ubuntu1~20.04.11","3.8.10-0ubuntu1~20.04.12","3.8.10-0ubuntu1~20.04.13","3.8.10-0ubuntu1~20.04.14","3.8.10-0ubuntu1~20.04.15","3.8.10-0ubuntu1~20.04.16","3.8.10-0ubuntu1~20.04.17","3.8.10-0ubuntu1~20.04.18","3.8.10-0ubuntu1~20.04.18+esm1","3.8.10-0ubuntu1~20.04.18+esm2","3.8.10-0ubuntu1~20.04.18+esm3","3.8.10-0ubuntu1~20.04.18+esm4","3.8.10-0ubuntu1~20.04.18+esm5","3.8.10-0ubuntu1~20.04.18+esm6","3.8.10-0ubuntu1~20.04.18+esm7"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.1.1+dfsg-1","7.2.0+dfsg-1","7.3.0+dfsg-1","7.3.0+dfsg-1ubuntu2","7.3.0+dfsg-1ubuntu3","7.3.1+dfsg-4","7.3.1+dfsg-4ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"python2.7","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.7.17~rc1-1","2.7.17-1","2.7.17-1ubuntu5","2.7.17-1ubuntu6","2.7.18~rc1-2","2.7.18-1~20.04","2.7.18-1~20.04.1","2.7.18-1~20.04.1+esm1","2.7.18-1~20.04.3","2.7.18-1~20.04.3+esm1","2.7.18-1~20.04.4","2.7.18-1~20.04.4+esm1","2.7.18-1~20.04.4+esm2","2.7.18-1~20.04.4+esm3","2.7.18-1~20.04.5","2.7.18-1~20.04.5+esm1","2.7.18-1~20.04.5+esm2","2.7.18-1~20.04.6","2.7.18-1~20.04.6+esm1","2.7.18-1~20.04.7","2.7.18-1~20.04.7+esm3","2.7.18-1~20.04.7+esm4","2.7.18-1~20.04.7+esm6","2.7.18-1~20.04.7+esm7","2.7.18-1~20.04.7+esm8","2.7.18-1~20.04.7+esm9","2.7.18-1~20.04.7+esm10"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"python3.9","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.9.0~rc1-1~20.04","3.9.0-5~20.04","3.9.5-3~20.04.1","3.9.5-3ubuntu0~20.04.1","3.9.5-3ubuntu0~20.04.1+esm1","3.9.5-3ubuntu0~20.04.1+esm2","3.9.5-3ubuntu0~20.04.1+esm3","3.9.5-3ubuntu0~20.04.1+esm4","3.9.5-3ubuntu0~20.04.1+esm5","3.9.5-3ubuntu0~20.04.1+esm6","3.9.5-3ubuntu0~20.04.1+esm7","3.9.5-3ubuntu0~20.04.1+esm8","3.9.5-3ubuntu0~20.04.1+esm9","3.9.5-3ubuntu0~20.04.1+esm10","3.9.5-3ubuntu0~20.04.1+esm11"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.3.5+dfsg-2","7.3.7+dfsg-1","7.3.7+dfsg-4","7.3.7+dfsg-5","7.3.8+dfsg-2","7.3.9+dfsg-1","7.3.9+dfsg-1ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"python2.7","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.7.18-8build1","2.7.18-13","2.7.18-13ubuntu1","2.7.18-13ubuntu1.1","2.7.18-13ubuntu1.2","2.7.18-13ubuntu1.3","2.7.18-13ubuntu1.4","2.7.18-13ubuntu1.5"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"python3.10","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.10.0-2","3.10.0-3","3.10.0-4","3.10.0-5","3.10.0-5build1","3.10.1-1","3.10.1-2","3.10.2-1","3.10.2-5","3.10.2-7","3.10.3-1","3.10.4-3","3.10.4-3ubuntu0.1","3.10.6-1~22.04","3.10.6-1~22.04.1","3.10.6-1~22.04.2","3.10.6-1~22.04.2ubuntu1","3.10.6-1~22.04.2ubuntu1.1","3.10.12-1~22.04.2","3.10.12-1~22.04.3","3.10.12-1~22.04.4","3.10.12-1~22.04.5","3.10.12-1~22.04.6","3.10.12-1~22.04.7","3.10.12-1~22.04.8","3.10.12-1~22.04.9","3.10.12-1~22.04.10","3.10.12-1~22.04.11","3.10.12-1~22.04.12","3.10.12-1~22.04.13","3.10.12-1~22.04.14","3.10.12-1~22.04.15","3.10.12-1~22.04.16","3.10.12-1~22.04.17","3.10.12-1~22.04.18"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"python3.11","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.11.0~rc1-1~22.04","3.11.0~rc1-1~22.04.1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.3.12+dfsg-1","7.3.13+dfsg-1","7.3.14+dfsg-1","7.3.15+dfsg-1","7.3.15+dfsg-1build2","7.3.15+dfsg-1build3"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"python3.12","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.12.0-1","3.12.0-5","3.12.0-6","3.12.0-7","3.12.1-2","3.12.2-1","3.12.2-4build3","3.12.2-4build4","3.12.2-5ubuntu3","3.12.3-1","3.12.3-1ubuntu0.1","3.12.3-1ubuntu0.2","3.12.3-1ubuntu0.3","3.12.3-1ubuntu0.4","3.12.3-1ubuntu0.5","3.12.3-1ubuntu0.6","3.12.3-1ubuntu0.7","3.12.3-1ubuntu0.8","3.12.3-1ubuntu0.9","3.12.3-1ubuntu0.10","3.12.3-1ubuntu0.11","3.12.3-1ubuntu0.12","3.12.3-1ubuntu0.13","3.12.3-1ubuntu0.15","3.12.3-1ubuntu0.16","3.12.3-1ubuntu0.17"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.3.19+dfsg-1","7.3.19+dfsg-2","7.3.20+dfsg-1","7.3.20+dfsg-3"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"python3.13","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.13.3-1","3.13.3-2","3.13.3-4","3.13.4-1","3.13.5-1","3.13.5-2","3.13.6-1","3.13.7-1","3.13.7-1ubuntu0.1","3.13.7-1ubuntu0.2","3.13.7-1ubuntu0.3","3.13.7-1ubuntu0.4"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"python3.14","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.14.0~a7-0ubuntu1","3.14.0~b1-1","3.14.0~b3-1","3.14.0~rc1-1","3.14.0~rc2-1","3.14.0~rc3-1","3.14.0-1","3.14.0-1ubuntu0.1","3.14.0-1ubuntu0.2","3.14.0-1ubuntu0.3"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.3.20+dfsg-4","7.3.23+dfsg-1ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"python3.14","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.14.4-1","3.14.6-1","3.14.7-1ubuntu1","3.14.7-4ubuntu1","3.14.7-4ubuntu2","3.14.7-5ubuntu1","3.14.8-1ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"pypy3","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["7.3.20+dfsg-3","7.3.20+dfsg-4"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"python3.14","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.14.0-1","3.14.0-2","3.14.0-4","3.14.2-1","3.14.3-1","3.14.3-2","3.14.3-3","3.14.3-5","3.14.4-1","3.14.4-1ubuntu0.1","3.14.4-1ubuntu0.2"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"python315","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.15.0~a3-4.1"}]}],"bundled":5},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"python314","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.14.3-1.1"}]}],"bundled":7},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"python311","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.11.14-4.1"}]}],"bundled":7},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"python312","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.12.12-5.1"}]}],"bundled":8}],"products":[{"vendor":"python","product":"python"},{"vendor":"python software foundation","product":"cpython"}],"references":[{"url":"https://github.com/python/cpython/pull/141128","tags":["patch","Issue Tracking","Patch","web","fix","report"]},{"url":"https://github.com/python/cpython/issues/125346","tags":["issue-tracking","Exploit","Issue Tracking","web","report"]},{"url":"https://mail.python.org/archives/list/security-announce@python.org/thread/KRI7GC6S27YV5NJ4FPDALS2WI5ENAFJ6/","tags":["vendor-advisory","Mailing List","Vendor Advisory","web","advisory","report"]},{"url":"https://github.com/python/cpython/commit/13360efd385d1a7d0659beba03787ea3d063ef9b","tags":["patch","Patch","web","fix"]},{"url":"https://github.com/python/cpython/commit/1be80bec7960f5ccd059e75f3dfbd45fca302947","tags":["patch","Patch","web","fix"]},{"url":"https://github.com/python/cpython/commit/9060b4abbe475591b6230b23c2afefeff26fcca5","tags":["patch","Patch","web","fix"]},{"url":"https://github.com/python/cpython/commit/e95e783dff443b68e8179fdb57737025bf02ba76","tags":["patch","Patch","web","fix"]},{"url":"https://github.com/python/cpython/commit/fd17ee026fa9b67f6288cbafe374a3e479fe03a5","tags":["patch","Patch","web","fix"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-12781","tags":["web","advisory"]},{"url":"https://mail.python.org/archives/list/security-announce@python.org/thread/KRI7GC6S27YV5NJ4FPDALS2WI5ENAFJ6"},{"url":"https://github.com/advisories/GHSA-hfpw-x3fg-wmmg"},{"url":"https://docs.bell-sw.com/security/cves/CVE-2025-12781","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/12xxx/CVE-2025-12781.json","tags":["advisory"]},{"url":"https://github.com/python/cpython","tags":["package"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2025-12781","tags":["advisory"]},{"url":"https://advisories.mageia.org/MGASA-2026-0455.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=35072","tags":["report"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1356","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-15367","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-0672","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-0865","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-1299","tags":["advisory"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1357","tags":["advisory"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1358","tags":["advisory"]},{"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1461","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-11468","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-15282","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2026/suse-su-20260693-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1257029","tags":["report"]},{"url":"https://bugzilla.suse.com/1257031","tags":["report"]},{"url":"https://bugzilla.suse.com/1257041","tags":["report"]},{"url":"https://bugzilla.suse.com/1257042","tags":["report"]},{"url":"https://bugzilla.suse.com/1257044","tags":["report"]},{"url":"https://bugzilla.suse.com/1257046","tags":["report"]},{"url":"https://bugzilla.suse.com/1257108","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2025-11468","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-12781","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-15282","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-15366","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-15367","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-0672","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-0865","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2026/suse-su-20260767-1/","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2026/suse-su-202620665-1/","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2026/suse-su-202620710-1/","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2025-12781","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2025-12781","tags":["report"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2026-1299","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2025-12781","title":"base64.b64decode() always accepts \"+/\" characters, despite setting altchars","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T19:34:47.979Z","modified":"2026-01-22T20:12:56.421Z","cvss":[{"version":"4.0","score":6.3,"vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","level":"medium","assessor":"cna"}],"cwes":["CWE-704"],"updated_at":"2026-11-02T14:32:42.078906Z"}],"euvd":[{"id":"EUVD-2026-3598","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T19:34:47Z","modified":"2026-01-22T20:12:56Z","cvss":[{"version":"4.0","score":6.3,"vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","level":"medium"}],"updated_at":"2026-11-02T19:48:48.575559Z"}],"ghsa":[{"id":"GHSA-hfpw-x3fg-wmmg","title":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in...","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T21:30:30Z","modified":"2026-02-02T18:32:34Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"},{"version":"4.0","score":6.3,"vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"medium"}],"cwes":["CWE-704"],"updated_at":"2026-11-02T15:06:00.828476Z"}],"nvd":[{"id":"CVE-2025-12781","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T20:16:04.423Z","modified":"2026-06-17T08:32:56.797Z","cvss":[{"version":"4.0","score":6.3,"vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"medium","assessor":"secondary"},{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-704"],"updated_at":"2026-11-02T14:11:57.915063Z"}],"osv":[{"id":"BELL-CVE-2025-12781","status":"published","published":"2026-01-23T06:07:22.7756Z","modified":"2026-02-05T13:11:43.905782Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:28:21.227396Z"},{"id":"CVE-2025-12781","title":"base64.b64decode() always accepts \"+/\" characters, despite setting altchars","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T19:34:47.979Z","modified":"2026-11-10T10:45:39.312402654Z","cvss":[{"version":"4.0","score":6.3,"vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","level":"medium"}],"updated_at":"2026-11-10T10:57:25.458985Z"},{"id":"DEBIAN-CVE-2025-12781","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.     This behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.     The attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64  alphabet they are expecting or verify that their application would not be  affected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T20:16:04.423Z","modified":"2026-11-01T17:00:06.971405486Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:45:45.102284Z"},{"id":"OESA-2026-1356","title":"python3 security update","description":"Python combines remarkable power with very clear syntax. It has modules, classes, exceptions, very high level dynamic data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems. New built-in modules are easily written in C or C++ (or other languages, depending on the chosen implementation). Python is also usable as an extension language for applications written in other languages that need easy-to-use scripting or automation interfaces.\r\n\r\nSecurity Fix(es):\n\nWhen passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \u0026quot;base64\u0026quot; module the characters \u0026quot;+/\u0026quot; will always be accepted, regardless of the value of \u0026quot;altchars\u0026quot; parameter, typically used to establish an \u0026quot;alternative base64 alphabet\u0026quot; such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \u0026quot;+/\u0026quot;). If your application does not use the \u0026quot;altchars\u0026quot; parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \u0026quot;+\u0026quot; or \u0026quot;/\u0026quot; outside of altchars.(CVE-2025-12781)\n\nThe poplib module, when passed a user-controlled command, can have additional commands injected using newlines. Mitigation rejects commands containing control characters.(CVE-2025-15367)\n\nWhen using http.cookies.Morsel, user-controlled cookie values and parameters can allow injecting HTTP headers into messages. Patch rejects all control characters within cookie names, values, and parameters.(CVE-2026-0672)\n\nThe wsgiref.headers.Headers module has an HTTP header injection vulnerability where user-controlled header names and values containing newlines can allow injecting malicious HTTP headers.(CVE-2026-0865)\n\nThe \nemail module, specifically the \u0026quot;BytesGenerator\u0026quot; class, didn’t properly quote newlines for email headers when \nserializing an email message allowing for header injection when an email\n is serialized. This is only applicable if using \u0026quot;LiteralHeader\u0026quot; writing headers that don\u0026apos;t respect email folding rules, the new behavior will reject the incorrectly folded headers in \u0026quot;BytesGenerator\u0026quot;.(CVE-2026-1299)","status":"published","published":"2026-02-13T11:10:23Z","modified":"2026-08-18T01:19:32.650797813Z","cvss":[{"version":"4.0","score":6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N","level":"medium"}],"updated_at":"2026-11-02T15:52:45.721983Z"},{"id":"OESA-2026-1357","title":"python3 security update","description":"Python combines remarkable power with very clear syntax. It has modules, classes, exceptions, very high level dynamic data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems. New built-in modules are easily written in C or C++ (or other languages, depending on the chosen implementation). Python is also usable as an extension language for applications written in other languages that need easy-to-use scripting or automation interfaces.\r\n\r\nSecurity Fix(es):\n\nWhen passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \u0026quot;base64\u0026quot; module the characters \u0026quot;+/\u0026quot; will always be accepted, regardless of the value of \u0026quot;altchars\u0026quot; parameter, typically used to establish an \u0026quot;alternative base64 alphabet\u0026quot; such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \u0026quot;+/\u0026quot;). If your application does not use the \u0026quot;altchars\u0026quot; parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \u0026quot;+\u0026quot; or \u0026quot;/\u0026quot; outside of altchars.(CVE-2025-12781)\n\nThe poplib module, when passed a user-controlled command, can have additional commands injected using newlines. Mitigation rejects commands containing control characters.(CVE-2025-15367)\n\nWhen using http.cookies.Morsel, user-controlled cookie values and parameters can allow injecting HTTP headers into messages. Patch rejects all control characters within cookie names, values, and parameters.(CVE-2026-0672)\n\nThe wsgiref.headers.Headers module has an HTTP header injection vulnerability where user-controlled header names and values containing newlines can allow injecting malicious HTTP headers.(CVE-2026-0865)\n\nThe \nemail module, specifically the \u0026quot;BytesGenerator\u0026quot; class, didn’t properly quote newlines for email headers when \nserializing an email message allowing for header injection when an email\n is serialized. This is only applicable if using \u0026quot;LiteralHeader\u0026quot; writing headers that don\u0026apos;t respect email folding rules, the new behavior will reject the incorrectly folded headers in \u0026quot;BytesGenerator\u0026quot;.(CVE-2026-1299)","status":"published","published":"2026-02-13T11:10:23Z","modified":"2026-08-18T01:19:33.55354041Z","cvss":[{"version":"4.0","score":6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N","level":"medium"}],"updated_at":"2026-11-02T15:52:45.721983Z"},{"id":"OESA-2026-1358","title":"python3 security update","description":"Python combines remarkable power with very clear syntax. It has modules, classes, exceptions, very high level dynamic data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems. New built-in modules are easily written in C or C++ (or other languages, depending on the chosen implementation). Python is also usable as an extension language for applications written in other languages that need easy-to-use scripting or automation interfaces.\r\n\r\nSecurity Fix(es):\n\nWhen passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \u0026quot;base64\u0026quot; module the characters \u0026quot;+/\u0026quot; will always be accepted, regardless of the value of \u0026quot;altchars\u0026quot; parameter, typically used to establish an \u0026quot;alternative base64 alphabet\u0026quot; such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \u0026quot;+/\u0026quot;). If your application does not use the \u0026quot;altchars\u0026quot; parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \u0026quot;+\u0026quot; or \u0026quot;/\u0026quot; outside of altchars.(CVE-2025-12781)\n\nThe poplib module, when passed a user-controlled command, can have additional commands injected using newlines. Mitigation rejects commands containing control characters.(CVE-2025-15367)\n\nWhen using http.cookies.Morsel, user-controlled cookie values and parameters can allow injecting HTTP headers into messages. Patch rejects all control characters within cookie names, values, and parameters.(CVE-2026-0672)\n\nThe wsgiref.headers.Headers module has an HTTP header injection vulnerability where user-controlled header names and values containing newlines can allow injecting malicious HTTP headers.(CVE-2026-0865)\n\nThe \nemail module, specifically the \u0026quot;BytesGenerator\u0026quot; class, didn’t properly quote newlines for email headers when \nserializing an email message allowing for header injection when an email\n is serialized. This is only applicable if using \u0026quot;LiteralHeader\u0026quot; writing headers that don\u0026apos;t respect email folding rules, the new behavior will reject the incorrectly folded headers in \u0026quot;BytesGenerator\u0026quot;.(CVE-2026-1299)","status":"published","published":"2026-02-13T11:10:23Z","modified":"2026-08-18T01:19:33.597233212Z","cvss":[{"version":"4.0","score":6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N","level":"medium"}],"updated_at":"2026-11-02T15:52:45.721983Z"},{"id":"OESA-2026-1461","title":"python3 security update","description":"Python combines remarkable power with very clear syntax. It has modules, classes, exceptions, very high level dynamic data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems. New built-in modules are easily written in C or C++ (or other languages, depending on the chosen implementation). Python is also usable as an extension language for applications written in other languages that need easy-to-use scripting or automation interfaces.\r\n\r\nSecurity Fix(es):\n\nIn CPython\u0026apos;s email module, when folding a long comment containing exclusively unfoldable characters, the parentheses are not preserved. This could be exploited to inject headers into email messages in scenarios where email addresses are user-controlled and not sanitized.(CVE-2025-11468)\n\nWhen passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \u0026quot;base64\u0026quot; module the characters \u0026quot;+/\u0026quot; will always be accepted, regardless of the value of \u0026quot;altchars\u0026quot; parameter, typically used to establish an \u0026quot;alternative base64 alphabet\u0026quot; such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \u0026quot;+/\u0026quot;). If your application does not use the \u0026quot;altchars\u0026quot; parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \u0026quot;+\u0026quot; or \u0026quot;/\u0026quot; outside of altchars.(CVE-2025-12781)\n\nUser-controlled data URLs parsed by urllib.request.DataHandler allow injecting headers through newlines in the data URL mediatype.(CVE-2025-15282)\n\nThe poplib module, when passed a user-controlled command, can have additional commands injected using newlines. Mitigation rejects commands containing control characters.(CVE-2025-15367)\n\nWhen using http.cookies.Morsel, user-controlled cookie values and parameters can allow injecting HTTP headers into messages. Patch rejects all control characters within cookie names, values, and parameters.(CVE-2026-0672)\n\nThe wsgiref.headers.Headers module has an HTTP header injection vulnerability where user-controlled header names and values containing newlines can allow injecting malicious HTTP headers.(CVE-2026-0865)\n\nThe \nemail module, specifically the \u0026quot;BytesGenerator\u0026quot; class, didn’t properly quote newlines for email headers when \nserializing an email message allowing for header injection when an email\n is serialized. This is only applicable if using \u0026quot;LiteralHeader\u0026quot; writing headers that don\u0026apos;t respect email folding rules, the new behavior will reject the incorrectly folded headers in \u0026quot;BytesGenerator\u0026quot;.(CVE-2026-1299)","status":"published","published":"2026-02-28T11:10:28Z","modified":"2026-08-18T01:19:34.930706191Z","cvss":[{"version":"4.0","score":6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:L/SA:N","level":"medium"}],"updated_at":"2026-11-02T15:52:45.721983Z"},{"id":"ROOT-OS-DEBIAN-11-CVE-2025-12781","title":"CVE-2025-12781 in python3.9 - Patched by Root","description":"Root has patched CVE-2025-12781 in the python3.9 package for Root:Debian:11. Multiple fixed versions available.","status":"published","published":"2026-09-11T09:07:53Z","modified":"2026-09-11T10:15:07.889352679Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:53:29.077857Z"},{"id":"ROOT-OS-DEBIAN-12-CVE-2025-12781","title":"CVE-2025-12781 in python3.11 - Patched by Root","description":"Root has patched CVE-2025-12781 in the python3.11 package for Root:Debian:12. Multiple fixed versions available.","status":"published","published":"2026-10-09T03:36:04Z","modified":"2026-10-09T04:15:03.328614413Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:53:30.983521Z"},{"id":"ROOT-OS-DEBIAN-13-CVE-2025-12781","title":"CVE-2025-12781 in python3.13 - Patched by Root","description":"Root has patched CVE-2025-12781 in the python3.13 package for Root:Debian:13. Multiple fixed versions available.","status":"published","published":"2026-10-09T12:06:34Z","modified":"2026-10-09T13:15:02.989009078Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:53:32.570806Z"},{"id":"UBUNTU-CVE-2025-12781","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues. This behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet. The attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 alphabet they are expecting or verify that their application would not be affected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T20:16:00Z","modified":"2026-10-17T12:56:48.04539615Z","cvss":[{"version":"4.0","score":6.3,"vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","level":"medium"},{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T16:55:20.144818Z"},{"id":"AZL-109683","title":"CVE-2025-12781 affecting package python-py 1.11.0-1","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T20:16:04Z","modified":"2026-10-27T05:36:16Z","updated_at":"2026-11-02T15:28:02.044071Z"},{"id":"AZL-75225","title":"CVE-2025-12781 affecting package python3 3.9.19-19","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T20:16:04Z","modified":"2026-04-21T04:38:52.223972Z","updated_at":"2026-11-02T15:28:09.474476Z"},{"id":"AZL-75231","title":"CVE-2025-12781 affecting package python3 3.12.9-9","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T20:16:04Z","modified":"2026-04-21T04:38:52.830308Z","updated_at":"2026-11-02T15:28:09.474476Z"},{"id":"AZL-84287","title":"CVE-2025-12781 affecting package docbook5-style-xsl 1.79.2-11","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T20:16:04Z","modified":"2026-11-05T05:36:30Z","updated_at":"2026-11-05T16:41:24.988217Z"},{"id":"BIT-libpython-2025-12781","title":"base64.b64decode() always accepts \"+/\" characters, despite setting altchars","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-26T14:43:03.724Z","modified":"2026-01-26T17:40:57.089677Z","updated_at":"2026-11-02T15:28:32.162822Z"},{"id":"BIT-python-2025-12781","title":"base64.b64decode() always accepts \"+/\" characters, despite setting altchars","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-26T14:49:35.455Z","modified":"2026-01-26T17:40:57.089677Z","updated_at":"2026-11-02T15:28:34.724063Z"},{"id":"BIT-python-min-2025-12781","title":"base64.b64decode() always accepts \"+/\" characters, despite setting altchars","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-26T14:49:35.888Z","modified":"2026-01-26T17:40:57.089677Z","updated_at":"2026-11-02T15:28:34.724063Z"},{"id":"MGASA-2026-0455","title":"Updated python3 \u0026 python-pip package fixes security vulnerabilities","description":"Please see the references for additional information about\nvulnerabilities.\n","status":"published","published":"2026-09-26T15:57:25Z","modified":"2026-09-26T16:12:22.700215778Z","updated_at":"2026-11-02T15:49:43.795591Z"},{"id":"openSUSE-SU-2026:10152-1","title":"python315-3.15.0~a3-4.1 on GA media","description":"These are all security issues fixed in the python315-3.15.0~a3-4.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-02-05T00:00:00Z","modified":"2026-03-23T04:54:30.980891Z","updated_at":"2026-11-02T16:58:38.101535Z"},{"id":"openSUSE-SU-2026:10206-1","title":"python314-3.14.3-1.1 on GA media","description":"These are all security issues fixed in the python314-3.14.3-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-02-14T00:00:00Z","modified":"2026-03-23T04:54:34.187146Z","updated_at":"2026-11-02T16:58:38.101535Z"},{"id":"openSUSE-SU-2026:10221-1","title":"python311-3.11.14-4.1 on GA media","description":"These are all security issues fixed in the python311-3.11.14-4.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-02-18T00:00:00Z","modified":"2026-03-23T04:54:35.386125Z","updated_at":"2026-11-02T16:58:38.101535Z"},{"id":"openSUSE-SU-2026:10222-1","title":"python312-3.12.12-5.1 on GA media","description":"These are all security issues fixed in the python312-3.12.12-5.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-02-18T00:00:00Z","modified":"2026-03-23T04:54:35.274315Z","updated_at":"2026-11-02T16:58:38.101535Z"},{"id":"PSF-2026-7","description":"When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the \"base64\" module the characters \"+/\" will always be accepted, regardless of the value of \"altchars\" parameter, typically used to establish an \"alternative base64 alphabet\" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues.\n\n\n\n\nThis behavior can only be insecure if your application uses an alternate base64 alphabet (without \"+/\"). If your application does not use the \"altchars\" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet.\n\n\n\n\nThe attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 \nalphabet they are expecting or verify that their application would not be \naffected if the b64decode() functions accepted \"+\" or \"/\" outside of altchars.","status":"published","published":"2026-01-21T19:34:47.979Z","modified":"2026-01-26T17:40:57.089677Z","updated_at":"2026-11-02T15:52:50.667197Z"},{"id":"SUSE-SU-2026:0693-1","title":"Security update for python311","description":"This update for python311 fixes the following issues:\n\n- CVE-2025-11468: header injection when folding a long comment in an email header containing exclusively unfoldable\n  characters (bsc#1257029).\n- CVE-2025-12781: inadequate parameter check can cause data integrity issues (bsc#1257108).\n- CVE-2025-15282: user-controlled data URLs parsed may allow injecting headers (bsc#1257046).\n- CVE-2025-15366: user-controlled command can allow additional commands injected using newlines (bsc#1257044).\n- CVE-2025-15367: control characters may allow the injection of additional commands (bsc#1257041).\n- CVE-2026-0672: HTTP header injection via user-controlled cookie values and parameters when using http.cookies.Morsel\n  (bsc#1257031).\n- CVE-2026-0865: user-controlled header containing newlines can allow injecting HTTP headers (bsc#1257042).\n","status":"published","published":"2026-02-27T15:14:09Z","modified":"2026-03-23T04:52:26.619326Z","updated_at":"2026-11-02T15:54:01.262144Z"},{"id":"SUSE-SU-2026:0767-1","title":"Security update for python311","description":"This update for python311 fixes the following issues:\n\n- CVE-2025-11468: header injection when folding a long comment in an email header containing exclusively unfoldable\n  characters (bsc#1257029).\n- CVE-2025-12781: inadequate parameter check can cause data integrity issues (bsc#1257108).\n- CVE-2025-15282: user-controlled data URLs parsed may allow injecting headers (bsc#1257046).\n- CVE-2025-15366: user-controlled command can allow additional commands injected using newlines (bsc#1257044).\n- CVE-2025-15367: control characters may allow the injection of additional commands (bsc#1257041).\n- CVE-2026-0672: HTTP header injection via user-controlled cookie values and parameters when using http.cookies.Morsel\n  (bsc#1257031).\n- CVE-2026-0865: user-controlled header containing newlines can allow injecting HTTP headers (bsc#1257042).\n","status":"published","published":"2026-03-03T13:05:43Z","modified":"2026-03-04T22:17:25.686693Z","updated_at":"2026-11-02T15:54:01.262144Z"},{"id":"SUSE-SU-2026:20665-1","title":"Security update for python311","description":"This update for python311 fixes the following issues:\n\n- CVE-2025-11468: preserving parens when folding comments in email headers. (bsc#1257029)\n- CVE-2026-0672: rejects control characters in http cookies. (bsc#1257031)\n- CVE-2026-0865: rejecting control characters in wsgiref.headers.Headers, which could be abused for injecting false HTTP headers. (bsc#1257042)\n- CVE-2025-15366: basically the same as the previous patch for IMAP protocol. (bsc#1257044)\n- CVE-2025-15282: basically the same as the previous patch for urllib library. (bsc#1257046)\n- CVE-2025-15367: basically the same as the previous patch for poplib library. (bsc#1257041)\n- CVE-2025-12781: fix decoding with non-standard Base64 alphabet (bsc#1257108)\n","status":"published","published":"2026-03-10T18:54:29Z","modified":"2026-03-23T04:53:06.94641Z","updated_at":"2026-11-02T15:54:01.953589Z"},{"id":"SUSE-SU-2026:20710-1","title":"Security update for python311","description":"This update for python311 fixes the following issues:\n\n- CVE-2025-11468: preserving parens when folding comments in email headers. (bsc#1257029)\n- CVE-2026-0672: rejects control characters in http cookies. (bsc#1257031)\n- CVE-2026-0865: rejecting control characters in wsgiref.headers.Headers, which could be abused for injecting false HTTP headers. (bsc#1257042)\n- CVE-2025-15366: basically the same as the previous patch for IMAP protocol. (bsc#1257044)\n- CVE-2025-15282: basically the same as the previous patch for urllib library. (bsc#1257046)\n- CVE-2025-15367: basically the same as the previous patch for poplib library. (bsc#1257041)\n- CVE-2025-12781: fix decoding with non-standard Base64 alphabet (bsc#1257108)\n","status":"published","published":"2026-03-09T10:51:06Z","modified":"2026-03-23T04:53:09.262343Z","updated_at":"2026-11-02T15:54:01.953589Z"}]}}
