OESA-2026-2919 (CVE-2026-11940)
Vulnerability from osv_openeuler – Published: 2026-07-09 11:11 – Updated: 2026-08-06 11:11 – Source websitePython 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.
Security Fix(es):
tarfile.extractall() with the 'data' or 'tar' filter could be bypassed by a crafted archive where a hardlink references a symlink stored at a deeper name than the hardlink itself. The extraction fallback validated the symlink at it's archived location but recreated it at the hardlink's shallower path, letting a relative target the filter judged contained escape the destination directory. This allowed a malicious tar archive to create a symlink pointing outside the destination, enabling out-of-destination file reads or writes. This was an incomplete fix of CVE-2025-4330.(CVE-2026-11940)
When using the "tarfile" module with a file opened in "streaming mode" (mode="r|") the tarfile module did not properly handle EOF, making archive parsing take exponentially longer.(CVE-2026-11972)
The ftpcp() function in Lib/ftplib.py was not updated when CVE-2021-4189 was fixed. While makepasv() was patched to replace server-supplied PASV host addresses with the actual peer address (getpeername()[0]), ftpcp() still calls parse227() directly and passes the raw attacker-controllable IP address and port to target.sendport(). This patch is related to CVE-2021-4189.(CVE-2026-8328)
| URL | Type | |
|---|---|---|
{
"affected": [
{
"ecosystem_specific": {
"aarch64": [
"python3-3.11.6-34.oe2403sp1.aarch64.rpm",
"python3-debug-3.11.6-34.oe2403sp1.aarch64.rpm",
"python3-debuginfo-3.11.6-34.oe2403sp1.aarch64.rpm",
"python3-debugsource-3.11.6-34.oe2403sp1.aarch64.rpm",
"python3-devel-3.11.6-34.oe2403sp1.aarch64.rpm",
"python3-tkinter-3.11.6-34.oe2403sp1.aarch64.rpm",
"python3-unversioned-command-3.11.6-34.oe2403sp1.aarch64.rpm"
],
"noarch": [
"python3-help-3.11.6-34.oe2403sp1.noarch.rpm"
],
"src": [
"python3-3.11.6-34.oe2403sp1.src.rpm"
],
"x86_64": [
"python3-3.11.6-34.oe2403sp1.x86_64.rpm",
"python3-debug-3.11.6-34.oe2403sp1.x86_64.rpm",
"python3-debuginfo-3.11.6-34.oe2403sp1.x86_64.rpm",
"python3-debugsource-3.11.6-34.oe2403sp1.x86_64.rpm",
"python3-devel-3.11.6-34.oe2403sp1.x86_64.rpm",
"python3-tkinter-3.11.6-34.oe2403sp1.x86_64.rpm",
"python3-unversioned-command-3.11.6-34.oe2403sp1.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:24.03-LTS-SP1",
"name": "python3",
"purl": "pkg:rpm/openEuler/python3\u0026distro=openEuler-24.03-LTS-SP1"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.11.6-34.oe2403sp1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"database_specific": {
"severity": "High"
},
"details": "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\ntarfile.extractall() with the \u0026apos;data\u0026apos; or \u0026apos;tar\u0026apos;\n filter could be bypassed by a crafted archive where a hardlink \nreferences a symlink stored at a deeper name than the hardlink itself.\u00a0 \nThe extraction fallback validated the symlink at it\u0026apos;s archived location \nbut recreated it at the hardlink\u0026apos;s shallower\npath, letting a relative\n target the filter judged contained escape the destination directory.\u00a0 \nThis allowed a malicious tar archive to create a symlink pointing \noutside the destination, enabling out-of-destination file reads or \nwrites. This was an incomplete fix of CVE-2025-4330.(CVE-2026-11940)\n\nWhen using the \u0026quot;tarfile\u0026quot; module with a file opened in \u0026quot;streaming mode\u0026quot; (mode=\u0026quot;r|\u0026quot;) the tarfile module did not properly handle EOF, making archive parsing take exponentially longer.(CVE-2026-11972)\n\nThe ftpcp() function in Lib/ftplib.py was not updated when \nCVE-2021-4189 was fixed. While makepasv() was patched to replace \nserver-supplied PASV host addresses with the actual peer address \n(getpeername()[0]), ftpcp() still calls parse227() directly and passes \nthe raw attacker-controllable IP address and port to target.sendport(). This patch is related to\u00a0CVE-2021-4189.(CVE-2026-8328)",
"id": "OESA-2026-2919",
"modified": "2026-08-06T11:11:49Z",
"published": "2026-07-09T11:11:49Z",
"references": [
{
"type": "ADVISORY",
"url": "https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-2919"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-11940"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-11972"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-8328"
}
],
"schema_version": "1.7.2",
"severity": [
{
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/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",
"type": "CVSS_V4"
}
],
"summary": "python3 security update",
"upstream": [
"CVE-2026-11940",
"CVE-2026-11972",
"CVE-2026-8328"
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.