
CVE-2026-3844 — Breeze Cache (WordPress) में अनधिकृत मनमाना फ़ाइल अपलोड से RCE तक। CVSS 9.8 CRITICAL। मास स्कैनर + मल्टी-थ्रेडिंग के साथ ऑटो शेल इंजेक्टर।
╔════════════════════════════════════════════════════════════╗
║ CVE-2026-3844 ║
║ Breeze Cache <= 2.4.4 Arbitrary File Upload ║
║ Unauthenticated RCE | Authorized Lab Use Only ║
╚════════════════════════════════════════════════════════════╝
CVE-2026-3844 Breeze Cache WordPress प्लगिन के संवेदनशील संस्करणों को प्रभावित करने वाली एक मनमाना फ़ाइल अपलोड भेद्यता है। जब स्थानीय Gravatar होस्टिंग सक्षम होती है, तो Breeze अवतार URL ला सकता है और डाउनलोड की गई फ़ाइल को फ़ाइल प्रकार का पर्याप्त सत्यापन किए बिना वेब-सुलभ कैश निर्देशिका के अंदर संग्रहीत कर सकता है।
| क्षेत्र | विवरण |
|---|---|
| CVE | CVE-2026-3844 |
| उत्पाद | Breeze Cache, WordPress कैश प्लगिन |
| विक्रेता | Cloudways |
| भेद्यता प्रकार | अप्रतिबंधित फ़ाइल अपलोड |
| CWE | CWE-434 |
| गंभीरता | क्रिटिकल, CVSS 9.8 |
| प्रमाणीकरण | आवश्यक नहीं |
| प्रभावित संस्करण | Breeze Cache <= 2.4.4 |
| स्थिर संस्करण | 2.4.5 या बाद का |
| आवश्यक सेटिंग | Host Files Locally - Gravatars सक्षम |
Attacker-controlled avatar URL
|
v
WordPress renders an avatar
|
v
Breeze Gravatar local-cache handler
|
v
download_url() fetches the remote file
|
v
File is saved under wp-content/cache/breeze-extra/gravatars/
|
v
Web-accessible uploaded file
संवेदनशील व्यवहार Breeze की Gravatar कैशिंग प्रक्रिया में है:
src URL को Breeze Gravatar हैंडलर द्वारा स्वीकार किया जाता है।download_url() के माध्यम से डाउनलोड की जाती है।प्रासंगिक संवेदनशील क्षेत्र:
inc/class-breeze-cache-cronjobs.php
fetch_gravatar_from_remote()
लक्ष्य आवश्यकताएँ:
<= 2.4.4 का उपयोग करने वाली WordPress साइट।Host Files Locally - Gravatars सक्षम हो।स्थानीय लैब नोट:
git clone https://github.com/AnggaTechI/CVE-2026-3844.git
cd CVE-2026-3844
python3 --version
कोई तृतीय-पक्ष Python पैकेज आवश्यक नहीं है। स्क्रिप्ट केवल Python मानक लाइब्रेरी मॉड्यूल का उपयोग करती है।
टूल चलाएँ:
python3 exploit.py
एकल लक्ष्य उदाहरण:
[*] Target URL or file: http://localhost/lab-wp
लक्ष्य सूची उदाहरण:
[*] Target URL or file: targets.txt
[*] Threads (default 30): 30
[*] Auto-inject on vulnerable? [y/N]: n
उदाहरण आउटपुट:
[+] Loaded 1 target(s)
[+] Scanning 1 targets with 30 threads
[+] [1/1] localhost/lab-wp -> v2.4.4 gravatar=ON
[+] VULNERABLE: 1/1
[+] Saved: result.txt
स्क्रिप्ट जाँचती है कि लक्ष्य WordPress प्रतीत होता है या नहीं, Breeze प्लगिन मेटाडेटा पढ़ती है, और पता लगाए गए संस्करण की तुलना संवेदनशील सीमा से करती है।
स्क्रिप्ट Breeze के breeze-extra/gravatars कैश संदर्भों की जाँच करके यह अनुमान लगाने का प्रयास करती है कि स्थानीय Gravatar होस्टिंग सक्षम है या नहीं।
जब ऑटो-इंजेक्ट सक्षम होता है, तो स्क्रिप्ट उत्पन्न परीक्षण पेलोड तैनात करके और उसके मार्कर की जाँच करके शोषण-क्षमता सत्यापित करने का प्रयास करती है।
स्थानीय लैब के लिए, स्क्रिप्ट जब WordPress रूट की पहचान कर सकती है तो सीधे फ़ाइलसिस्टम एक्सेस का उपयोग कर सकती है। रिमोट अधिकृत परीक्षणों के लिए, यह एक अस्थायी पेलोड सर्वर शुरू करती है और Breeze के Gravatar कैशिंग प्रवाह को ट्रिगर करने का प्रयास करती है।
WordPress सेटअप के आधार पर, कैश की गई फ़ाइलें इनमें से किसी एक रूप में दिखाई दे सकती हैं:
/wp-content/cache/breeze-extra/gravatars/<filename>
/wp-content/cache/breeze-extra/gravatars/1/<filename>
पहला पथ सामान्य एकल-साइट WordPress इंस्टॉलेशन पर आम है। दूसरा तब दिखाई दे सकता है जब ब्लॉग/साइट ID शामिल हो।
स्थानीय WordPress लैब में परीक्षण करते समय इस चेकलिस्ट का उपयोग करें:
2.4.4 स्थापित हो।Host Files Locally - Gravatars सक्षम हो।wp-content/cache/breeze-extra/gravatars/ के अंतर्गत मौजूद हो।wp-content पथ से फ़ाइलें सर्व कर सकें।gravatar=OFF
प्लगिन सक्रिय हो सकता है, लेकिन Breeze ने अभी तक स्थानीय Gravatar कैश फ़ाइलें उत्पन्न नहीं की हैं। ऐसे पृष्ठ पर जाएँ जो अवतार प्रस्तुत करता हो या लैब में WordPress अवतार-प्रस्तुत करने वाला पथ कॉल करें।
not vulnerable
सामान्य कारण हैं: पैच किए गए Breeze संस्करण, Breeze इंस्टॉल न होना, URL पर WordPress का पता न चलना, या लक्ष्य पथ में /lab-wp जैसी उपनिर्देशिका का अभाव।
Injection failed
Gravatar सेटिंग अक्षम हो सकती है, साइट सार्वजनिक रूप से अवतार प्रस्तुत नहीं कर सकती, कैश पथ लिखने योग्य नहीं हो सकता, या रिमोट पेलोड URL WordPress सर्वर से सुलभ नहीं हो सकता।
यह रिपॉजिटरी शिक्षा, स्थानीय लैब पुनरुत्पादन और अधिकृत सुरक्षा परीक्षण के लिए है। इसे उन सिस्टमों पर न चलाएँ जिनके स्वामी आप नहीं हैं या जिनके परीक्षण की आपके पास स्पष्ट अनुमति नहीं है।