
cve-2026-48907 स्कैनर
Joomla! JCE Editor < 2.9.99.5 के लिए एकल-फ़ाइल, स्व-निहित स्कैनर — अप्रमाणित दूरस्थ कोड निष्पादन (CVE-2026-48907)
लेखक: अल्मा
[!CAUTION]
🚨 अस्वीकरण — उपयोग से पहले पढ़ें
यह एक अंतर्ग्राही सुरक्षा परीक्षण उपकरण है।
यह उपकरण केवल अधिकृत सुरक्षा मूल्यांकन के लिए है।
उन प्रणालियों को स्कैन करना जिनके आप मालिक नहीं हैं या जिनके परीक्षण की लिखित अनुमति नहीं है, अधिकांश न्यायक्षेत्रों में अवैध है।
लेखक (हुसैन मोहम्मद मस्ता घिमौ) इस उपकरण के उपयोग से उत्पन्न किसी भी दुरुपयोग, क्षति, कानूनी कार्रवाई या डेटा हानि के लिए बिल्कुल कोई देयता स्वीकार नहीं करता है।
इस स्कैनर को चलाकर आप सहमत हैं:
केवल उन संपत्तियों को स्कैन करें जो आपकी हैं या जिनके लिए आपके पास स्पष्ट लिखित सहमति है।
यह समझें कि अंतर्ग्राही सटीकता जांच के भाग के रूप में लक्ष्य सर्वर पर एक हानिरहित PoC PHP फ़ाइल अपलोड करता है।
प्रत्येक अपलोड की गई PoC फ़ाइल को उपयोग के तुरंत बाद मैन्युअल रूप से हटाएँ।
अपने जोखिम पर उपयोग करें।
[!IMPORTANT] सटीकता के लिए "अंतर्ग्राही" क्यों महत्वपूर्ण है: उच्चतम संभव विश्वास प्राप्त करने और झूठी सकारात्मकता को समाप्त करने के लिए, यह उपकरण करता है। यह एक सुरक्षित PHP प्रूफ-ऑफ-कॉन्सेप्ट लाइन अपलोड करता है और फिर सर्वर द्वारा लौटाए गए सटीक गणित परिणाम को सत्यापित करके दूरस्थ कोड निष्पादन की पुष्टि करता है। गैर-अंतर्ग्राही स्कैनर जो केवल संस्करण स्ट्रिंग पढ़ते हैं, वे बैक-पोर्टेड पैच या कस्टम हॉट-फिक्स से चूक सकते हैं। इसलिए, यह डिज़ाइन द्वारा अंतर्ग्राही है — बुद्धिमानी से और पूर्ण प्राधिकरण के साथ उपयोग करें।
masta-cve-2026-48907.py एक पूरी तरह से मूल, एकल-फ़ाइल Python स्कैनर है जो Joomla! इंस्टेंस पर JCE एडिटर घटक (2.9.99.5 से पुराने संस्करण) में CVE-2026-48907 का पता लगाने के लिए डिज़ाइन किया गया है।
requests/httpx निर्भरता नहीं।.py फ़ाइल जिसे आप कहीं भी ड्रॉप कर सकते हैं।openpyxl या rich के बिना काम करता है, लेकिन जब वे स्थापित होते हैं तो सुंदर दिखता है।ThreadPoolExecutor के माध्यम से URL सूचियों को जल्दी से स्कैन करें।.xlsx) रिपोर्ट।| विशेषता | विवरण |
|---|---|
| 🔍 बहु-स्रोत फ़िंगरप्रिंटिंग | मेटा टैग, मेनिफेस्ट, स्थैतिक संपत्ति, भाषा फ़ाइलों और JCE-विशिष्ट एंडपॉइंट के माध्यम से Joomla! और JCE का पता लगाता है |
| 🛡 WAF का पता लगाना | Cloudflare, Incapsula, Sucuri और ModSecurity ब्लॉक की पहचान करता है |
| 🧪 सुरक्षित अंतर्ग्राही PoC | एक हानिरहित PHP गणित सत्यापक (विशेषता + सफाई के लिए स्पष्ट रूप से लेबल) अपलोड करता है |
| 📊 कार्ड-आधारित टर्मिनल UI | प्रति लक्ष्य समृद्ध Panel + Table कार्ड (या ANSI फ़ॉलबैक) |
| 📁 Excel रिपोर्ट | हेडर, फ़्रीज़ पेन, कॉलम चौड़ाई और रंग-कोडित स्थिति कोशिकाओं के साथ स्वतः-जनरेटेड .xlsx |
| ⚙️ प्रॉक्सी समर्थन | Burp / ZAP / किसी भी HTTP प्रॉक्सी के माध्यम से सभी ट्रैफ़िक रूट करें |
| 🧵 थ्रेडेड | बल्क सूचियों के लिए कॉन्फ़िगरेबल वर्कर थ्रेड |
openpyxlrichबाकी सब Python मानक पुस्तकालय है (urllib, http.cookiejar, argparse, threading आदि)।
# 1. रिपॉज़िटरी क्लोन करें
git clone https://github.com/YOUR_USERNAME/masta-cve-2026-48907.git
cd masta-cve-2026-48907
# 2. (वैकल्पिक लेकिन अनुशंसित) अतिरिक्त स्थापित करें
pip install -r requirements.txt
आप स्क्रिप्ट को बिना कुछ स्थापित किए सीधे भी चला सकते हैं (केवल टर्मिनल आउटपुट, कोई Excel नहीं):
python masta-cve-2026-48907.py -u https://target.com
python masta-cve-2026-48907.py -u https://target.com/joomla
python masta-cve-2026-48907.py -l targets.txt -t 10
python masta-cve-2026-48907.py -u https://target.com -p http://127.0.0.1:8080
python masta-cve-2026-48907.py -h
-u URL एकल लक्ष्य URL
-l FILE URLs वाली फ़ाइल (प्रति पंक्ति एक)
-o OUTPUT कस्टम Excel आउटपुट पथ
-t THREADS समवर्ती थ्रेड (डिफ़ॉल्ट: 5)
-p PROXY प्रॉक्सी URL (जैसे http://127.0.0.1:8080)
--timeout N सेकंड में अनुरोध टाइमआउट (डिफ़ॉल्ट: 12)
--verify-ssl SSL प्रमाणपत्र सत्यापन सक्षम करें (डिफ़ॉल्ट: अक्षम)
-v, --verbose स्कैन के दौरान प्रति लक्ष्य पूर्ण परिणाम कार्ड दिखाएँ
-d, --debug आंतरिक HTTP अनुरोध निशान दिखाएँ
--no-color रंगीन टर्मिनल आउटपुट अक्षम करें
नीचे इनपुट से अंतिम रिपोर्ट तक पूर्ण स्कैनिंग तर्क है।
flowchart TD
A[उपयोगकर्ता -u URL या -l FILE प्रदान करता है] --> B[लक्ष्यों को सामान्यीकृत और डीडुप्लिकेट करें]
B --> C[ThreadPoolExecutor लॉन्च करें]
C --> D[प्रत्येक लक्ष्य के लिए]
D --> E1[probe_joomla<br/>GET /, meta, manifest,<br/>static assets, README]
E1 --> F1{Joomla! का पता चला?}
F1 -- नहीं --> R1[स्थिति: NOT_JOOMLA]
F1 -- हाँ --> E2[probe_jce<br/>GET jce.xml, endpoints,<br/>JCE-विशिष्ट मार्कर]
E2 --> F2{JCE का पता चला?}
F2 -- नहीं --> R2[स्थिति: SAFE<br/>JCE स्थापित नहीं]
F2 -- हाँ --> F3{संस्करण >= 2.9.99.5?}
F3 -- हाँ --> R3[स्थिति: PATCHED]
F3 -- नहीं --> E3[extract_csrf<br/>Joomla! CSRF टोकन पार्स करें]
E3 --> F4{टोकन मिला?}
F4 -- नहीं --> R4[स्थिति: PATCHED<br/>CSRF अनुपस्थित → संभवतः हार्डन किया गया]
F4 -- हाँ --> E5[गणित-सत्यापक पेलोड बनाएँ<br/>masta-cve-2026-48907-poc ...]
E5 --> E6[वेक्टर 1: Multipart POST<br/>profile_file tmp/ पर अपलोड करें]
E6 --> F5{HTTP 200?}
F5 -- हाँ --> E7["GET /tmp/masta-{rand}.xml.php"]
E7 --> F6{बॉडी में<br/>MATHOK:3105:END शामिल है?}
F6 -- हाँ --> R5[स्थिति: VULNERABLE<br/>विश्वास: CONFIRMED]
F6 -- नहीं --> E8[वेक्टर 2: Browser chain<br/>RPC के माध्यम से अपलोड + नाम बदलें]
E8 --> F7{RCE पुष्टि हुई?}
F7 -- हाँ --> R5
F7 -- नहीं --> E9[WAF ब्लॉक पृष्ठ की जाँच करें]
E9 --> F8{WAF का पता चला?}
F8 -- हाँ --> R6[स्थिति: BLOCKED_BY_WAF]
F8 -- नहीं --> R7[स्थिति: SAFE]
F5 -- नहीं --> E8
R1 --> S[Excel + टर्मिनल कार्ड में परिणाम जोड़ें]
R2 --> S
R3 --> S
R4 --> S
R5 --> S
R6 --> S
R7 --> S
S --> D
D --> T[सारांश डैशबोर्ड प्रिंट करें]
T --> U[reports/ में Excel रिपोर्ट सहेजें]
U --> V[सभी अपलोड की गई PoC फ़ाइलों के लिए<br/>सफाई अनुस्मारक प्रिंट करें]
style R5 fill:#ff0000,stroke:#333,color:#fff
style R3 fill:#32CD32,stroke:#333,color:#000
style R6 fill:#FFD700,stroke:#333,color:#000| स्थिति | अर्थ | विश्वास |
|---|---|---|
| VULNERABLE | PHP पेलोड निष्पादित हुआ और गणित प्रमाण सत्यापित हुआ। RCE वास्तविक है। | CONFIRMED |
| VULNERABLE_UPLOAD_ONLY | फ़ाइल सफलतापूर्वक अपलोड हुई, लेकिन PHP निष्पादन अवरुद्ध था। शोषण योग्य लेकिन RCE की पुष्टि नहीं। | HIGH |
| PATCHED | Joomla! / JCE का पता चला और संस्करण >= 2.9.99.5 है, या CSRF हार्डन किया गया है। | HIGH / MEDIUM |
| SAFE | JCE स्थापित नहीं, या शोषण वेक्टर विफल (संभवतः पैच/हार्डन किया गया)। | HIGH |
| BLOCKED_BY_WAF | वेब एप्लिकेशन फ़ायरवॉल ने परीक्षण को अवरुद्ध किया। | LOW |
| NOT_JOOMLA | लक्ष्य Joomla! साइट प्रतीत नहीं होता। | CERTAIN |
| ERROR | नेटवर्क / कनेक्टिविटी / अनहैंडल अपवाद। | LOW |
नीचे दी गई छवि को अपने वास्तविक टर्मिनल स्क्रीनशॉट से बदलें।
Terminal Screenshot Placeholder
नीचे दी गई छवि को अपने वास्तविक Excel रिपोर्ट स्क्रीनशॉट से बदलें।
Excel Report Placeholder
सुझाव: वास्तविक स्क्रीनशॉट उत्पन्न करने के लिए स्थानीय परीक्षण Joomla! इंस्टेंस के विरुद्ध स्कैनर चलाएँ। उन्हें assets/ फ़ोल्डर में कमिट करें और वे GitHub पर स्वचालित रूप से रेंडर हो जाएँगे।
यह स्कैनर भेद्यता की पुष्टि करने के लिए लक्ष्य सर्वर पर एक हानिरहित PHP प्रूफ-ऑफ-कॉन्सेप्ट अपलोड करता है। उपकरण स्कैन के अंत में सभी अपलोड की गई फ़ाइलों को सूचीबद्ध करते हुए एक अनुस्मारक प्रिंट करेगा। परीक्षण के बाद आपको उन्हें मैन्युअल रूप से हटाना होगा। ये फ़ाइलें masta-{random}.xml.php या इसी तरह के नाम से होती हैं और स्पष्ट टेक्स्ट एट्रिब्यूशन लाइन रखती हैं:
masta-cve-2026-48907-poc. यह परीक्षण सुरक्षा मूल्यांकन के भाग के रूप में किया गया है - मस्ता घिमौ।
इस सॉफ़्टवेयर का उपयोग करके आप अपने कार्यों की पूर्ण जिम्मेदारी स्वीकार करते हैं। कोड "जैसा है" बिना किसी वारंटी के प्रदान किया गया है। यदि आप अंतर्ग्राही RCE सत्यापन स्कैनर चलाने के निहितार्थों को नहीं समझते हैं, तो इस उपकरण का उपयोग न करें।
🛡 अपनी संपत्तियों की सुरक्षा के लिए उपयोग करें। दूसरों को नुकसान पहुँचाने के लिए नहीं।