Subject: Feature Request/Bug: multipart/form-data binary manipulation issues in Requester/Resend vs Burp Suite Repeater during File Upload testing
Body:
Hi ZAP Development Team,
I am a security researcher utilizing OWASP ZAP for server-side vulnerability assessments, specifically focusing on File Upload restrictions and WebShell execution bypasses (similar to PortSwigger's Web Security Academy labs).
I have encountered a significant behavioral difference between ZAP's Requester (Resend/Manual Request Editor) and Burp Suite's Repeater when manipulating metadata in multipart/form-data POST requests.
The Issue:
When attempting to bypass file upload filters by manually altering the file extension or filename within the raw HTTP request body (e.g., changing filename="exploit.php" to filename="exploit.php.jpg" or injecting a null byte %00), ZAP's Manual Request Editor often fails to properly submit the altered request or corrupts the binary payload boundary definitions.
Unlike Burp Repeater, which dynamically and transparently updates the request state and binary/text conversions of the multipart boundary length upon string editing, ZAP's editor seems to strictly lock or miscalculate the Content-Length or binary stream of the multipart body when a user modifies the raw text fields prior to clicking "Send". This makes solving strict File Upload bypass labs unreliable or impossible without dropping back to ZAP's HUD/Breakpoints for every single test.
Proposed Solution / Feature Request:
Can we implement a more robust or intelligent multipart/form-data automatic parsing mode within the Manual Request Editor / Requester?
- The editor should dynamically recalculate exact
Content-Length and preserve strict multipart boundaries whenever raw text mutations (like altering filenames, content-types, or file signatures) are executed by the researcher inside the text area. - Ensure that hex/null-byte injections (
exploit.php%00.jpg) within raw multipart text forms are transmitted natively without being double-encoded or mangled during transmission.
ZAP is a phenomenal open-source tool, and fixing this core request-mutation behavior would immensely bridge the gap for researchers transitioning from commercial suites to ZAP for advanced server-side exploitation.
Best regards, ar