[CLSA-2026:1790191648] Fix CVE(s): CVE-2026-82049
Type:
security
Severity:
Important
Release date:
2026-09-23 19:27:45 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.
CVEs fixed:
Updated packages:
  • alt-python36_3.6.15-47_amd64.deb
    sha:2fda127e056976721c23c0fdae6bf6971f40b001
  • alt-python36-debug_3.6.15-47_amd64.deb
    sha:8fece6e5742f33948661a3a610b06d1708fa0881
  • alt-python36-devel_3.6.15-47_amd64.deb
    sha:5f1bf4771533736fc6a12987a290ffe0cd18fc4d
  • alt-python36-libs_3.6.15-47_amd64.deb
    sha:8754f9d182361e85d0164f1f3d4c8be7c2ff9d77
  • alt-python36-test_3.6.15-47_amd64.deb
    sha:721bf1525abfe81effdb7abb2af1e89d1892f936
  • alt-python36-tkinter_3.6.15-47_amd64.deb
    sha:a6d22fd2a40d62d60085414be8275b4f7ed24196
  • alt-python36-tools_3.6.15-47_amd64.deb
    sha:580dbda9b5d1abeae3e9b35d0ec2def334dda0dd
  • alt-python36_3.6.15-47_arm64.deb
    sha:6ae17eaad09534ed1e782c0c569d4a0843ef454a
  • alt-python36-debug_3.6.15-47_arm64.deb
    sha:2d11ca52e9feece6d59f0774f7249326c65e0b2d
  • alt-python36-devel_3.6.15-47_arm64.deb
    sha:bfa3f43e57ee8566e8202329d3df2f57d0906726
  • alt-python36-libs_3.6.15-47_arm64.deb
    sha:905edc33690e43dd4adad11582a3e673819bec2f
  • alt-python36-test_3.6.15-47_arm64.deb
    sha:c12b410632c5f8f9fa1f0244883f698d1469afff
  • alt-python36-tkinter_3.6.15-47_arm64.deb
    sha:9bbea7f8749fba895dce492342cbc648df0f80d5
  • alt-python36-tools_3.6.15-47_arm64.deb
    sha:6bd2910d6a018884e595587838b3093316cab9f3
Notes:
This page is generated automatically and has not been checked for errors. For clarification or corrections please contact the CloudLinux Packaging Team.