CVE-2022-26612 Arbitrary file write in FileUtil#unpackEntries on Windows
An attacker can write arbitrary files outside the intended directory on Windows by exploiting symlink handling during TAR extraction in Apache Hadoop.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2022-26612?
CVE-2022-26612 is a critical path traversal vulnerability in Apache Hadoop, published on 7 Apr 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
In Apache Hadoop, The unTar function uses unTarUsingJava function on Windows and the built-in tar utility on Unix and other OSes. As a result, a TAR entry may create a symlink under the expected extraction directory which points to an external directory. A subsequent TAR entry may extract an arbitrary file into the external directory using the symlink name. This however would be caught by the same targetDirPath check on Unix because of the getCanonicalPath call. However on Windows, getCanonicalPath doesn't resolve symbolic links, which bypasses the check. unpackEntries during TAR extraction follows symbolic links which allows writing outside expected base directory on Windows. This was addressed in Apache Hadoop 3.2.3
Weakness: CWE-59
Which versions are affected by CVE-2022-26612?
6 open source packages ship an affected version, including org.apache.hadoop:hadoop-common. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
org.apache.hadoop:hadoop-common Maven | All versions | 2.10.2 |
org.apache.hadoop:hadoop-common Maven | All versions | 2.10.2 |
org.apache.hadoop:hadoop-common Maven | From 3.2.0 | 3.2.3 |
org.apache.hadoop:hadoop-common Maven | From 3.2.0 | 3.2.3 |
org.apache.hadoop:hadoop-common Maven | From 3.3.0 | 3.3.3 |
org.apache.hadoop:hadoop-common Maven | From 3.3.0 | 3.3.3 |
Products include Apache Hadoop.
How do I fix CVE-2022-26612?
Upgrade org.apache.hadoop:hadoop-common to a fixed version for your release line: 2.10.2, 3.2.3 or 3.3.3.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2022-26612 being exploited?
There is no known exploitation of CVE-2022-26612 in the wild and no public exploit code.
Other vulnerabilities in Apache Hadoop
- CVE-2022-25168 Command injection in org.apache.hadoop.fs.FileUtil.unTarUsingTar
- CVE-2021-37404 Heap buffer overflow in libhdfs native library
- CVE-2019-17195 Improper Check for Unusual or Exceptional Conditions in Connect2id Nimbus JOSE+JWT
- CVE-2017-15718 Exposure of Sensitive Information in Hadoop
- CVE-2012-4449 Use of a Broken or Risky Cryptographic Algorithm in Apache Hadoop
Sources
Also known as GHSA-gx2c-fvhc-ph4j.