p PatchFirst

CVE-2026-86805

CVE-2026-86805 · AT_SECURE programs may load attacker-controlled code via $ORIGIN

This page contains facts from public vulnerability sources. Check the original advisory before updating.

A time-of-check to time-of-use (TOCTOU) race condition in the dynamic loader (ld.so) of the GNU C Library (glibc) versions 2.14 through 2.44 allows a local attacker to escalate privileges. When expanding $ORIGIN in DT_RPATH for setuid/setgid (AT_SECURE) programs, glibc validates the lexically normalized search path against the trusted directories but then opens the raw, un-normalized path. On systems where the Linux fs.protected_hardlinks sysctl is disabled, a local attacker who hard-links such a program into an attacker-controlled directory and wins a race to replace an intermediate path component with a symbolic link can direct the loader outside the trusted directory, causing it to load an attacker-controlled shared object and execute arbitrary code with the elevated privileges of the program. Exploitation requires an installed setuid or setgid binary whose DT_RPATH uses $ORIGIN followed by ".." traversal that normalizes into a trusted directory, and the ability to hard-link that binary and win the race by swapping a path component for a symbolic link. Major Linux-based OS distributions ship with fs.protected_hardlinks enabled by default and mitigate the vulnerability.

CVSS 6.3 · Medium · EPSS 0.1% · Fix available

Published
Updated

Stack: system

Affected products and versions

  • glibc

    Versions
    • ≥ 2.14, < 2.45: Affected (custom)

    Update to 2.45

  • glibc Debian:12

    Versions
    • 2.36-10~0
    • 2.36-9
    • 2.36-9+deb12u1
    • 2.36-9+deb12u10
    • 2.36-9+deb12u11
    • 2.36-9+deb12u12
    • 2.36-9+deb12u13
    • 2.36-9+deb12u14
    • 2.36-9+deb12u2
    • 2.36-9+deb12u3
    • 2.36-9+deb12u4
    • 2.36-9+deb12u5
    • 2.36-9+deb12u6
    • 2.36-9+deb12u7
    • 2.36-9+deb12u8
    • 2.36-9+deb12u9
    • 2.36-9+loong64
    • 2.37-1
    • 2.37-10
    • 2.37-11
    • 2.37-12
    • 2.37-13
    • 2.37-14
    • 2.37-15
    • 2.37-15.1
    • 2.37-15.1+sh4
    • 2.37-15~deb13u1
    • 2.37-16
    • 2.37-17
    • 2.37-18
    • 2.37-19
    • 2.37-2
    • 2.37-3
    • 2.37-4
    • 2.37-5
    • 2.37-6
    • 2.37-7
    • 2.37-8
    • 2.37-9
    • 2.38-1
    • 2.38-10
    • 2.38-11
    • 2.38-12
    • 2.38-12.1
    • 2.38-13
    • 2.38-14
    • 2.38-15~0
    • 2.38-15~1
    • 2.38-2
    • 2.38-3
    • 2.38-4
    • 2.38-5
    • 2.38-6
    • 2.38-7
    • 2.38-7~0+hurd.1
    • 2.38-8
    • 2.38-9
    • 2.39-1
    • 2.39-2
    • 2.39-3
    • 2.39-3.1
    • 2.39-4
    • 2.39-5
    • 2.39-6
    • 2.39-6+hurd.1
    • 2.39-6+sh4
    • 2.39-7
    • 2.39-7+sh4
    • 2.39-7~0
    • 2.39-8~0
    • 2.40-1
    • 2.40-2
    • 2.40-2+sh4
    • 2.40-3
    • 2.40-3+sh4
    • 2.40-4
    • 2.40-5
    • 2.40-5~hurd.1
    • 2.40-6
    • 2.40-6~1
    • 2.40-7
    • 2.41-1
    • 2.41-10
    • 2.41-11
    • 2.41-12
    • 2.41-13~hurd.0
    • 2.41-13~hurd.1
    • 2.41-2
    • 2.41-3
    • 2.41-4
    • 2.41-4~0
    • 2.41-5
    • 2.41-5~0
    • 2.41-6
    • 2.41-7
    • 2.41-8
    • 2.41-8~0
    • 2.41-8~1
    • 2.41-9
    • 2.41-9~0
    • 2.41-9~1
    • 2.42-1
    • 2.42-10
    • 2.42-11
    • 2.42-12
    • 2.42-12~hurd.1
    • 2.42-13
    • 2.42-14
    • 2.42-14~hurd.1
    • 2.42-15
    • 2.42-15~hurd.1
    • 2.42-16
    • 2.42-17
    • 2.42-2
    • 2.42-3
    • 2.42-4
    • 2.42-5
    • 2.42-6
    • 2.42-7
    • 2.42-8
    • 2.42-8~hurd.1
    • 2.42-8~hurd.2
    • 2.42-9
    • 2.43-1
    • 2.43-2
    • 2.43-3
    • 2.43-3+m68k
    • 2.43-4
    • 2.43-4+m68k
    • 2.43-5
    • 2.43-6
    • 2.43-7
    • 2.43-7~hurd.1
    • 2.44-1
    • 2.44-2
    • 2.44-3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • glibc Debian:13

    Versions
    • 2.41-12
    • 2.41-12+deb13u1
    • 2.41-12+deb13u2
    • 2.41-12+deb13u3
    • 2.41-12+deb13u4
    • 2.41-13~hurd.0
    • 2.41-13~hurd.1
    • 2.42-1
    • 2.42-10
    • 2.42-11
    • 2.42-12
    • 2.42-12~hurd.1
    • 2.42-13
    • 2.42-14
    • 2.42-14~hurd.1
    • 2.42-15
    • 2.42-15~hurd.1
    • 2.42-16
    • 2.42-17
    • 2.42-2
    • 2.42-3
    • 2.42-4
    • 2.42-5
    • 2.42-6
    • 2.42-7
    • 2.42-8
    • 2.42-8~hurd.1
    • 2.42-8~hurd.2
    • 2.42-9
    • 2.43-1
    • 2.43-2
    • 2.43-3
    • 2.43-3+m68k
    • 2.43-4
    • 2.43-4+m68k
    • 2.43-5
    • 2.43-6
    • 2.43-7
    • 2.43-7~hurd.1
    • 2.44-1
    • 2.44-2
    • 2.44-3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • glibc Debian:14

    Versions
    • 2.41-12
    • 2.41-13~hurd.0
    • 2.41-13~hurd.1
    • 2.42-1
    • 2.42-10
    • 2.42-11
    • 2.42-12
    • 2.42-12~hurd.1
    • 2.42-13
    • 2.42-14
    • 2.42-14~hurd.1
    • 2.42-15
    • 2.42-15~hurd.1
    • 2.42-16
    • 2.42-17
    • 2.42-2
    • 2.42-3
    • 2.42-4
    • 2.42-5
    • 2.42-6
    • 2.42-7
    • 2.42-8
    • 2.42-8~hurd.1
    • 2.42-8~hurd.2
    • 2.42-9
    • 2.43-1
    • 2.43-2
    • 2.43-3
    • 2.43-3+m68k
    • 2.43-4
    • 2.43-4+m68k
    • 2.43-5
    • 2.43-6
    • 2.43-7~hurd.1
    Affected ranges
    • ECOSYSTEM: < 2.43-7

    Update to 2.43-7

  • eglibc Ubuntu:Pro:14.04:LTS

    Versions
    • 2.17-93ubuntu4
    • 2.18-0ubuntu1
    • 2.18-0ubuntu2
    • 2.18-0ubuntu4
    • 2.18-0ubuntu5
    • 2.18-0ubuntu6
    • 2.18-0ubuntu7
    • 2.19-0ubuntu2
    • 2.19-0ubuntu3
    • 2.19-0ubuntu4
    • 2.19-0ubuntu5
    • 2.19-0ubuntu6
    • 2.19-0ubuntu6.1
    • 2.19-0ubuntu6.3
    • 2.19-0ubuntu6.4
    • 2.19-0ubuntu6.5
    • 2.19-0ubuntu6.6
    • 2.19-0ubuntu6.7
    • 2.19-0ubuntu6.8
    • 2.19-0ubuntu6.9
    • 2.19-0ubuntu6.10
    • 2.19-0ubuntu6.11
    • 2.19-0ubuntu6.13
    • 2.19-0ubuntu6.14
    • 2.19-0ubuntu6.15
    • 2.19-0ubuntu6.15+esm1
    • 2.19-0ubuntu6.15+esm2
    • 2.19-0ubuntu6.15+esm3
    • 2.19-0ubuntu6.15+esm4
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • glibc Ubuntu:Pro:16.04:LTS

    Versions
    • 2.21-0ubuntu4
    • 2.21-0ubuntu5
    • 2.21-0ubuntu6
    • 2.23-0ubuntu1
    • 2.23-0ubuntu2
    • 2.23-0ubuntu3
    • 2.23-0ubuntu4
    • 2.23-0ubuntu5
    • 2.23-0ubuntu6
    • 2.23-0ubuntu7
    • 2.23-0ubuntu9
    • 2.23-0ubuntu10
    • 2.23-0ubuntu11
    • 2.23-0ubuntu11.2
    • 2.23-0ubuntu11.3
    • 2.23-0ubuntu11.3+esm1
    • 2.23-0ubuntu11.3+esm2
    • 2.23-0ubuntu11.3+esm3
    • 2.23-0ubuntu11.3+esm5
    • 2.23-0ubuntu11.3+esm6
    • 2.23-0ubuntu11.3+esm7
    • 2.23-0ubuntu11.3+esm8
    • 2.23-0ubuntu11.3+esm9
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • glibc Ubuntu:Pro:18.04:LTS

    Versions
    • 2.26-0ubuntu2
    • 2.26-0ubuntu2.1
    • 2.27-0ubuntu2
    • 2.27-0ubuntu3
    • 2.27-3ubuntu1
    • 2.27-3ubuntu1.2
    • 2.27-3ubuntu1.3
    • 2.27-3ubuntu1.4
    • 2.27-3ubuntu1.5
    • 2.27-3ubuntu1.6
    • 2.27-3ubuntu1.6+esm1
    • 2.27-3ubuntu1.6+esm2
    • 2.27-3ubuntu1.6+esm3
    • 2.27-3ubuntu1.6+esm4
    • 2.27-3ubuntu1.6+esm5
    • 2.27-3ubuntu1.6+esm6
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • glibc Ubuntu:Pro:20.04:LTS

    Versions
    • 2.30-0ubuntu2
    • 2.30-0ubuntu3
    • 2.31-0ubuntu5
    • 2.31-0ubuntu6
    • 2.31-0ubuntu7
    • 2.31-0ubuntu9
    • 2.31-0ubuntu9.1
    • 2.31-0ubuntu9.2
    • 2.31-0ubuntu9.3
    • 2.31-0ubuntu9.7
    • 2.31-0ubuntu9.9
    • 2.31-0ubuntu9.12
    • 2.31-0ubuntu9.14
    • 2.31-0ubuntu9.15
    • 2.31-0ubuntu9.16
    • 2.31-0ubuntu9.17
    • 2.31-0ubuntu9.18
    • 2.31-0ubuntu9.18+esm1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • glibc Ubuntu:22.04:LTS

    Versions
    • 2.34-0ubuntu3
    • 2.35-0ubuntu1
    • 2.35-0ubuntu3
    • 2.35-0ubuntu3.1
    • 2.35-0ubuntu3.3
    • 2.35-0ubuntu3.4
    • 2.35-0ubuntu3.5
    • 2.35-0ubuntu3.6
    • 2.35-0ubuntu3.7
    • 2.35-0ubuntu3.8
    • 2.35-0ubuntu3.9
    • 2.35-0ubuntu3.10
    • 2.35-0ubuntu3.11
    • 2.35-0ubuntu3.12
    • 2.35-0ubuntu3.13
    • 2.35-0ubuntu3.14
    • 2.35-0ubuntu3.15
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • glibc Ubuntu:24.04:LTS

    Versions
    • 2.38-1ubuntu6
    • 2.38-3ubuntu1
    • 2.39-0ubuntu1
    • 2.39-0ubuntu2
    • 2.39-0ubuntu6
    • 2.39-0ubuntu8
    • 2.39-0ubuntu8.1
    • 2.39-0ubuntu8.2
    • 2.39-0ubuntu8.3
    • 2.39-0ubuntu8.4
    • 2.39-0ubuntu8.5
    • 2.39-0ubuntu8.6
    • 2.39-0ubuntu8.7
    • 2.39-0ubuntu8.8
    • 2.39-0ubuntu8.9
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • glibc Ubuntu:26.04:LTS

    Versions
    • 2.42-0ubuntu3
    • 2.42-2ubuntu1
    • 2.42-2ubuntu2
    • 2.42-2ubuntu4
    • 2.42-2ubuntu5
    • 2.43-2ubuntu1
    • 2.43-2ubuntu2
    • 2.43-2ubuntu2.3
    • 2.43-2ubuntu2.4
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

Original sources

Check your server →