{"answers":{"affected":"6 open source packages ship an affected version, including tar. It affects 4 products.","exploited":"There is no known exploitation of CVE-2021-37701 in the wild and no public exploit code.","fix":"Upgrade tar to a fixed version for your release line: 4.4.16, 5.0.8 or 6.1.7.","what":"CVE-2021-37701 is a high-severity path traversal vulnerability in Debian Debian Linux, published on 31 Aug 2021. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2021-37701 and fix it if it is affected.\n\nWhat it is: CVE-2021-37701 is a high-severity path traversal vulnerability in Debian Debian Linux, published on 31 Aug 2021. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.\nExploitation: There is no known exploitation of CVE-2021-37701 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- tar (npm): affected from 3.0.0; fixed in 4.4.16\n- tar (npm): affected from 3.0.0; fixed in 4.4.16\n- tar (npm): affected from 5.0.0; fixed in 5.0.8\n- tar (npm): affected from 5.0.0; fixed in 5.0.8\n- tar (npm): affected from 6.0.0; fixed in 6.1.7\n- tar (npm): affected from 6.0.0; fixed in 6.1.7\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2021-37701/ (Markdown: https://insights.sbomify.com/CVE-2021-37701/index.md)","id":"CVE-2021-37701","markdown":"https://insights.sbomify.com/CVE-2021-37701/index.md","name":"CVE-2021-37701","record":{"aliases":["ALPINE-CVE-2021-37701","CLEANSTART-2026-DX32207","CLEANSTART-2026-LR05885","DEBIAN-CVE-2021-37701","GHSA-9r2w-394v-53qc","ROOT-APP-NPM-CVE-2021-37701","UBUNTU-CVE-2021-37701"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["code_execution","data_modify"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"Node.js tar library","requires_auth":"none","summary":"Attackers can exploit symlink cache poisoning in node-tar to overwrite arbitrary files or execute code via malicious archives.","user_interaction":"required","vuln_class":"path_traversal"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"debian_linux","vendor":"debian"},{"product":"tar","vendor":"npmjs"},{"product":"graalvm","vendor":"oracle"},{"product":"sinec_infrastructure_network_services","vendor":"siemens"}],"cvss":{"score":8.2,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N","version":"3.1"},"cwes":[{"id":"CWE-59","name":"Improper Link Resolution Before File Access"},{"id":"CWE-22","name":"Improper Limitation of a Pathname to a Restricted Directory"}],"description":"The npm package \"tar\" (aka node-tar) before versions 4.4.16, 5.0.8, and 6.1.7 has an arbitrary file creation/overwrite and arbitrary code execution vulnerability. node-tar aims to guarantee that any file whose location would be modified by a symbolic link is not extracted. This is, in part, achieved by ensuring that extracted directories are not symlinks. Additionally, in order to prevent unnecessary stat calls to determine whether a given path is a directory, paths are cached when directories are created. This logic was insufficient when extracting tar files that contained both a directory and a symlink with the same name as the directory, where the symlink and directory names in the archive entry used backslashes as a path separator on posix systems. The cache checking logic used both `\\` and `/` characters as path separators, however `\\` is a valid filename character on posix systems. By first creating a directory, and then replacing that directory with a symlink, it was thus possible to bypass node-tar symlink checks on directories, essentially allowing an untrusted tar file to symlink into an arbitrary location and subsequently extracting arbitrary files into that location, thus allowing arbitrary file creation and overwrite. Additionally, a similar confusion could arise on case-insensitive filesystems. If a tar archive contained a directory at `FOO`, followed by a symbolic link named `foo`, then on case-insensitive file systems, the creation of the symbolic link would remove the directory from the filesystem, but _not_ from the internal directory cache, as it would not be treated as a cache hit. A subsequent file entry within the `FOO` directory would then be placed in the target of the symbolic link, thinking that the directory had already been created. These issues were addressed in releases 4.4.16, 5.0.8 and 6.1.7. The v3 branch of node-tar has been deprecated and did not receive patches for these issues. If you are still using a v3 release we recommend you update to a more recent version of node-tar. If this is not possible, a workaround is available in the referenced GHSA-9r2w-394v-53qc.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"Arbitrary File Creation/Overwrite via insufficient symlink protection due to directory cache poisoning using symbolic links","id":"CVE-2021-37701","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":"debian:debian_linux","products":["debian:debian_linux","oracle:graalvm","siemens:sinec_infrastructure_network_services"],"type":"path_traversal","year":"2021"},"n_packages":6,"n_references":6,"next":{"headline":"Improper Neutralization of Formula Elements in a CSV File in pimcore/pimcore","id":"CVE-2021-37702"},"packages":[{"ecosystem":"npm","fixed":["4.4.16"],"introduced":["3.0.0"],"last_affected":[],"package":"tar","purl":null,"source":"GHSA-9r2w-394v-53qc"},{"ecosystem":"npm","fixed":["4.4.16"],"introduced":["3.0.0"],"last_affected":[],"package":"tar","purl":"pkg:npm/tar","source":"GHSA-9r2w-394v-53qc"},{"ecosystem":"npm","fixed":["5.0.8"],"introduced":["5.0.0"],"last_affected":[],"package":"tar","purl":null,"source":"GHSA-9r2w-394v-53qc"},{"ecosystem":"npm","fixed":["5.0.8"],"introduced":["5.0.0"],"last_affected":[],"package":"tar","purl":"pkg:npm/tar","source":"GHSA-9r2w-394v-53qc"},{"ecosystem":"npm","fixed":["6.1.7"],"introduced":["6.0.0"],"last_affected":[],"package":"tar","purl":null,"source":"GHSA-9r2w-394v-53qc"},{"ecosystem":"npm","fixed":["6.1.7"],"introduced":["6.0.0"],"last_affected":[],"package":"tar","purl":"pkg:npm/tar","source":"GHSA-9r2w-394v-53qc"}],"prev":{"headline":"Clipboard-based DOM-XSS","id":"CVE-2021-37700"},"products":["node-tar"],"published":"2021-08-31","related":[{"cvss_score":10,"headline":"ProFTPD Improper Access Control","id":"CVE-2015-3306","kev_date_added":"2026-10-08","published":"2015-05-18"},{"cvss_score":9.9,"headline":"RoundCube Webmail Deserialization of Untrusted Data","id":"CVE-2025-49113","kev_date_added":"2026-02-20","published":"2025-06-02"},{"cvss_score":9.8,"headline":"GNU InetUtils Argument Injection","id":"CVE-2026-24061","kev_date_added":"2026-01-26","published":"2026-01-21"},{"cvss_score":9.8,"headline":"Linux Kernel Improper Check for Unusual or Exceptional Conditions","id":"CVE-2025-39682","kev_date_added":"2026-09-18","published":"2025-09-05"},{"cvss_score":9.8,"headline":"Mozilla Firefox Use-After-Free","id":"CVE-2024-9680","kev_date_added":"2024-10-15","published":"2024-10-09"},{"cvss_score":9.8,"headline":"RARLAB UnRAR Directory Traversal","id":"CVE-2022-30333","kev_date_added":"2022-08-09","published":"2022-05-09"},{"cvss_score":9.8,"headline":"Roundcube Webmail SQL Injection","id":"CVE-2021-44026","kev_date_added":"2023-06-22","published":"2021-11-19"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2024-08-04","vendors":["npm"]},"summary":"Attackers can exploit symlink cache poisoning in node-tar to overwrite arbitrary files or execute code via malicious archives.","url":"https://insights.sbomify.com/CVE-2021-37701/"}