cve-2022-26612
Vulnerability from cvelistv5
Published
2022-04-07 18:20
Modified
2024-08-03 05:11
Severity ?
Summary
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
Impacted products
Vendor Product Version
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-03T05:11:43.529Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://lists.apache.org/thread/hslo7wzw2449gv1jyjk8g6ttd7935fyz"
          },
          {
            "tags": [
              "x_refsource_CONFIRM",
              "x_transferred"
            ],
            "url": "https://security.netapp.com/advisory/ntap-20220519-0004/"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "platforms": [
            "Windows"
          ],
          "product": "Apache Hadoop",
          "vendor": "Apache Software Foundation",
          "versions": [
            {
              "lessThan": "3.2.3",
              "status": "affected",
              "version": "unspecified",
              "versionType": "custom"
            },
            {
              "status": "affected",
              "version": "3.3.1"
            },
            {
              "status": "affected",
              "version": "3.3.2"
            },
            {
              "lessThan": "All*",
              "status": "unaffected",
              "version": "3.4",
              "versionType": "custom"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "value": "This issue was reported by a member of GitHub Security Lab, Jaroslav Loba\u010devski (https://github.com/JarLob)."
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "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\u0027t 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"
        }
      ],
      "metrics": [
        {
          "other": {
            "content": {
              "other": "high"
            },
            "type": "unknown"
          }
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "description": "unpackEntries during TAR extraction follows symbolic links which allows writing outside expected base directory on Windows",
              "lang": "en",
              "type": "text"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2022-05-19T19:06:26",
        "orgId": "f0158376-9dc2-43b6-827c-5f631a4d8d09",
        "shortName": "apache"
      },
      "references": [
        {
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://lists.apache.org/thread/hslo7wzw2449gv1jyjk8g6ttd7935fyz"
        },
        {
          "tags": [
            "x_refsource_CONFIRM"
          ],
          "url": "https://security.netapp.com/advisory/ntap-20220519-0004/"
        }
      ],
      "source": {
        "discovery": "UNKNOWN"
      },
      "timeline": [
        {
          "lang": "en",
          "time": "2022-02-09T00:00:00",
          "value": "Issue was reported to Apache Hadoop security team."
        },
        {
          "lang": "en",
          "time": "2022-02-17T00:00:00",
          "value": "First iteration of the fix was proposed."
        },
        {
          "lang": "en",
          "time": "2022-02-21T00:00:00",
          "value": "Involved the Github Security team for reviewing the fix."
        },
        {
          "lang": "en",
          "time": "2022-02-24T00:00:00",
          "value": "Second iteration of the fix was proposed."
        },
        {
          "lang": "en",
          "time": "2022-03-08T00:00:00",
          "value": "Third iteration of the fix was proposed."
        },
        {
          "lang": "en",
          "time": "2022-03-10T00:00:00",
          "value": "Issue was fixed and committed to the trunk branch."
        },
        {
          "lang": "en",
          "time": "2022-04-01T00:00:00",
          "value": "Requested review of the announcement from the reporter."
        },
        {
          "lang": "en",
          "time": "2022-04-07T00:00:00",
          "value": "Announcement review by the reporter completed."
        }
      ],
      "title": "Arbitrary file write in FileUtil#unpackEntries on Windows",
      "x_generator": {
        "engine": "Vulnogram 0.0.9"
      },
      "x_legacyV4Record": {
        "CVE_data_meta": {
          "ASSIGNER": "security@apache.org",
          "ID": "CVE-2022-26612",
          "STATE": "PUBLIC",
          "TITLE": "Arbitrary file write in FileUtil#unpackEntries on Windows"
        },
        "affects": {
          "vendor": {
            "vendor_data": [
              {
                "product": {
                  "product_data": [
                    {
                      "product_name": "Apache Hadoop",
                      "version": {
                        "version_data": [
                          {
                            "platform": "Windows",
                            "version_affected": "\u003c",
                            "version_value": "3.2.3"
                          },
                          {
                            "platform": "Windows",
                            "version_affected": "=",
                            "version_value": "3.3.1"
                          },
                          {
                            "platform": "Windows",
                            "version_affected": "=",
                            "version_value": "3.3.2"
                          },
                          {
                            "platform": "Windows",
                            "version_affected": "!\u003e=",
                            "version_name": "All",
                            "version_value": "3.4"
                          }
                        ]
                      }
                    }
                  ]
                },
                "vendor_name": "Apache Software Foundation"
              }
            ]
          }
        },
        "credit": [
          {
            "lang": "eng",
            "value": "This issue was reported by a member of GitHub Security Lab, Jaroslav Loba\u010devski (https://github.com/JarLob)."
          }
        ],
        "data_format": "MITRE",
        "data_type": "CVE",
        "data_version": "4.0",
        "description": {
          "description_data": [
            {
              "lang": "eng",
              "value": "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\u0027t 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"
            }
          ]
        },
        "generator": {
          "engine": "Vulnogram 0.0.9"
        },
        "impact": [
          {
            "other": "high"
          }
        ],
        "problemtype": {
          "problemtype_data": [
            {
              "description": [
                {
                  "lang": "eng",
                  "value": "unpackEntries during TAR extraction follows symbolic links which allows writing outside expected base directory on Windows"
                }
              ]
            }
          ]
        },
        "references": {
          "reference_data": [
            {
              "name": "https://lists.apache.org/thread/hslo7wzw2449gv1jyjk8g6ttd7935fyz",
              "refsource": "MISC",
              "url": "https://lists.apache.org/thread/hslo7wzw2449gv1jyjk8g6ttd7935fyz"
            },
            {
              "name": "https://security.netapp.com/advisory/ntap-20220519-0004/",
              "refsource": "CONFIRM",
              "url": "https://security.netapp.com/advisory/ntap-20220519-0004/"
            }
          ]
        },
        "source": {
          "discovery": "UNKNOWN"
        },
        "timeline": [
          {
            "lang": "en",
            "time": "2022-02-09T00:00:00",
            "value": "Issue was reported to Apache Hadoop security team."
          },
          {
            "lang": "en",
            "time": "2022-02-17T00:00:00",
            "value": "First iteration of the fix was proposed."
          },
          {
            "lang": "en",
            "time": "2022-02-21T00:00:00",
            "value": "Involved the Github Security team for reviewing the fix."
          },
          {
            "lang": "en",
            "time": "2022-02-24T00:00:00",
            "value": "Second iteration of the fix was proposed."
          },
          {
            "lang": "en",
            "time": "2022-03-08T00:00:00",
            "value": "Third iteration of the fix was proposed."
          },
          {
            "lang": "en",
            "time": "2022-03-10T00:00:00",
            "value": "Issue was fixed and committed to the trunk branch."
          },
          {
            "lang": "en",
            "time": "2022-04-01T00:00:00",
            "value": "Requested review of the announcement from the reporter."
          },
          {
            "lang": "en",
            "time": "2022-04-07T00:00:00",
            "value": "Announcement review by the reporter completed."
          }
        ]
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "f0158376-9dc2-43b6-827c-5f631a4d8d09",
    "assignerShortName": "apache",
    "cveId": "CVE-2022-26612",
    "datePublished": "2022-04-07T18:20:12",
    "dateReserved": "2022-03-07T00:00:00",
    "dateUpdated": "2024-08-03T05:11:43.529Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2022-26612\",\"sourceIdentifier\":\"security@apache.org\",\"published\":\"2022-04-07T19:15:08.917\",\"lastModified\":\"2024-11-21T06:54:11.850\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"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\u0027t 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\"},{\"lang\":\"es\",\"value\":\"En Apache Hadoop, la funci\u00f3n unTar usa la funci\u00f3n unTarUsingJava en Windows y la utilidad tar incorporada en Unix y otros sistemas operativos. Como resultado, una entrada TAR puede crear un enlace simb\u00f3lico bajo el directorio de extracci\u00f3n esperado que apunta a un directorio externo. Una entrada TAR posterior puede extraer un archivo arbitrario en el directorio externo usando el nombre del enlace simb\u00f3lico. Sin embargo, esto ser\u00eda detectado por la misma comprobaci\u00f3n targetDirPath en Unix debido a la llamada getCanonicalPath. Sin embargo, en Windows, getCanonicalPath no resuelve los enlaces simb\u00f3licos, lo que evita la comprobaci\u00f3n. unpackEntries durante la extracci\u00f3n del TAR sigue los enlaces simb\u00f3licos, lo que permite escribir fuera del directorio base esperado en Windows. Esto ha sido abordado en Apache Hadoop versi\u00f3n 3.2.3\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":9.8,\"baseSeverity\":\"CRITICAL\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":3.9,\"impactScore\":5.9}],\"cvssMetricV2\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"2.0\",\"vectorString\":\"AV:N/AC:L/Au:N/C:P/I:P/A:P\",\"baseScore\":7.5,\"accessVector\":\"NETWORK\",\"accessComplexity\":\"LOW\",\"authentication\":\"NONE\",\"confidentialityImpact\":\"PARTIAL\",\"integrityImpact\":\"PARTIAL\",\"availabilityImpact\":\"PARTIAL\"},\"baseSeverity\":\"HIGH\",\"exploitabilityScore\":10.0,\"impactScore\":6.4,\"acInsufInfo\":false,\"obtainAllPrivilege\":false,\"obtainUserPrivilege\":false,\"obtainOtherPrivilege\":false,\"userInteractionRequired\":false}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-59\"}]}],\"configurations\":[{\"operator\":\"AND\",\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:apache:hadoop:*:*:*:*:*:*:*:*\",\"versionEndExcluding\":\"3.2.3\",\"matchCriteriaId\":\"21FCF606-7254-413A-8923-69887AED98D3\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:apache:hadoop:3.3.1:-:*:*:*:*:*:*\",\"matchCriteriaId\":\"BBCE58D9-7178-4BBF-9204-D2F13EC068F6\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:apache:hadoop:3.3.2:-:*:*:*:*:*:*\",\"matchCriteriaId\":\"F560C4EF-56B6-4890-8068-8CFFAD7690D4\"}]},{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":false,\"criteria\":\"cpe:2.3:o:microsoft:windows:-:*:*:*:*:*:*:*\",\"matchCriteriaId\":\"A2572D17-1DE6-457B-99CC-64AFD54487EA\"}]}]}],\"references\":[{\"url\":\"https://lists.apache.org/thread/hslo7wzw2449gv1jyjk8g6ttd7935fyz\",\"source\":\"security@apache.org\",\"tags\":[\"Exploit\",\"Vendor Advisory\"]},{\"url\":\"https://security.netapp.com/advisory/ntap-20220519-0004/\",\"source\":\"security@apache.org\",\"tags\":[\"Third Party Advisory\"]},{\"url\":\"https://lists.apache.org/thread/hslo7wzw2449gv1jyjk8g6ttd7935fyz\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Exploit\",\"Vendor Advisory\"]},{\"url\":\"https://security.netapp.com/advisory/ntap-20220519-0004/\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Third Party Advisory\"]}]}}"
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.