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

Goal: 1000 CNY · Raised: 1325 CNY

100%

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

2104 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-2024-6314 IQ Testimonials <= 2.2.7 - Unauthenticated Arbitrary File Upload — IQ Testimonials 9.8 Critical2024-07-09
CVE-2024-6123 Bit Form <= 2.13.3 - Authenticated (Administrator+) Arbitrary File Upload — Bit Form – Custom Contact Form, Multi Step, Conversational Form & Payment Form builder 7.2 High2024-07-09
CVE-2024-6161 Default Thumbnail Plus <= 1.0.2.3 - Authenticated (Contributor+) Arbitrary File Upload — Default Thumbnail Plus 8.8 High2024-07-09
CVE-2024-37555 WordPress Generate PDF using Contact Form 7 plugin <= 4.1.2 - CSRF to Arbitrary File Upload vulnerability — Generate PDF using Contact Form 7 9.6 Critical2024-07-09
CVE-2024-5441 Modern Events Calendar <= 7.11.0 - Authenticated (Subscriber+) Arbitrary File Upload — Modern Events Calendar 8.8 High2024-07-09
CVE-2024-34692 [CVE-2024-34692] Unrestricted File upload vulnerability in SAP Enable Now — SAP Enable Now 3.3 Low2024-07-09
CVE-2024-6319 IMGspider <= 2.3.10 - Authenticated (Contributor+) Arbitrary File Upload via 'upload' — IMGspider – 图片采集抓取插件 8.8 High2024-07-04
CVE-2024-6318 IMGspider <= 2.3.10 - Authenticated (Contributor+) Arbitrary File Upload via 'upload_img_file' — IMGspider – 图片采集抓取插件 8.8 High2024-07-04
CVE-2024-6439 SourceCodester Home Owners Collection Management System unrestricted upload — Home Owners Collection Management System 6.3 Medium2024-07-02
CVE-2024-36987 Insecure File Upload in the indexing/preview REST endpoint — Splunk Enterprise 4.3 Medium2024-07-01
CVE-2024-3123 CHANGING Mobile One Time Password - Arbitrary File Upload — Mobile One Time Password 7.2 High2024-07-01
CVE-2024-6373 itsourcecode Online Food Ordering System addproduct.php unrestricted upload — Online Food Ordering System 7.3 High2024-06-27
CVE-2024-6054 Auto Featured Image <= 1.2 - Authenticated (Contributor+) Arbitrary File Upload — Auto Featured Image 8.8 High2024-06-27
CVE-2024-5008 WhatsUp Gold APM Unrestricted File Upload Remote Code Execution Vulnerability — WhatsUp Gold 8.8 High2024-06-25
CVE-2024-4197 Avaya IP Office One-X Portal File Upload Vulnerability — IP Office 9.9 Critical2024-06-25
CVE-2024-37228 WordPress InstaWP Connect plugin <= 0.1.0.38 - Arbitrary File Upload vulnerability — InstaWP Connect 10.0 Critical2024-06-24
CVE-2024-6280 SourceCodester Simple Online Bidding System unrestricted upload — Simple Online Bidding System 6.3 Medium2024-06-24
CVE-2024-35767 WordPress Squeeze plugin <= 1.4 - Arbitrary File Upload vulnerability — Squeeze 9.1 Critical2024-06-21
CVE-2023-45197 Adminer and AdminerEvo vulnerable to directory traversal and file upload — Adminer 9.8 -2024-06-21
CVE-2024-28147 Unrestricted Upload of Files in edu-sharing — edu-sharing 8.2AIHighAI2024-06-20
CVE-2024-5853 Image Optimizer, Resizer and CDN – Sirv <= 7.2.6 - Authenticated (Contributor+) Arbitrary File Upload — Image Optimizer, Resizer and CDN – Sirv 9.9 Critical2024-06-19
CVE-2024-6132 Pexels: Free Stock Photos <= 1.2.2 - Authenticated (Contributor+) Arbitrary File Upload — Pexels: Free Stock Photos 8.8 High2024-06-19
CVE-2024-3229 Salon Booking System <= 10.2 - Unauthenticated Arbitrary File Upload — Salon Booking System – Free Version 9.8 Critical2024-06-19
CVE-2024-2381 AliExpress Dropshipping with AliNext Lite <= 3.3.5 - Authenticated (Subscriber+) Arbitrary File Upload — AliExpress Dropshipping Plugin for WooCommerce & WordPress 8.8 High2024-06-19
CVE-2024-6116 itsourcecode Simple Online Hotel Reservation System edit_room.php unrestricted upload — Simple Online Hotel Reservation System 7.3 High2024-06-18
CVE-2024-6115 itsourcecode Simple Online Hotel Reservation System add_room.php unrestricted upload — Simple Online Hotel Reservation System 7.3 High2024-06-18
CVE-2024-6114 itsourcecode Monbela Tourist Inn Online Reservation System controller.php unrestricted upload — Monbela Tourist Inn Online Reservation System 7.3 High2024-06-18
CVE-2024-6110 itsourcecode Magbanua Beach Resort Online Reservation System controller.php unrestricted upload — Magbanua Beach Resort Online Reservation System 7.3 High2024-06-18
CVE-2024-6084 itsourcecode Pool of Bethesda Online Reservation System uploadImage unrestricted upload — Pool of Bethesda Online Reservation System 7.3 High2024-06-18
CVE-2024-6083 PHPVibe Media Upload Page upload-mp3.php unrestricted upload — PHPVibe 6.3 Medium2024-06-17

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