OESA-2026-4154 (CVE-2026-86805)

Vulnerability from osv_openeuler – Published: 2026-09-30 13:47 – Updated: 2026-09-30 13:47 – Source website
VLAI
Summary
glibc security update
Details

The GNU C Library project provides the core libraries for the GNU system and GNU/Linux systems, as well as many other systems that use Linux as the kernel. These libraries provide critical APIs including ISO C11, POSIX.1-2008, BSD, OS-specific APIs and more. These APIs include such foundational facilities as open, read, write, malloc, printf, getaddrinfo, dlopen, pthread_create, crypt, login, exit and more.

Security Fix(es):

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.(CVE-2026-86805)

A stack-based buffer overflow in the dynamic loader (ld.so) of the GNU C Library (glibc) versions 2.14 through 2.44 allows a local attacker to crash or corrupt the memory of setuid/setgid (AT_SECURE) programs.

When such a program's DT_RPATH or DT_RUNPATH begins with $ORIGIN and is followed by NUL or '/' the loader both reads past the end of the path buffer and writes past the end of a stack-allocated internal buffer. The corrupted loader stack can lead to a loader crash (denial of service) and limited disclosure of process memory.(CVE-2026-95818)


{
  "affected": [
    {
      "ecosystem_specific": {
        "aarch64": [
          "glibc-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-all-langpacks-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-common-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-debuginfo-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-debugsource-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-debugutils-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-devel-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-locale-archive-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-locale-source-2.38-128.oe2403sp3.aarch64.rpm",
          "glibc-nss-devel-2.38-128.oe2403sp3.aarch64.rpm",
          "libnsl-2.38-128.oe2403sp3.aarch64.rpm",
          "nscd-2.38-128.oe2403sp3.aarch64.rpm",
          "nss_modules-2.38-128.oe2403sp3.aarch64.rpm"
        ],
        "noarch": [
          "glibc-help-2.38-128.oe2403sp3.noarch.rpm"
        ],
        "src": [
          "glibc-2.38-128.oe2403sp3.src.rpm"
        ],
        "x86_64": [
          "glibc-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-all-langpacks-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-common-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-debuginfo-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-debugsource-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-debugutils-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-devel-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-locale-archive-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-locale-source-2.38-128.oe2403sp3.x86_64.rpm",
          "glibc-nss-devel-2.38-128.oe2403sp3.x86_64.rpm",
          "libnsl-2.38-128.oe2403sp3.x86_64.rpm",
          "nscd-2.38-128.oe2403sp3.x86_64.rpm",
          "nss_modules-2.38-128.oe2403sp3.x86_64.rpm"
        ]
      },
      "package": {
        "ecosystem": "openEuler:24.03-LTS-SP3",
        "name": "glibc",
        "purl": "pkg:rpm/openEuler/glibc\u0026distro=openEuler-24.03-LTS-SP3"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "2.38-128.oe2403sp3"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "severity": "Medium"
  },
  "details": "The GNU C Library project provides the core libraries for the GNU system and GNU/Linux systems, as well as many other systems that use Linux as the kernel. These libraries provide critical APIs including ISO C11, POSIX.1-2008, BSD, OS-specific APIs and more. These APIs include such foundational facilities as open, read, write, malloc, printf, getaddrinfo, dlopen, pthread_create, crypt,  login, exit and more.\r\n\r\nSecurity Fix(es):\n\nA 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.\n\nExploitation requires an installed setuid or setgid binary whose DT_RPATH uses $ORIGIN followed by \u0026quot;..\u0026quot; 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.(CVE-2026-86805)\n\nA stack-based buffer overflow in the dynamic loader (ld.so) of the GNU C Library (glibc) versions 2.14 through 2.44 allows a local attacker to crash or corrupt the memory of setuid/setgid (AT_SECURE) programs.\n\nWhen such a program\u0026apos;s DT_RPATH or DT_RUNPATH begins with $ORIGIN and is followed by NUL or \u0026apos;/\u0026apos; the loader both reads past the end of the path buffer and writes past the end of a stack-allocated internal buffer. The corrupted loader stack can lead to a loader crash (denial of service) and limited disclosure of process memory.(CVE-2026-95818)",
  "id": "OESA-2026-4154",
  "modified": "2026-09-30T13:47:07Z",
  "published": "2026-09-30T13:47:07Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-4154"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-86805"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-95818"
    }
  ],
  "schema_version": "1.7.2",
  "severity": [
    {
      "score": "CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:L",
      "type": "CVSS_V3"
    }
  ],
  "summary": "glibc security update",
  "upstream": [
    "CVE-2026-86805",
    "CVE-2026-95818"
  ]
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

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.

Loading…

Loading…

Loading…

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.


Loading…