
CVE-2026-87796 के लिए रिप्रोडक्शन पैक और PoC स्क्रिप्ट, जो Multi Uploader for Gravity Forms <= 1.1.9 में अनऑथेंटिकेटेड आर्बिट्ररी फ़ाइल अपलोड RCE है, साथ में एक लूपबैक Docker लैब।
abraxaslabs.tech · github.com/abraxas · @abraxas_null · CVE-2026-87796
Multi Uploader for Gravity Forms 1.1.9 — sh1zen
WordPress के लिए Multi Uploader for Gravity Forms प्लगइन, move_file फ़ंक्शन के माध्यम से 1.1.9 तक के सभी संस्करणों में (सम्मिलित) मनमाना फ़ाइल अपलोड (Arbitrary File Upload) के प्रति संवेदनशील है। यह chunked upload handling के दौरान अपर्याप्त फ़ाइल प्रकार सत्यापन के कारण है। इससे अनधिकृत हमलावरों के लिए प्रभावित साइट के सर्वर पर मनमानी फ़ाइलें अपलोड करना संभव हो जाता है, जिससे रिमोट कोड निष्पादन (remote code execution) संभव हो सकता है।
| CVE | CVE-2026-87796 · CVE.org |
| CWE | CWE-434 |
| CVSS | Critical: 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Product | Multi Uploader for Gravity Forms |
| Affected | सभी संस्करण 1.1.9 तक (सम्मिलित) |
| Patched | vendor patch — संदर्भ देखें |
| Auth | कोई नहीं (source map देखें) |
| Lab | केवल 127.0.0.1 · vendor/client disclosure pack, स्कैनर नहीं |
Advisory में move_file का नाम दिया गया है। यह एक private PHP method है, HTTP action= नहीं। HTTP action gfmu-plupload-submit है। Chunked बनाम non-chunked का अर्थ है REQUEST[chunks]>1। PHP फ़ंक्शन नाम admin-ajax action= नहीं होते।
POST/wp-admin/admin-ajax.phpPOST /wp-admin/admin-ajax.php action=gfmu-plupload-submit (nopriv, GFMUAddon.class.php:125)GFMUHandlePluploader::plupload_ajax_submit nonce gfmu-upload-nonce (GFMUHandlePluploader.class.php:257-262)GFMU_FileUploader::handleUpload chunks>1 (GFMU_FileUploader.php:231-319)move_file copy then unlink tmp (GFMU_FileUploader.php:319, 545-560)validateUploadedFile only AFTER the file is already at $target (322) — unlike non-chunked which validates first (375)GET /wp-content/uploads/gfmu-uploads-tmp/<name> for POC_WITNESS_87796अपलोड की गई फ़ाइल का HTTP GET अद्वितीय स्ट्रिंग POC_WITNESS_87796 लौटाता है। JSON result=success के साथ वह GET SUCCESS है। Theme HTML, admin-ajax 0, या Server error नहीं। nonce fail यह नहीं है।
पहले यह करें: Multi Uploader for Gravity Forms के लिए vendor patch लागू करें। संदर्भ देखें।
अपग्रेड के बाद सत्यापित करें
CVE-2026-87796-Abraxas-Labs.py पुनः चलाएँ: mapped witness नहीं दिखना चाहिए।यदि आप तुरंत अपडेट नहीं कर सकते
लक्ष्य केवल http://127.0.0.1:8088 (या जो loopback आपने बाइंड किया)। इस स्क्रिप्ट को इंटरनेट की ओर निर्देशित न करें।
python3 CVE-2026-87796-Abraxas-Labs.py
सफलता response body में ऊपर दिया गया witness है। सामान्य 200 HTML यह नहीं है।
प्रतिलिपि के लिए उपयोग किया गया loopback stack। आधिकारिक images जब तक इस फ़ोल्डर में Dockerfile स्रोत से build न करे।
cd lab
docker compose up --force-recreate
यदि YAML एक स्थानीय निर्देशिका माउंट करता है (version table से plugin zip / source tag) तो Compose के बगल में संवेदनशील product tree बाइंड करें। 127.0.0.1 के अलावा कुछ भी प्रकाशित न करें।
plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/GFMUAddon.class.php#L125
plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L319
plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L322
plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L560
www.wordfence.com/threat-intel/vulnerabilities/id/47337bc1-fa3d-470c-9524-859295261017?source=cve
Plugin directory: gf-multi-uploader
Trac browser: plugins.trac.wordpress.org/gf-multi-uploader
Abraxas Labs: abraxaslabs.tech · github.com/abraxas · @abraxas_null
# CVE-2026-87796 (structured records)
- input: `https://nvd.nist.gov/vuln/detail/CVE-2026-87796`
- CWE: CWE-434
- published: 2026-09-17T05:17:02.123
## NVD description
The Multi Uploader for Gravity Forms plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 1.1.9 via the move_file function. This is due to insufficient file type validation during chunked upload handling. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.
## MITRE description
The Multi Uploader for Gravity Forms plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 1.1.9 via the move_file function. This is due to insufficient file type validation during chunked upload handling. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.
## Affected
- sh1zen Multi Uploader for Gravity Forms 0 affected
## References (JSON sources only)
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/GFMUAddon.class.php#L125
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMUHandlePluploader.class.php#L257
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L319
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L322
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L560
- https://www.wordfence.com/threat-intel/vulnerabilities/id/47337bc1-fa3d-470c-9524-859295261017?source=cve
- https://github.com/advisories/GHSA-h7vp-g8q2-89c8
- https://nvd.nist.gov/vuln/detail/CVE-2026-87796
## GitHub advisory
The Multi Uploader for Gravity Forms plugin for WordPress is vulnerable to Arbitrary File Upload...
The Multi Uploader for Gravity Forms plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 1.1.9 via the move_file function. This is due to insufficient file type validation during chunked upload handling. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.
यह pack vendor, साइट owner, और licensed labs के लिए है। स्क्रिप्ट 127.0.0.1 से बात करती है। उन सिस्टम के विरुद्ध इसका उपयोग करना जो आपके स्वामित्व में नहीं हैं, Abraxas Labs द्वारा अधिकृत नहीं है। कोई वारंटी नहीं।