Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CWE-73 (文件名或路径的外部可控制) — Vulnerability Class 541

541 vulnerabilities classified as CWE-73 (文件名或路径的外部可控制). AI Chinese analysis included.

CWE-73 represents a critical input validation weakness where applications allow external actors to dictate file system paths, potentially leading to unauthorized access or modification of sensitive data. Attackers typically exploit this vulnerability through path traversal techniques, injecting sequences like “../” to escape intended directories and reach critical system files or application configurations. This manipulation occurs when software fails to sanitize user-supplied input before using it in filesystem operations, allowing the attacker to bypass intended access controls. To mitigate this risk, developers must implement rigorous input validation, ensuring that all file paths are strictly checked against a whitelist of allowed directories. Additionally, using canonicalization functions to resolve paths before comparison and employing chroot jails can effectively isolate file access, thereby preventing attackers from navigating outside the designated application sandbox.

MITRE CWE Description
The product allows user input to control or influence paths or file names that are used in filesystem operations. This could allow an attacker to access or modify system files or other files that are critical to the application. Path manipulation errors occur when the following two conditions are met: 1. An attacker can specify a path used in an operation on the filesystem. 2. By specifying the resource, the attacker gains a capability that would not otherwise be permitted. For example, the program may give the attacker the ability to overwrite the specified file or run with a configuration controlled by the attacker.
Common Consequences (3)
Integrity, Confidentiality Read Files or Directories, Modify Files or Directories
The application can operate on unexpected files. Confidentiality is violated when the targeted filename is not directly readable by the attacker.
Integrity, Confidentiality, Availability Modify Files or Directories, Execute Unauthorized Code or Commands
The application can operate on unexpected files. This may violate integrity if the filename is written to, or if the filename is for a program or other form of executable code.
Availability DoS: Crash, Exit, or Restart, DoS: Resource Consumption (Other)
The application can operate on unexpected files. Availability can be violated if the attacker specifies an unexpected file that the application modifies. Availability can also be affected if the attacker specifies a filename for a large file, or points to a special device or a file that does not hav…
Mitigations (5)
Architecture and Design When the set of filenames is limited or known, create a mapping from a set of fixed input values (such as numeric IDs) to the actual filenames, and reject all other inputs. For example, ID 1 could map to "inbox.txt" and ID 2 could map to "profile.txt". Features such as the ESAPI AccessReferenceMap provide this capability.
Architecture and Design, Operation Run your code in a "jail" or similar sandbox environment that enforces strict boundaries between the process and the operating system. This may effectively restrict all access to files within a particular directory. Examples include the Unix chroot jail and AppArmor. In general, managed code may provide some protection. This may not be a feasible solution, and it only limits the impact to the oper…
Architecture and Design For any security checks that are performed on the client side, ensure that these checks are duplicated on the server side, in order to avoid CWE-602. Attackers can bypass the client-side checks by modifying values after the checks have been performed, or by changing the client to remove the client-side checks entirely. Then, these modified values would be submitted to the server.
Implementation Assume all input is malicious. Use an "accept known good" input validation strategy, i.e., use a list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does. When performing input validation, consider all potentially relevant properties, including length, type of input, the full range…
Effectiveness: High
Implementation Use a built-in path canonicalization function (such as realpath() in C) that produces the canonical version of the pathname, which effectively removes ".." sequences and symbolic links (CWE-23, CWE-59).
Examples (2)
The following code uses input from an HTTP request to create a file name. The programmer has not considered the possibility that an attacker could provide a file name such as "../../tomcat/conf/server.xml", which causes the application to delete one of its own configuration files (CWE-22).
String rName = request.getParameter("reportName"); File rFile = new File("/usr/local/apfr/reports/" + rName); ... rFile.delete();
Bad · Java
The following code uses input from a configuration file to determine which file to open and echo back to the user. If the program runs with privileges and malicious users can change the configuration file, they can use the program to read any file on the system that ends with the extension .txt.
fis = new FileInputStream(cfg.getProperty("sub")+".txt"); amt = fis.read(arr); out.println(arr);
Bad · Java
CVE ID Title CVSS Severity Published
CVE-2026-85736 Chartbrew: Arbitrary file deletion as root via data connection SSL/SSH paths — chartbrew 8.1 High 2026-11-06
CVE-2026-102344 Lavish: DNS rebinding allows any website to read arbitrary local files and inject prompts into the AI agent via the unauthenticated local server — lavish-axi 8.1 High 2026-11-06
CVE-2026-118515 Symfony: The Serializer Builds UploadedFile Objects From Request Data, Letting a Client Point an Upload at Any Server File — symfony 8.4 High 2026-11-06
CVE-2026-121623 Symfony: DataUriNormalizer Opens Data URIs With a Non-Lowercase Scheme as Local Files, Letting a Client Read Any Server File — symfony 8.2 High 2026-11-06
CVE-2026-81190 KurrentDB: Privileged access to read $all enables arbitrary file read and GET-only SSRF — KurrentDB 6.9 Medium 2026-11-05
CVE-2026-102523 MariaDB server: Authorization bypass via ALTER TABLE ... CONVERT ... PARTITION — server 8.0 High 2026-11-05
CVE-2026-82916 Apache OFBiz: webtools xmldsdump exports any entity to any path — Apache OFBiz - - 2026-11-05
CVE-2026-97356 Apache OFBiz: Insufficiently Protected Credentials in ViewFile Enable Authentication Bypass — Apache OFBiz - - 2026-11-05
CVE-2026-121748 nvm use --delete-prefix lets a project .npmrc choose which file npm rewrites or makes world-writable — nvm 3.6 Low 2026-11-04
CVE-2026-114425 Forged LFT metadata permits arbitrary file read and deletion — SEPPmail Secure Email Gateway (SEG) 9.2 Critical 2026-11-04
CVE-2026-92189 Quest Foglight for Databases writeTopologySectionToFile External Control of File Path Remote Code Execution Vulnerability — Foglight for Databases - - 2026-11-03
CVE-2026-92193 Quest Foglight for Databases FileServlet External Control of File Path Information Disclosure Vulnerability — Foglight for Databases - - 2026-11-03
CVE-2026-119672 mongofiles may disclose GridFS content to standard output through a stored filename — Database Tools 4.8 Medium 2026-11-03
CVE-2026-119343 Stirling-PDF: AI create-pdf-from-html-agent skips HTML sanitization enabling WeasyPrint SSRF and local file read — Stirling-PDF 6.8 Medium 2026-10-30
CVE-2026-119298 croc: Overwrite-confirmation bypass via a crafted "croc-stdin-" filename on receive — croc 4.2 Medium 2026-10-30
CVE-2026-5461 Forminator Forms <= 1.55.0.2 - Unauthenticated Limited File Deletion via Draft Upload Metadata — Forminator Forms – Contact Form, Payment Form & Custom Form Builder 6.5 Medium 2026-10-30
CVE-2026-118561 Single Content Sync - Critical - External control of file name or path - SA-CONTRIB-2026-274 — Single Content Sync - - 2026-10-30
CVE-2026-119198 Nuxt dev server arbitrary file read through client error reports — nuxt 5.9 Medium 2026-10-29
CVE-2026-119250 WiFiman Desktop for macOS 文件名控制提权漏洞 — WiFiman Desktop 7.8 High 2026-10-29
CVE-2026-116822 YesWiki before 4.7.0 Template Traversal via BazarListeAction template Parameter — yeswiki 5.3 Medium 2026-10-26
CVE-2026-114379 EKKOLearnAI ekko-studio Media Generation API media.ts saveGeneratedImages file inclusion — ekko-studio 5.4 Medium 2026-10-21
CVE-2026-114491 pdfmake 0.3.8 before 0.3.12 Local File Policy Bypass via SVG Images — pdfmake 5.3 Medium 2026-10-21
CVE-2026-114253 oretnom23 file-management-system-php index.php include file inclusion — file-management-system-php 6.3 Medium 2026-10-21
CVE-2026-86147 Apache bRPC: Arbitrary file creation/truncation via /flags and unbounded profiling duration via /pprof — Apache bRPC - - 2026-10-21
CVE-2026-112310 docling-core 2.5.0 before 2.103.0 Local File Disclosure via Plain Path ImageRef — docling-core 4.3 Medium 2026-10-19
CVE-2026-111935 NoteGen through 0.38.3 Local File Disclosure via Chat Image Analysis — NoteGen 2.6 Low 2026-10-19
CVE-2026-105037 EnergizeLab Station Middleware Authenticated Path Traversal Arbitrary File Read — station-middleware 9.9 Critical 2026-10-15
CVE-2026-111234 SimplePie through 1.9.0 Local File Read via file:// Redirect — simplepie 5.9 Medium 2026-10-15
CVE-2026-111230 Netgate pfSense CE through 2.9.0 Local File Read via Dynamic DNS Update URL — pfSense CE 4.9 Medium 2026-10-15
CVE-2026-54703 Markdown Preview Enhanced: Arbitrary File Write via updateMarkdown Command Without Path Validation — vscode-markdown-preview-enhanced 5.8 Medium 2026-10-14

Vulnerabilities classified as CWE-73 (文件名或路径的外部可控制) represent 541 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.