
CVE-2026-0603 — Updated!
Hibernate ORM द्वितीय-क्रम SQL इंजेक्शन
CVE-2026-0603 Hibernate ORM इंजेक्शन / सेकंड-ऑर्डर SQL इंजेक्शन
★ CVE-2026-0603 Hibernate SQL इंजेक्शन PoC ★
https://github.com/user-attachments/assets/2e7c3a89-e26f-48cd-af0b-8b82d32ce71f
अवलोकन
CVE-2026-0603 Hibernate ORM में एक सेकंड-ऑर्डर SQL इंजेक्शन भेद्यता है, जो एक व्यापक रूप से उपयोग किया जाने वाला Java ORM फ्रेमवर्क है।
जब उपयोगकर्ता द्वारा प्रदान की गई स्ट्रिंग प्राइमरी की जिसमें एक दुर्भावनापूर्ण SQL पेलोड होता है, का उपयोग बल्क DELETE या UPDATE ऑपरेशन में किया जाता है, तो Hibernate उस मान को बिना सैनिटाइज़ेशन के सीधे WHERE क्लॉज़ में सम्मिलित कर देता है, जिससे डेटाबेस रिकॉर्ड्स का अनपेक्षित सामूहिक विलोपन या संशोधन होता है।
प्रभावित संस्करण
| श्रेणी | संस्करण |
|---|---|
| भेद्य | Hibernate ORM 5.2.8 ≤ संस्करण ≤ 5.6.15 |
| पैच किया गया | कोई आधिकारिक पैच नहीं (5.6.x EOL) |
प्रभाव
- कई तालिकाओं में रिकॉर्ड्स का सामूहिक विलोपन
- कई तालिकाओं में रिकॉर्ड्स का सामूहिक संशोधन
- डेटाबेस से संवेदनशील डेटा की संभावित चोरी
वातावरण
docker build -t cve-2026-0603-hibernate-vuln .
docker run --rm -it -p 8080:8080 --name hibernate-vuln cve-2026-0603-hibernate-vuln
PoC
भेद्य वातावरण शुरू करने के बाद, हमले को पुनः उत्पन्न करने के लिए नीचे दिए गए चरणों का पालन करें।
चरण 1. दुर्भावनापूर्ण उपयोगकर्ता नाम के साथ पंजीकरण करें
username: ' or '1' = '1
चरण 2. अपडेट या डिलीट ट्रिगर करें
पंजीकृत खाते पर अपडेट या डिलीट बटन पर क्लिक करें।
चरण 3. पुष्टि करें कि सभी उपयोगकर्ता डेटा प्रभावित है
सत्यापित करें कि DELETE या UPDATE क्वेरी सभी पंक्तियों पर लागू की गई थी, न कि केवल पंजीकृत खाते पर। DELETE के लिए, दोनों तालिकाओं के सभी रिकॉर्ड हटा दिए जाते हैं। UPDATE के लिए, सभी रिकॉर्ड हमलावर द्वारा प्रदान किए गए मानों के साथ संशोधित किए जाते हैं।
शमन
application.ymlसेInlineIdsOrClauseBulkIdStrategyसेटिंग हटाएं- यदि
InlineIdsOrClauseBulkIdStrategyका उपयोग करना आवश्यक है, तो किसी भी उपयोगकर्ता द्वारा प्रदान किए गए प्राइमरी की मानों पर सख्त व्हाइटलिस्ट-आधारित इनपुट सत्यापन लागू करें ताकि SQL नियंत्रण वर्णों को अस्वीकार किया जा सके