Release date:
2026-09-24 00:00:47 UTC
Description:
* SECURITY UPDATE: tarfile PEP 706 "data"/"tar" extraction filter bypass
via a hard link to a symlink. A crafted archive whose hard link names a
symlink stored deeper in the archive made makelink_with_filter() call
os.link() on the unresolved source; link(2) does not follow symlinks, so
the extracted member became the same symlink inode under the hard link's
own, shallower name, where its relative payload re-bases outside the
destination. The chmod()/utime() that tarfile applies next then hit the
outside file, changing its mode and mtime, and its contents became
readable from inside the extracted tree (CWE-59).
- debian/patches/CVE-2026-82049.patch: backport of cpython
b8f23e307097552eaea2604383a12ab280520d0d (gh-157190, GH-157191,
GH-157192), the 3.13-branch form of the fix; the changed line and its
comment are upstream's verbatim, only re-anchored because this tree
has no "unlink an existing targetpath" step before os.link(). The
upstream regression test test_sneaky_hardlink_relocation is carried
too, minus the @symlink_test / @os_helper.skip_unless_hardlink
decorators and with os_helper.can_symlink() spelled
support.can_symlink(), neither of which exists in 3.6.
- The one-line fix closes only the variant where the archive carries a
decoy file at the outer name, so os.path.exists(tarinfo._link_target)
is true and extraction goes through os.link(). The decoy-less variant
never reaches os.link() at all; under the "data" filter it is rejected
by CVE-2026-11940.patch, already in this package, so the two must not
be separated.
- CVE-2026-82049
* The Misc/NEWS.d fragment of the upstream commit is omitted; this version
ships a single Misc/NEWS file.
Updated packages:
-
alt-python36_3.6.15-47_amd64.deb
sha:98dd08d130ff74f4a99bbcdefba7658891c8facd
-
alt-python36-debug_3.6.15-47_amd64.deb
sha:733ff3b1ff1f2d53699b97b7bca7d5d15931080c
-
alt-python36-devel_3.6.15-47_amd64.deb
sha:4b66caeba4f2b124dba759d335787e6e82b36c29
-
alt-python36-libs_3.6.15-47_amd64.deb
sha:1c10ff1a1e152636f7c2dfcaa05c90b6ec39316b
-
alt-python36-test_3.6.15-47_amd64.deb
sha:1fc4f9af89f91e381580cceb03665b2aa8ecc867
-
alt-python36-tkinter_3.6.15-47_amd64.deb
sha:7dec7f80a958b9c46d0a59b49f9382c111b68e24
-
alt-python36-tools_3.6.15-47_amd64.deb
sha:33205e6e6b255f48fc4173d8a85cbe60ef291aad
-
alt-python36_3.6.15-47_arm64.deb
sha:a2f4d15739de2e7a43b03ce819c27c771034602f
-
alt-python36-debug_3.6.15-47_arm64.deb
sha:91d131a704168a103c898c8bb11de6328052bc99
-
alt-python36-devel_3.6.15-47_arm64.deb
sha:e95ac83ce5b18532096028ef8c9503bd8e3dc0c0
-
alt-python36-libs_3.6.15-47_arm64.deb
sha:732f9c68d76561456798c1924fc3073afce0fa10
-
alt-python36-test_3.6.15-47_arm64.deb
sha:31406c0df5ad9663d751c1de831281921e2ac809
-
alt-python36-tkinter_3.6.15-47_arm64.deb
sha:2bb1bc7e219453f4b7ad58e6ebeb5ac59bdefd4e
-
alt-python36-tools_3.6.15-47_arm64.deb
sha:b7d47727e99a10b0c651fe682d8def6f32329927
Notes:
This page is generated automatically and has not been checked for errors. For clarification or
corrections please contact the
CloudLinux Packaging Team.