Skip to content
OpenAdvisories

Weakness (CWE)

CWE-61: UNIX Symbolic Link (Symlink) Following

Compound Incomplete

The product, when opening a file or directory, does not sufficiently account for when the file is a symbolic link that resolves to a target outside of the intended control sphere. This could allow an attacker to cause the product to operate on unauthorized files.

How to prevent it (2 mitigations)
  1. Implementation

    Symbolic link attacks often occur when a program creates a tmp directory that stores files/links. Access to the directory should be restricted to the program as to prevent attackers from manipulating the files.

  2. Architecture and Design

    Follow the principle of least privilege when assigning access rights to entities in a software system.

    Denying access to a file can prevent an attacker from replacing that file with a link to a sensitive file. Ensure good compartmentalization in the system to provide protected areas that can be trusted.

Source: MITRE CWE-61

95 results · Clear filters · Feed

  • Medium 4.4

    wummel patool Gzip Extraction fileutil.py extract_gzip symlink

    A vulnerability has been found in wummel patool 4.1.0. This vulnerability affects the function extract_gzip of the file patoolib/fileutil.py of the component Gzip Extraction Handler. The manipulation leads to symlink following. Local access is required to app…

  • Medium 6.8

    LXC: lxc-copy host-context hostname update follows symlink

    LXC is a userspace interface for the Linux kernel containment features used to create and manage system containers. In LXC 7.0.0 and earlier, lxc-copy and the public liblxc clone() API can follow attacker-controlled symbolic links while updating /etc/hostname…

  • Medium 5.5

    nvm prints the contents of any readable file through a symlinked .nvmrc

    Node Version Manager (nvm) is a POSIX-compliant shell function for managing multiple node.js versions. In versions 0.2.0 through 0.40.8, nvm does not check whether `.nvmrc` is a symbolic link. A repository or archive that ships `.nvmrc` as a symlink to anothe…

  • Medium 4.5

    Malicious client could set xattr value outside of BuildKit state directory

    In BuildKit versions prior to v0.34.1, a malicious client with access to the BuildKit control APIs can submit a build request that sets an extended attribute on a file outside the BuildKit state directory. Extended attributes in the trusted. or security. name…

  • Medium 4.7

    NVIDIA Slurm is subject to a symlink resolution issue in the container cleanup code that could allow an attacker to rem…

  • Medium 5.5

    Oc: oc: symlink/hardlink target validation bypass in oc image extract allows file write outside destination

    A flaw was found in the OpenShift client oc. When extracting container image layers with oc image extract, the application fails to properly sanitize symbolic and hard link targets pointing to absolute paths or to sibling directories of the extraction destina…

  • Medium 5.8

    AsyncHttpClient: Resumable download index store is created world-readable and follows a planted symlink

    The AsyncHttpClient library allows Java applications to execute HTTP requests and asynchronously process HTTP responses. From 2.0.0 until 2.16.1 and 3.0.12, PropertiesBasedResumableProcessor stores resumable download state at the predictable shared path $java…

  • Medium 5.3

    Symlink creation in qsyncsrv.cgi

    An unix symbolic link (symlink) following vulnerability has been reported to affect Qsync Central. If a remote attacker gains a user account, they can then exploit the vulnerability to compromise the security of the system. We have already fixed the vulnerabi…

  • Medium 4.0

    ImageMagick: Policy Bypass in delegate symlink cleanup due to missing check

    ImageMagick is free and open-source software used for editing and manipulating digital images. Prior to 7.1.2-32, delegate symlink cleanup does not check the MAGICK_SHRED_PASSES environment variable, allowing a local privileged workflow to overwrite a file wi…

  • Medium 6.4

    Source-to-image: source-to-image: security boundary bypass via absolute symbolic link extraction

    A flaw was found in source-to-image. When unpacking archive files, the application fails to properly sanitize symbolic links pointing to absolute file paths. An attacker who supplies a malicious builder image can exploit this vulnerability by embedding links …

  • Medium 5.3

    Backstage: TechDocs arbitrary file read via mkdocs snippets

    Backstage is an open framework for building developer portals. Prior to 1.15.4, the @backstage/plugin-techdocs-node package is affected by techdocs arbitrary file read via mkdocs snippets. Unsafe path resolution in TechDocs source tree handling allows an auth…

  • Medium 4.0

    In Flatpak before 1.18.1, a malicious sandboxed app can replace ~/.var/app/$appid/.ld.so with a symlink, causing regene…

  • Medium 6.1

    Cockpit-files: cockpit-files: arbitrary file ownership change via symlink following in privileged paste

    A flaw was found in cockpit-files. A low-privileged local user can exploit this vulnerability by crafting a directory containing a symbolic link (symlink) and then using the privileged "Paste as owner" function. This allows for arbitrary file ownership change…

  • Medium 5.1

    HP Linux Imaging and Printing (HPLIP) Software– Multiple Vulnerabilities

    HP has identified and remediated multiple externally reported vulnerabilities within HPLIP. The findings affect several software components that could potentially enable remote code execution, privilege escalation, denial of service, information disclosure, o…

  • Medium 5.5

    Libvirt: unsafe chown in qemutpmemulatorpreparehost() allows arbitrary file ownership change via symlink

    A symlink-following flaw was found in libvirt's qemuTPMEmulatorPrepareHost() function. The function uses a path-based chown() on the swtpm logfile without checking for symbolic links. A local attacker with access to the swtpm account can replace the logfile w…

  • Medium 5.7

    In the opam package before 2.5.2 for OCaml, the sandbox protection mechanism can be bypassed because symlinks are misha…

  • Medium 5.8

    Dell PowerProtect Cyber Recovery, versions Prior to 20.3, contain an UNIX Symbolic Link (Symlink) Following vulnerabili…

  • Medium 6.1

    Predictable temporary file in /tmp allows symlink attack in LACT

    UNIX symbolic link (symlink) following vulnerability in ilya-zlobintsev/LACT allows for local denial-of-service. This issue affects LACT: through 0.10.0.

  • Medium 6.5
    CVE-2026-55168 Public exploit

    Runtipi: Authenticated arbitrary file write via backup restore symlink planting

    Runtipi is a personal homeserver orchestrator. In 4.10.0 and earlier, Runtipi accepts symbolic links from an attacker-controlled backup archive and copies them into live application paths during the backup restore flow. An authenticated attacker can plant use…

  • Medium 6.1

    OpenTofu before 1.11.7 Symlink Following Path Traversal

    OpenTofu before 1.11.7 fails to validate existing symlinks in the provider cache directory during initialization. Attackers can place a malicious symlink in a trusted working directory to cause tofu init to write provider package contents to arbitrary filesys…

  • Medium 5.1

    crun follows rootfs /dev symlink while creating default devices

    crun is an open source OCI Container Runtime fully written in C. Prior to version 1.28, crun's default device setup opens the container rootfs `/dev` directory without `O_NOFOLLOW`. If an OCI bundle contains `rootfs/dev` as a symlink and the bundle configurat…

  • Medium 6.9

    Smarty: Symlink path traversal out of trusted directories

    Smarty is a template engine for PHP, facilitating the separation of presentation (HTML/CSS) from application logic. Prior to 5.8.2 (and 4.5.7 on the 4.x line), Security::_checkDir() does not fully resolve symbolic links before validating that a requested path…

  • Medium 6.8

    pdm: Project-Local State and Config Writes Follow Symlinks

    pdm is a Python package and dependency manager supporting the latest PEP standards. In versions prior to 2.27.0, pdm writes several project-local state or configuration files without symlink protection. If a malicious repository places those files as symlinks…

  • Medium 6.5

    skilo add follows symbolic links, allowing arbitrary local file disclosure from a malicious skill source

    ### Impact `skilo add` installs a skill by recursively copying the skill directory into the target skills directory. The copy routine (`copy_dir_all`) classified each entry with `std::fs::DirEntry::file_type()` — which does **not** follow symlinks — and then …

  • Medium 4.3

    perwendel spark SparkJava ExternalResourceHandler.jav staticFiles.externalLocation symlink

    A vulnerability was determined in perwendel spark up to 2.9.4. This vulnerability affects the function staticFiles.externalLocation of the file src/main/java/spark/resource/ExternalResourceHandler.jav of the component SparkJava. Executing a manipulation can l…

  • Medium 6.6

    Datasets Symlink-following Arbitrary File Write via Extractor.extract()

    Datasets through 5.00, fixed in commit ad2d853, contains a symlink-following vulnerability in Extractor.extract() that allows local attackers to write arbitrary files by pre-planting symlinks at predictable output paths. Attackers can redirect archive extract…

  • Medium 5.5

    ChatterBot: Symlink-Following Arbitrary Write via UbuntuCorpusTrainer

    ChatterBot is a machine learning, conversational dialog engine for creating chat bots. Prior to 1.2.14, UbuntuCorpusTrainer.extract() uses a predictable home-rooted output directory (~/ubuntu_data/ubuntu_dialogs) with a check-then-create pattern followed by t…

  • Medium 6.3

    Snowflake CLI Arbitrary Local File Read and Exfiltration Through Improper File Path Restriction

    Improper restriction of file path resolution in Snowflake CLI versions prior to 3.19 allowed arbitrary local file content to be read and transmitted to Snowflake services. An attacker could exploit this by supplying crafted repository or project content that …

  • Medium 5.3

    Podman: WORKDIR symlink traversal vulnerability

    Podman is a tool for managing OCI containers and pods. From 3.0.0 until 5.7.1, running a malicious container image where the WORKDIR path contains a symlink can create a directory or modify ownership on the host filesystem. Modified ownership is less likely t…

  • Medium 4.2

    Kubevirt: kubevirt: symlink following in writetocachedfile allows host file overwrite from virt-launcher

    A flaw was found in KubeVirt's virt-handler network cache handling. The WriteToCachedFile function writes data to a launcher-rooted path using os.WriteFile and os.Chown without symlink protection. A user with access to the virt-launcher container can plant a …

  • Medium 5.3

    Path Traversal (Zip-Slip) in unarchive module

    The unarchive internal module's archive extraction commands perform no code-level validation on extracted file paths, relying entirely on the behavior of external tools (e.g. GNU tar) which varies by platform. While CVE-2025-10284 addressed git-specific RCE v…

  • Medium 6.1

    Moby: Race condition in docker cp allows creation of arbitrary empty files on the host via symlink swap

    Moby is an open source container framework. In Docker Engine prior to version 29.5.1, Docker Daemon versions 28.5.2 and prior, and Moby Daemon prior to version 2.0.0-beta.14, a race condition during docker cp mount setup allows a malicious container to create…

  • Medium 5.5

    This issue was addressed with improved handling of symlinks. This issue is fixed in macOS Sequoia 15.4. An app may be a…

  • Medium 6.5

    Crates in third party registries can override the cached source of other crates

    Cargo incorrectly handled symlinks inside of crate tarballs downloaded from third-party registries, allowing a malicious crate to override the source code of another crate from the same registry. The severity of the vulnerability is **medium** for users of th…

  • Medium 4.2

    npitre cramfs-tools cramfsck.c change_file_status symlink

    A vulnerability was detected in npitre cramfs-tools up to 2.2. Affected is the function change_file_status of the file cramfsck.c. Performing a manipulation results in symlink following. The attack requires a local approach. The exploit is now public and may …

  • Medium 5.3

    A chmod call in the cPanel Nova plugin's Cpanel::Nova::Connector follows symlinks, allowing setting root permissions on…

  • Medium 6.8

    Tunnelblick arbitrary file read via symlink following in tunnelblickd

    Tunnelblick is an open source graphic user interface for OpenVPN on macOS. In versions 3.3beta26 through 9.0beta01, any local user can read arbitrary root-owned files by exploiting a symlink following vulnerability in tunnelblick-helper, reachable through the…

  • Medium 6.5

    OpenClaw 2026.3.22 < 2026.4.5 - Symlink Traversal in Remote Marketplace Repository Path Handling

    OpenClaw versions 2026.3.22 before 2026.4.5 contain a symlink traversal vulnerability in remote marketplace repository path handling that allows attackers to escape the expected repository root. Attackers can exploit this by providing crafted symlink paths to…

  • Medium 4.4

    NousResearch hermes-agent file_tools.py _check_sensitive_path symlink

    A security flaw has been discovered in NousResearch hermes-agent 0.8.0. This affects the function _check_sensitive_path of the file tools/file_tools.py. The manipulation results in symlink following. Attacking locally is a requirement. The exploit has been re…

  • Medium 5.0

    uutils coreutils ln Security Bypass via Improper Handling of the --no-dereference Flag

    A logic error in the ln utility of uutils coreutils allows the utility to dereference a symbolic link target even when the --no-dereference (or -n) flag is explicitly provided. The implementation previously only honored the "no-dereference" intent if the --fo…