Cyber Resilience

CVE-2023-26031

Apache Hadoop 3.3.1 – 3.3.4

Published
16 November 2023
Modified
13 February 2025
Patch / advisory
CVSS Score v3.1 7.5
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.021 80th percentile
Risk Priority 67 floored blend · peak EPSS

Summary

CVE-2023-26031 is a high-severity Untrusted Search Path (CWE-426) vulnerability in Apache Hadoop. Its CVSS base score is 7.5 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Path Interception (T1034); ranked in the top 20% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2023-26031 is a relative library resolution flaw in the container-executor native binary shipped with Apache Hadoop 3.3.1 through 3.3.4 on Linux. The issue stems from a prior change (YARN-10495) that expanded the RUNPATH/RPATH used to locate shared libraries such as libcrypto.so from "$ORIGIN/" to "$ORIGIN/:../lib/native/". When the binary is installed with root ownership and the setuid bit, an attacker who can write to a directory on that search path can supply a malicious library that executes with root privileges.

A local user on a node running the vulnerable binary can therefore escalate to root. When the YARN cluster accepts work from remote authenticated users and executes those jobs on the physical host rather than inside containers, the same vector can be reached remotely, granting the remote user root access on the host.

The official fix, delivered in YARN-11441 and included in Hadoop 3.3.5, reverts the RUNPATH change so that only "$ORIGIN/" is searched. Administrators can verify exposure by inspecting the binary with readelf; a RUNPATH containing "../lib/native/" combined with root ownership and the setuid bit indicates a vulnerable installation. NetApp and Apache advisories reiterate that disabling the setuid bit or moving to the patched release eliminates the risk, although the former disables YARN Secure Containers.

EPSS scores for the CVE rose from a low baseline to a peak of 0.1683, indicating that exploitation interest increased after public disclosure.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Relative library resolution in linux container-executor binary in Apache Hadoop 3.3.1-3.3.4 on Linux allows local user to gain root privileges. If the YARN cluster is accepting work from remote (authenticated) users, this MAY permit remote users to gain root privileges.…

more

Hadoop 3.3.0 updated the " YARN Secure Containers https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/SecureContainer.html " to add a feature for executing user-submitted applications in isolated linux containers. The native binary HADOOP_HOME/bin/container-executor is used to launch these containers; it must be owned by root and have the suid bit set in order for the YARN processes to run the containers as the specific users submitting the jobs. The patch " YARN-10495 https://issues.apache.org/jira/browse/YARN-10495 . make the rpath of container-executor configurable" modified the library loading path for loading .so files from "$ORIGIN/" to ""$ORIGIN/:../lib/native/". This is the a path through which libcrypto.so is located. Thus it is is possible for a user with reduced privileges to install a malicious libcrypto library into a path to which they have write access, invoke the container-executor command, and have their modified library executed as root. If the YARN cluster is accepting work from remote (authenticated) users, and these users' submitted job are executed in the physical host, rather than a container, then the CVE permits remote users to gain root privileges. The fix for the vulnerability is to revert the change, which is done in YARN-11441 https://issues.apache.org/jira/browse/YARN-11441 , "Revert YARN-10495". This patch is in hadoop-3.3.5. To determine whether a version of container-executor is vulnerable, use the readelf command. If the RUNPATH or RPATH value contains the relative path "./lib/native/" then it is at risk $ readelf -d container-executor|grep 'RUNPATH\|RPATH' 0x000000000000001d (RUNPATH) Library runpath: [$ORIGIN/:../lib/native/] If it does not, then it is safe: $ readelf -d container-executor|grep 'RUNPATH\|RPATH' 0x000000000000001d (RUNPATH) Library runpath: [$ORIGIN/] For an at-risk version of container-executor to enable privilege escalation, the owner must be root and the suid bit must be set $ ls -laF /opt/hadoop/bin/container-executor ---Sr-s---. 1 root hadoop 802968 May 9 20:21 /opt/hadoop/bin/container-executor A safe installation lacks the suid bit; ideally is also not owned by root. $ ls -laF /opt/hadoop/bin/container-executor -rwxr-xr-x. 1 yarn hadoop 802968 May 9 20:21 /opt/hadoop/bin/container-executor This configuration does not support Yarn Secure Containers, but all other hadoop services, including YARN job execution outside secure containers continue to work.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1034 Path Interception Persistence
**This technique has been deprecated.
T1574 Hijack Execution Flow Stealth
Adversaries may execute their own malicious payloads by hijacking the way operating systems run programs.
T1574.001 DLL Stealth
Adversaries may abuse dynamic-link library files (DLLs) in order to achieve persistence, escalate privileges, and evade defenses.
T1574.008 Path Interception by Search Order Hijacking Stealth
Adversaries may execute their own malicious payloads by hijacking the search order used to load other programs.
T1574.007 Path Interception by PATH Environment Variable Stealth
Adversaries may execute their own malicious payloads by hijacking environment variables used to load libraries.
T1574.009 Path Interception by Unquoted Path Stealth
Adversaries may execute their own malicious payloads by hijacking vulnerable file path references.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2024-23454Same product: Apache Hadoop
CVE-2025-49124Same vendor: Apache
CVE-2025-27821Same product: Apache Hadoop
CVE-2024-45207Shared CWE-426
CVE-2026-57097Shared CWE-426
CVE-2026-53858Shared CWE-426
CVE-2025-29903Shared CWE-426
CVE-2024-47422Shared CWE-426
CVE-2026-45772Shared CWE-426
CVE-2023-36898Shared CWE-426

Affected Assets

apache
hadoop
3.3.1 — 3.3.4

Mitigating Controls

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-05 full match
prevents

Preventing execution of unauthorized code directly blocks the malicious binaries that an untrusted search path would load.

PR.PS-06 mostly match
prevents

Secure development practices include avoiding or sanitizing externally influenced search paths in application code.

PR.PS-01 partial match
prevents

Hardened configuration baselines can enforce safe search paths and restrict environment variables that enable the weakness.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing can discover search-path issues but does not itself prevent them in production code.

degrades

Restricting software installation reduces the chance that untrusted binaries or libraries are placed in search paths.

prevents

Secure architecture principles include hard-coded or validated search paths and avoiding reliance on untrusted directories.

prevents

Secure coding standards require absolute paths or integrity-checked search paths, directly mitigating CWE-426.

none

Change-management processes can enforce review of path-handling changes, indirectly lowering risk.

References