Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-83531 — CVE-2026-83531 के लिए रन करने योग्य Spring Boot प्रूफ-ऑफ-कॉन्सेप्ट, जो Apache Camel के dynamic-router-control endpoint में एक्सप्रेशन-लैंग्वेज इंजेक्शन को प्रदर्शित करता है और फिक्स का सत्यापन करता है। | Kitploit
उपकरण/GitHubGitHub/oscerd/cve-2026-83531
रक्षात्मक उपकरणभेद्यता विश्लेषणकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणलर्निंग और शिक्षा
GitHuboscerd/cve-2026-83531

CVE-2026-83531

CVE-2026-83531 के लिए रन करने योग्य Spring Boot प्रूफ-ऑफ-कॉन्सेप्ट, जो Apache Camel के dynamic-router-control endpoint में एक्सप्रेशन-लैंग्वेज इंजेक्शन को प्रदर्शित करता है और फिक्स का सत्यापन करता है।

रिपॉजिटरी देखें
31 दिन पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

CVE-2026-83531 — camel-dynamic-router: control-endpoint expression-language injection

Apache Camel की उस भेद्यता के लिए चलाने योग्य proof-of-concept reproducer, जिसमें dynamic-router-control endpoint ने subscription predicate और उसे compile करने के लिए उपयोग की जाने वाली भाषा का नाम दोनों को आने वाले संदेश से लिया (किसी DynamicRouterControlMessage के predicate / expressionLanguage फ़ील्ड, या CamelDynamicRouterPredicate / CamelDynamicRouterExpressionLanguage हेडर से)। इसके बाद सेवा ने उस भाषा को CamelContext से resolve किया और expression को एक Predicate में compile किया, बिना किसी allow-list और बिना किसी opt-in के। compile किए गए predicate का मूल्यांकन चैनल के माध्यम से route होने वाले प्रत्येक exchange पर किया गया — इसलिए कोई भी अभिनेता जो किसी ऐसे transport पर संदेश भेज सकता है जिसका route उसे किसी control endpoint तक forward करता है, अपनी पसंद का expression प्रदान कर सकता था, जिसका मूल्यांकन Camel प्रक्रिया के विशेषाधिकारों के साथ होता। classpath पर मौजूद कोई भी भाषा चुनी जा सकती थी, जिसमें simple भी शामिल है, जो हमेशा उपस्थित रहती है और डिफ़ॉल्ट थी।

केवल Camel Spring Boot। कोई camel-quarkus-dynamic-router extension नहीं है, इसलिए यह reproducer Camel Quarkus पर नहीं चलाया जा सकता।

RuntimeDirectoryStack
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-dynamic-router 4.22.0 (प्रभावित; 4.22.1 में ठीक किया गया)

यह क्या प्रदर्शित करता है

ऐप एक Dynamic Router चैनल test सेट करता है (direct:start → dynamic-router://test)। हमलावर एक subscribe control संदेश भेजता है जिसमें हमलावर द्वारा चुना गया predicate expression और भाषा होती है:

CamelDynamicRouterPredicate          = ${bean:detonator?method=detonate}
CamelDynamicRouterExpressionLanguage = simple

फिर एक संदेश चैनल के माध्यम से रूट किया जाता है, जो सदस्यता विधेय (subscription predicate) का मूल्यांकन करता है। प्रभावित बिल्ड पर अभिव्यक्ति निष्पादित होती है, जो detonator.detonate() को आमंत्रित करती है — जो किसी भी नो-आर्ग्युमेंट रजिस्ट्री विधि के लिए एक हानिरहित स्टैंड-इन है जिस तक कोई हमलावर पहुँच सकता है (और कोई भी भाषा, जैसे Groovy, मनमाना कोड सक्षम करती है)। ठीक किए गए बिल्ड पर नियंत्रण एंडपॉइंट संदेश से विधेय/भाषा लेने से इंकार कर देता है।

cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down

प्रभावित बिल्ड पर अपेक्षित आउटपुट:

Subscription accepted.
>>> PROVEN: the attacker-supplied predicate expression was compiled and evaluated, invoking
>>> detonator.detonate() with the privileges of the Camel process ...

फिक्स्ड बिल्ड पर सब्सक्राइब को IllegalArgumentException: The subscription predicate expression, and the language used to compile it, cannot be taken from a control message. ... set 'allowPredicateFromMessage=true' ... के साथ अस्वीकार कर दिया जाता है।

भेद्यता सारांश

प्रॉपर्टीमान
घटकcamel-dynamic-router (dynamic-router-control endpoint)
CWECWE-94 (कोड इंजेक्शन), CWE-917 (एक्सप्रेशन लैंग्वेज इंजेक्शन)
गंभीरताउच्च
हमला वेक्टरएक कंट्रोल संदेश (सब्सक्राइब/अपडेट) जो एक प्रेडिकेट एक्सप्रेशन और लैंग्वेज प्रदान करता है, ऐसे ट्रांसपोर्ट पर जिसका रूट इसे dynamic-router-control endpoint पर अग्रेषित करता है
प्रभावCamel प्रक्रिया के विशेषाधिकारों के साथ हमलावर द्वारा चुने गए एक्सप्रेशन (कोई भी क्लासपाथ लैंग्वेज) का मूल्यांकन — कोड निष्पादन
प्रभावित संस्करण4.4.0 से 4.18.5 से पहले तक, 4.19.0 से 4.22.1 से पहले तक
फिक्स्ड संस्करण4.18.5, 4.22.1, 4.23.0
JIRACAMEL-24576
श्रेयLeon Zlobecki

सलाह: https://camel.apache.org/security/CVE-2026-83531.html

फिक्स

प्रेडिकेट एक्सप्रेशन और उसकी लैंग्वेज अब डिफ़ॉल्ट रूप से कंट्रोल संदेश से नहीं लिए जाते: जो कंट्रोल संदेश उन्हें प्रदान करता है, उसे अस्वीकार कर दिया जाता है, जब तक कि रूट लेखक dynamic-router-control endpoint पर allowPredicateFromMessage=true के साथ स्पष्ट रूप से ऑप्ट-इन न करे। इच्छित मार्ग endpoint URI पर predicate और expressionLanguage को कॉन्फ़िगर करना है (रूट-लेखक-नियंत्रित), जैसा कि 4.4.0 से पहले के रिलीज़ में था।

यदि आप अपग्रेड नहीं कर सकते तो शमन

बाहरी रूप से उत्पन्न संदेशों को dynamic-router-control endpoint पर अग्रेषित न करें; सदस्यताओं को केवल रूट-लेखक-नियंत्रित endpoints से प्रबंधित करें, और उन ट्रांसपोर्ट्स को प्रतिबंधित करें जो कंट्रोल चैनल तक पहुँच सकते हैं।

अस्वीकरण

यह रिपॉज़िटरी शैक्षिक और रक्षात्मक उद्देश्यों के लिए प्रकाशित की गई है: Apache Camel उपयोगकर्ताओं को भेद्यता को समझने, यह सत्यापित करने में मदद करने के लिए कि क्या वे प्रभावित हैं, और पुष्टि करने के लिए कि अपग्रेड करने से यह हल हो जाता है। पेलोड एक सौम्य मार्कर बीन है। इस सामग्री का उपयोग उन सिस्टमों के विरुद्ध न करें जिनके आप स्वामी या संचालक नहीं हैं।

टूल डाउनलोड करें