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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CWE-434 (危险类型文件的不加限制上传) — Vulnerability Class 2034

2034 vulnerabilities classified as CWE-434 (危险类型文件的不加限制上传). AI Chinese analysis included.

CWE-434 represents a critical input validation weakness where applications permit the upload of file types that are inherently dangerous or automatically processed by the system. Attackers typically exploit this vulnerability by uploading malicious scripts, such as web shells or executable binaries, disguised as legitimate documents or images. Once uploaded, these files are executed by the server, granting the attacker remote code execution capabilities and potentially full system compromise. To mitigate this risk, developers must implement strict allowlists that define only the specific, safe file extensions permitted for upload. Additionally, files should be stored outside the web root directory to prevent direct execution, and content verification techniques, such as checking file headers rather than relying solely on extensions, should be employed to ensure integrity and prevent evasion of basic validation checks.

MITRE CWE Description
The product allows the upload or transfer of dangerous file types that are automatically processed within its environment.
Common Consequences (1)
Integrity, Confidentiality, AvailabilityExecute Unauthorized Code or Commands
Arbitrary code execution is possible if an uploaded file is interpreted and executed as code by the recipient. This is especially true for web-server extensions such as .asp and .php because these file types are often treated as automatically executable, even when file system permissions do not spec…
Mitigations (5)
Architecture and DesignGenerate a new, unique filename for an uploaded file instead of using the user-supplied filename, so that no external input is used at all.[REF-422] [REF-423]
Architecture and DesignWhen the set of acceptable objects, such as filenames or URLs, is limited or known, create a mapping from a set of fixed input values (such as numeric IDs) to the actual filenames or URLs, and reject all other inputs.
Architecture and DesignConsider storing the uploaded files outside of the web document root entirely. Then, use other mechanisms to deliver the files dynamically. [REF-423]
ImplementationAssume 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…
Architecture and DesignDefine a very limited set of allowable extensions and only generate filenames that end in these extensions. Consider the possibility of XSS (CWE-79) before allowing .html or .htm file types.
Examples (2)
The following code intends to allow a user to upload a picture to the web server. The HTML code that drives the form on the user end has an input field of type "file".
<form action="upload_picture.php" method="post" enctype="multipart/form-data"> Choose a file to upload: <input type="file" name="filename"/> <br/> <input type="submit" name="submit" value="Submit"/> </form>
Good · HTML
// Define the target location where the picture being // uploaded is going to be saved. $target = "pictures/" . basename($_FILES['uploadedfile']['name']); // Move the uploaded file to the new location. if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target)) { echo "The picture has been successfully uploaded."; } else { echo "There was an error uploading the picture, please try again."; }
Bad · PHP
The following code demonstrates the unrestricted upload of a file with a Java servlet and a path traversal vulnerability. The action attribute of an HTML form is sending the upload file request to the Java servlet.
<form action="FileUploadServlet" method="post" enctype="multipart/form-data"> Choose a file to upload: <input type="file" name="filename"/> <br/> <input type="submit" name="submit" value="Submit"/> </form>
Good · HTML
public class FileUploadServlet extends HttpServlet { ... protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); String contentType = request.getContentType(); // the starting position of the boundary header int ind = contentType.indexOf("boundary="); String boundary = contentType.substring(ind+9); String pLine = new String(); String uploadLocation = new String(UPLOAD_DIRECTORY_STRING); //Constant value // verify that content type is multipart form data i
Bad · Java
CVE IDTitleCVSSSeverityPublished
CVE-2025-5840 SourceCodester Client Database Management System user_update_customer_order.php unrestricted upload — Client Database Management System 7.3 High2025-06-07
CVE-2025-49329 WordPress Store Locator WordPress plugin <= 1.5.2 - Arbitrary File Upload Vulnerability — Store Locator WordPress 6.6 Medium2025-06-06
CVE-2025-48782 Soar Cloud HRD Human Resource Management System - Unrestricted Upload of File with Dangerous Type — HRD Human Resource Management System 9.8AICriticalAI2025-06-06
CVE-2025-5728 SourceCodester Open Source Clinic Management System manage_website.php unrestricted upload — Open Source Clinic Management System 6.3 Medium2025-06-06
CVE-2025-3054 WP User Frontend Pro <= 4.1.3 - Authenticated (Subscriber+) Arbitrary File Upload — WP User Frontend Pro 8.8 High2025-06-05
CVE-2025-48953 Umbraco Vulnerable to By-Pass of Configured Allowed Extensions for File Uploads — Umbraco-CMS 5.5 Medium2025-06-03
CVE-2025-1725 Bit File Manager – 100% Free & Open Source File Manager and Code Editor for WordPress <= 6.7 - Authenticated (Subscriber+) Stored Cross-Site Scripting via SVG File Uploads — File Manager 6.4 Medium2025-06-03
CVE-2024-7074 Authenticated Arbitrary File Upload in Multiple WSO2 Products via SOAP Admin Service Leading to Remote Code Execution — WSO2 Enterprise Integrator 6.8 Medium2025-06-02
CVE-2025-5406 chaitak-gorai Blogbook posts.php unrestricted upload — Blogbook 6.3 Medium2025-06-01
CVE-2025-48889 Gradio Allows Unauthorized File Copy via Path Manipulation — gradio 5.3 Medium2025-05-30
CVE-2025-48471 FreeScout Vulnerable to Arbitrary File Upload — freescout 8.8AIHighAI2025-05-29
CVE-2025-5299 SourceCodester Client Database Management System user_order_customer_update.php unrestricted upload — Client Database Management System 7.3 High2025-05-28
CVE-2025-4800 MasterStudy LMS Pro <= 4.7.0 - Authenticated (Subscriber+) Arbitrary File Upload — MasterStudy LMS Pro 8.8 High2025-05-28
CVE-2025-5178 Realce Tecnologia Queue Ticket Kiosk Image File ajax.php unrestricted upload — Queue Ticket Kiosk 6.3 Medium2025-05-26
CVE-2025-5171 llisoft MTA Maita Training System OpenController.java this.fileService.download unrestricted upload — MTA Maita Training System 6.3 Medium2025-05-26
CVE-2025-5162 H3C SecCenter SMP-E1114P02 importFile unrestricted upload — SecCenter SMP-E1114P02 6.3 Medium2025-05-26
CVE-2025-5131 Tmall Demo uploadCategoryImage unrestricted upload — Demo 4.7 Medium2025-05-24
CVE-2025-5130 Tmall Demo uploadProductImage unrestricted upload — Demo 4.7 Medium2025-05-24
CVE-2025-5058 eMagicOne Store Manager for WooCommerce <= 1.2.5 - Unauthenticated Arbitrary File Upload via set_image() — eMagicOne Store Manager for WooCommerce 9.8 Critical2025-05-24
CVE-2025-4336 eMagicOne Store Manager for WooCommerce <= 1.2.5 - Unauthenticated Arbitrary File Upload via set_file() — eMagicOne Store Manager for WooCommerce 8.1 High2025-05-24
CVE-2025-31916 WordPress JP Students Result Management System Premium plugin 1.1.7 - Arbitrary File Upload vulnerability — JP Students Result Management System Premium 9.0 Critical2025-05-23
CVE-2025-46490 WordPress Crossword Compiler Puzzles plugin <= 5.2 - Arbitrary File Upload Vulnerability — Crossword Compiler Puzzles 9.9 Critical2025-05-23
CVE-2025-47637 WordPress STAGGS plugin <= 2.11.0 - Arbitrary File Upload Vulnerability — STAGGS 10.0 Critical2025-05-23
CVE-2025-47642 WordPress Ajar in5 Embed plugin <= 3.1.5 - Arbitrary File Upload Vulnerability — Ajar in5 Embed 10.0 Critical2025-05-23
CVE-2025-47641 WordPress Printcart Web to Print Product Designer for WooCommerce plugin <= 2.3.9 - Arbitrary File Upload Vulnerability — Printcart Web to Print Product Designer for WooCommerce 10.0 Critical2025-05-23
CVE-2025-47658 WordPress ELEX HelpDesk & Customer Ticketing System plugin <= 3.2.9 - Arbitrary File Upload vulnerability — ELEX WordPress HelpDesk & Customer Ticketing System 9.9 Critical2025-05-23
CVE-2025-47663 WordPress Hospital Management System plugin <= 47.0(20-11-2023) - Arbitrary File Upload vulnerability — Hospital Management System 9.9 Critical2025-05-23
CVE-2025-47687 WordPress StoreKeeper for WooCommerce plugin <= 14.4.4 - Arbitrary File Upload Vulnerability — StoreKeeper for WooCommerce 10.0 Critical2025-05-23
CVE-2025-5108 zongzhige ShopXO ZIP File Payment.php Upload unrestricted upload — ShopXO 6.3 Medium2025-05-23
CVE-2025-30169 Admin Authorized File Upload and Execute PHP — ASPECT-Enterprise 6.7 Medium2025-05-22

Vulnerabilities classified as CWE-434 (危险类型文件的不加限制上传) represent 2034 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.