
CVE-2026-46592 के लिए रिप्रोड्यूसर: Apache Camel camel-cxf operationName हेडर इंजेक्शन जो आमंत्रित SOAP ऑपरेशन (confused deputy) को पढ़ने वाले से विनाशकारी ऑपरेशन की ओर पुनर्निर्देशित करता है (4.14.8/4.18.3/4.21.0 में ठीक किया गया)
operationName हेडर इंजेक्शन (SOAP ऑपरेशन रीडायरेक्शन)उसी Apache Camel भेद्यता के लिए चलाने योग्य proof-of-concept रिप्रोड्यूसर, प्रत्येक रनटाइम के लिए एक:
| रनटाइम | निर्देशिका | स्टैक | बैकएंड SOAP सेवा |
|---|---|---|---|
| Camel Spring Boot | camel-spring-boot/ | Spring Boot 3.2.0 + camel-spring-boot 4.18.2 | CXF ServerFactoryBean अपने स्वयं के पोर्ट :9000 पर |
| Camel Quarkus | camel-quarkus/ | Quarkus 3.36.0 + Camel Quarkus 3.36.0 (Camel 4.20.0 बंडल करता है) | quarkus-cxf प्रबंधित सर्वर पर, /soapservice/account |
दोनों प्रभावित संस्करण हैं (4.14.8 / 4.18.3 / 4.21.0 में ठीक किया गया), और दोनों समान दोष प्रदर्शित करते हैं:
CxfProducer#getBindingOperationInfo पहले operationName संदेश हेडर की तलाश करता है और केवल उसके अनुपस्थित होने पर
एंडपॉइंट के defaultOperationName पर वापस आता है। उस हेडर स्थिरांक का मान सादा स्ट्रिंग
operationName है — न कि CamelCxfOperationName — इसलिए HTTP बाउंड्री फ़िल्टर (जो केवल Camel* को हटाता है) उस
नाम के इनबाउंड HTTP हेडर को सीधे गुजरने देता है। एक अविश्वसनीय क्लाइंट operationName: deleteAccount जोड़ता है और
रूट का पिन किया गया, केवल-पठनीय getBalance एक विनाशकारी कॉल बन जाता है (CWE-441, confused deputy)।
दोनों वेरिएंट केवल इस बात में भिन्न हैं कि बैकएंड SOAP सेवा कैसे स्थापित की जाती है: Quarkus वेरिएंट इसे quarkus-cxf के साथ प्रबंधित Quarkus HTTP सर्वर पर प्रकाशित करता है (इसलिए कॉन्ट्रैक्ट में JAX-WS
@WebServiceएनोटेशन होते हैं), जबकि Spring Boot वेरिएंट इसे एक अलग पोर्ट पर CXFServerFactoryBeanके साथ प्रोग्रामेटिक रूप से बनाता है। दोष अप्रभावित है।
प्रत्येक उपनिर्देशिका अपने स्वयं के Dockerfile, docker-compose.yml, और README के साथ एक स्व-निहित प्रोजेक्ट है। संक्षेप में, दोनों में से किसी के लिए:
cd camel-spring-boot # या: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down
| गुण | मान |
|---|---|
| घटक | camel-cxf (camel-cxf-soap; स्थिरांक camel-cxf-common में रहता है, इसलिए camel-cxfrs भी प्रभावित है) |
| प्रभावित क्लास | org.apache.camel.component.cxf.jaxws.CxfProducer#getBindingOperationInfo जो CxfConstants.OPERATION_NAME ("operationName") पढ़ता है |
| CWE | CWE-20 (अनुचित इनपुट सत्यापन) / CWE-441 (अनपेक्षित प्रॉक्सी या मध्यस्थ — Confused Deputy) |
| प्रभाव | एक HTTP क्लाइंट operationName सेट करता है → प्रोड्यूसर एक अलग SOAP ऑपरेशन (जैसे विनाशकारी) को आमंत्रित करता है |
| प्रभावित संस्करण | 4.0.0 से पहले 4.14.8 तक, 4.15.0 से पहले 4.18.3 तक, 4.19.0 से पहले 4.21.0 तक |
| ठीक किए गए संस्करण | 4.14.8, 4.18.3, 4.21.0 |
| JIRA | CAMEL-23526 (PR apache/camel#23326) |
| श्रेय | Yu Bao (PayPal) |
परामर्श: https://camel.apache.org/security/CVE-2026-46592.html
ये रिप्रोड्यूसर केवल सुरक्षा अनुसंधान और अधिकृत परीक्षण के लिए प्रदान किए गए हैं, एक सार्वजनिक रूप से खुलासा और ठीक की गई भेद्यता के लिए। स्पष्ट अनुमति के बिना उन्हें सिस्टम के विरुद्ध उपयोग न करें।