Skip to content
Heist/ feed
Back to feed
Medium

tarfile.data_filter path traversal bypass allows writing outside the extraction directory

Type: advisorySources: OSV

tarfile.data_filter could be bypassed using crafted link entries, including symlinks with empty or directory-like names, to redirect later archive members outside the intended extraction directory. This allowed a malicious tar archive to cause tarfile.extractall() to write files outside the destination directory, subject to the permissions of the extracting process.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-7774
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 03:34 UTC · Revision 1

Source evidence

tarfile.data_filter path traversal bypass allows writing outside the extraction directory

core-osv · Original source

Published 4 Jun 2026, 14:21 UTC

tarfile.data_filter could be bypassed using crafted link entries, including symlinks with empty or directory-like names, to redirect later archive members outside the intended extraction directory. This allowed a malicious tar archive to cause tarfile.extractall() to write files outside the destination directory, subject to the permissions of the extracting process.

osv:CVE-2026-7774
Complete source record
{
  "id": "d1f24e5b995a3ac691f62a9d9079d3ef8a58fbef7652c21e93069018a1ad29c6",
  "url": "https://osv.dev/vulnerability/CVE-2026-7774",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "tarfile.data_filter path traversal bypass allows writing outside the extraction directory",
    "summary": "tarfile.data_filter could be bypassed using crafted link entries, including symlinks with empty or directory-like names, to redirect later archive members outside the intended extraction directory. This allowed a malicious tar archive to cause tarfile.extractall() to write files outside the destination directory, subject to the permissions of the extracting process.",
    "evidence": "osv:CVE-2026-7774",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-7774",
      "aliases": [
        "BIT-libpython-2026-7774",
        "BIT-python-2026-7774",
        "BIT-python-min-2026-7774",
        "CVE-2026-7774",
        "PSF-2026-26"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/python/cpython",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "3a19c2f0b3e91ce8f23d0cc64d4c9ee557823f24"
                },
                {
                  "introduced": "deaf509e8fc6e0363bd6f26d52ad42f976ec42f2"
                },
                {
                  "fixed": "41388c9cb160d0886d5ca00d2e6c8782608a4549"
                },
                {
                  "introduced": "0fb18b02c8ad56299d6a2910be0bab8ad601ef24"
                },
                {
                  "fixed": "2abcf904b8dac8c999d2b3aac76681abb333798a"
                },
                {
                  "introduced": "60403a5409ff2c3f3b07dd2ca91a7a3e096839c7"
                },
                {
                  "fixed": "fd17997c3866d61e0e7bd8201b1d8f35b40a40bd"
                },
                {
                  "introduced": "ebf955df7a89ed0c7968f79faec1de49f61ed7cb"
                },
                {
                  "fixed": "c63aec69bd59c55314c06c23f4c22c03de76fe45"
                },
                {
                  "introduced": "f31a89bb901067dd105b00cfa90523cf7ffdbbdd"
                },
                {
                  "fixed": "94a64bbc6ce89644cf02b82c723d9cc37f6a1870"
                },
                {
                  "fixed": "0478bd83d82b255e0f29f613367a59d261e7eaa2"
                },
                {
                  "fixed": "0d28f5e46e151718972dfabd91205444d0037b6d"
                },
                {
                  "fixed": "578411982c16f753f4893532510099ef665117da"
                },
                {
                  "fixed": "5cf47a248c35c375d610b87b2f72fd1ed454b558"
                },
                {
                  "fixed": "74cca9a92fb7d653e404843a56b8bdc7b0afdbbf"
                },
                {
                  "fixed": "10a13bee3c24f9c62b602e696334ff2272a40efc"
                },
                {
                  "fixed": "c063191cb7f9170f9565e305f8aa2b79ab2bf609"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "3.10.21"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "range": [
                      {
                        "introduced": "3.11.0"
                      },
                      {
                        "fixed": "3.11.16"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "range": [
                      {
                        "introduced": "3.12.0"
                      },
                      {
                        "fixed": "3.12.14"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "range": [
                      {
                        "introduced": "3.13.0"
                      },
                      {
                        "fixed": "3.13.14"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "range": [
                      {
                        "introduced": "3.14.0"
                      },
                      {
                        "fixed": "3.14.6"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "range": [
                      {
                        "introduced": "3.15.0a1"
                      },
                      {
                        "fixed": "3.15.0b2"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "range": [
                      {
                        "fixed": "0478bd83d82b255e0f29f613367a59d261e7eaa2"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "0d28f5e46e151718972dfabd91205444d0037b6d"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "578411982c16f753f4893532510099ef665117da"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "5cf47a248c35c375d610b87b2f72fd1ed454b558"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "74cca9a92fb7d653e404843a56b8bdc7b0afdbbf"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "10a13bee3c24f9c62b602e696334ff2272a40efc"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "c063191cb7f9170f9565e305f8aa2b79ab2bf609"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v3.14.5",
            "v3.15.0b1",
            "v3.14.5rc1",
            "v3.13.13",
            "v3.14.4",
            "v3.12.13",
            "v3.10.20",
            "v3.11.15",
            "v3.13.12",
            "v3.14.3",
            "v3.14.2",
            "v3.13.11",
            "v3.13.10",
            "v3.14.1",
            "v3.13.8",
            "v3.11.14",
            "v3.10.19",
            "v3.12.12",
            "v3.14.0",
            "v3.13.7",
            "v3.13.6",
            "v3.13.5",
            "v3.13.4",
            "v3.11.13",
            "v3.10.18",
            "v3.12.11",
            "v3.13.3",
            "v3.11.12",
            "v3.12.10",
            "v3.10.17",
            "v3.13.2",
            "v3.12.9",
            "v3.13.1",
            "v3.12.8",
            "v3.10.16",
            "v3.11.11",
            "v3.13.0",
            "v3.12.7",
            "v3.11.10",
            "v3.10.15",
            "v3.12.6",
            "v3.12.5",
            "v3.12.4",
            "v3.12.3",
            "v3.11.9",
            "v3.10.14",
            "v3.12.2",
            "v3.11.8",
            "v3.12.1",
            "v3.11.7",
            "v3.11.6",
            "v3.12.0",
            "v3.11.5",
            "v3.10.13",
            "v3.11.4",
            "v3.10.12",
            "v3.10.11",
            "v3.11.3",
            "v3.10.10",
            "v3.11.2",
            "v3.10.9",
            "v3.11.1",
            "v3.11.0rc2",
            "v3.10.8",
            "v3.10.7",
            "v3.11.0rc1",
            "v3.10.6",
            "v3.11.0b5",
            "v3.11.0b4",
            "v3.10.5",
            "v3.11.0b3",
            "v3.11.0b2",
            "v3.11.0b1",
            "v3.11.0a7",
            "v3.10.4",
            "v3.10.3",
            "v3.11.0a6",
            "v3.11.0a5",
            "v3.11.0a4",
            "v3.10.2",
            "v3.11.0a3",
            "v3.10.1",
            "v3.10.0rc2",
            "v3.10.0rc1",
            "v3.10.0b4",
            "v3.10.0b3",
            "v3.10.0b2",
            "v3.10.0b1",
            "v3.10.0a7",
            "v3.10.0a1",
            "v3.9.0a2",
            "v3.7.0a2",
            "v3.6.0b1",
            "v3.6.0a3",
            "v3.5.0b1",
            "v3.5.0a4",
            "v3.5.0a3",
            "v3.5.0a2",
            "v3.5.0a1",
            "v3.4.0b3",
            "v3.4.0b2",
            "v3.4.0b1",
            "v3.4.0a4",
            "v3.4.0a3",
            "v3.4.0a2",
            "v3.4.0a1",
            "v3.3.0rc3",
            "v3.3.0rc2",
            "v3.3.0rc1",
            "v3.3.0b2",
            "v3.3.0b1",
            "v3.3.0a4",
            "v3.3.0a3",
            "v3.3.0a2",
            "v3.2rc3",
            "v3.2rc2",
            "v3.2rc1",
            "v3.2b2",
            "v3.2b1",
            "v3.2a4",
            "v3.2a3",
            "v3.2a2",
            "v3.2a1",
            "v3.1",
            "v3.1rc2",
            "v3.1rc1",
            "v3.1b1",
            "v3.1a2",
            "v3.1a1",
            "v3.0rc3",
            "v3.0rc2",
            "v3.0rc1",
            "v3.0b3",
            "v3.0b2",
            "v3.0b1",
            "v3.0a5",
            "v3.0a4",
            "v3.0a3",
            "v3.0a2",
            "v3.0a1",
            "v2.4",
            "v2.4c1",
            "v2.4b2",
            "v2.4b1",
            "v2.4a3",
            "v2.4a2",
            "v2.4a1",
            "v2.3c2",
            "v2.3c1",
            "v2.2a3",
            "v2.1",
            "v2.1c2",
            "v2.1c1",
            "v2.1b2",
            "v2.1b1",
            "v2.1a2",
            "v2.1a1",
            "v2.0",
            "v2.0c1",
            "v2.0b2",
            "v2.0b1",
            "v1.6a2",
            "v1.6a1",
            "v1.5.2",
            "v1.5.2c1",
            "v1.5.2b2",
            "v1.5.2b1",
            "v1.5.2a2",
            "v1.5.2a1",
            "v1.5.1",
            "v1.5",
            "v1.5b2",
            "v1.5b1",
            "v1.5a4",
            "v1.5a3",
            "v1.5a2",
            "v1.5a1",
            "v1.4",
            "v1.4b3",
            "v1.4b2",
            "v1.4b1",
            "v1.3",
            "v1.3b1",
            "v1.2",
            "v1.2b4",
            "v1.2b3",
            "v1.2b2",
            "v1.2b1",
            "v1.1.1",
            "v1.1",
            "v1.0.2",
            "v1.0.1",
            "v0.9.9",
            "v0.9.8"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-7774.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:32.842514931Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/7xxx/CVE-2026-7774.json",
        "https://mail.python.org/archives/list/security-announce@python.org/thread/4FU62L2M6RMMHT2QPGQNPEHHUND7CEX5/",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-7774",
        "https://github.com/python/cpython/issues/149486",
        "https://github.com/python/cpython/commit/0478bd83d82b255e0f29f613367a59d261e7eaa2",
        "https://github.com/python/cpython/commit/0d28f5e46e151718972dfabd91205444d0037b6d",
        "https://github.com/python/cpython/commit/10a13bee3c24f9c62b602e696334ff2272a40efc",
        "https://github.com/python/cpython/commit/578411982c16f753f4893532510099ef665117da",
        "https://github.com/python/cpython/commit/5cf47a248c35c375d610b87b2f72fd1ed454b558",
        "https://github.com/python/cpython/commit/74cca9a92fb7d653e404843a56b8bdc7b0afdbbf",
        "https://github.com/python/cpython/commit/c063191cb7f9170f9565e305f8aa2b79ab2bf609",
        "https://github.com/python/cpython/pull/149487",
        "https://github.com/python/cpython"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-22"
        ],
        "cna_assigner": "PSF",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/7xxx/CVE-2026-7774.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-7774",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 500052,
  "published_at": "2026-06-04T14:21:23.904+00:00"
}