
Epson Printer RAW Protocol Exploit Framework
भंडार: https://github.com/J4ck3LSyN-Gen2/CVE-2026-39047
PoC स्क्रिप्ट: poc.py
मॉक लक्ष्य: mock_printer.py
लेखक: J4ck3LSyN
यह फ्रेमवर्क CVE-2026-39047 भेद्यता को प्रदर्शित करता है - एप्सॉन मल्टीफंक्शन प्रिंटर (विशेष रूप से L14150 FL27PB) में RAW TCP प्रिंटिंग प्रोटोकॉल (आमतौर पर पोर्ट 9100) पर दुर्भावनापूर्ण या अत्यधिक आकार के पेलोड को संसाधित करते समय एक रिमोट बफर ओवरफ्लो।
सफल शोषण प्रिंटर के एम्बेडेड वातावरण में मनमाना कोड निष्पादन का कारण बन सकता है, जिससे निम्नलिखित संभव होता है:
PoC ट्रांसपोर्ट फ्रेमिंग, पेलोड अस्पष्टीकरण, फजिंग तकनीक, और स्टेज्ड पोस्ट-एक्सप्लॉइटेशन व्यवहारों पर केंद्रित है जो रेड टीमिंग, भेद्यता अनुसंधान और रक्षात्मक परीक्षण के लिए उपयुक्त हैं।
[!WARNING]
- यह उपकरण कमजोर प्रिंटर पर दूरस्थ कोड निष्पादन (RCE) का कारण बन सकता है (और बनेगा)।
- जिन सिस्टमों के आप मालिक नहीं हैं या जिनके परीक्षण की आपके पास स्पष्ट लिखित अनुमति नहीं है, उनका अनधिकृत उपयोग, स्कैनिंग, या शोषण अवैध है। और यह कंप्यूटर धोखाधड़ी और दुरुपयोग कानूनों (जैसे, अमेरिका में CFAA), डेटा सुरक्षा नियमों, और संगठनात्मक नीतियों का उल्लंघन कर सकता है।
लेखक इस कोड के उपयोग या दुरुपयोग से होने वाले किसी भी नुकसान, डेटा हानि, सेवा व्यवधान, या कानूनी परिणामों के लिए कोई देयता नहीं मानता है।- इसका उपयोग केवल उन पृथक प्रयोगशाला वातावरणों में करें जहां आपके नियंत्रण वाले उपकरण हों।
- किसी भी परीक्षण से पहले हमेशा स्पष्ट प्राधिकरण प्राप्त करें।
- कोड में सुरक्षित विश्लेषण में सहायता के लिए ड्राई-रन और निष्क्रिय मोड शामिल हैं।
जिम्मेदार प्रकटीकरण और नैतिक उपयोग को दृढ़ता से प्रोत्साहित किया जाता है।- विक्रेता अपडेट उपलब्ध होते ही अपने उपकरणों को तुरंत पैच करें।
- प्रिंटर अक्सर उच्च विश्वास और सीमित निगरानी वाले आंतरिक नेटवर्क पर होते हैं, जो उन्हें आकर्षक हमले की सतह बनाते हैं।
संदर्भ:
PRT2 प्रोटोकॉल)।mock_printer.py (अत्यधिक आकार के पेलोड पर क्रैश होता है)।socket, asyncio, argparse, zlib, hashlib, आदि)रिपॉजिटरी क्लोन करें:
git clone https://github.com/J4ck3LSyN-Gen2/CVE-2026-39047.git
cd CVE-2026-39047
स्क्रिप्ट को निष्पादन योग्य बनाएं:
chmod +x poc.py mock_printer.py
(वैकल्पिक) एक टर्मिनल में मॉक प्रिंटर के साथ परीक्षण करें:
./mock_printer.py
./poc.py -t <TARGET_IP> [OPTIONS]
उदाहरण:
बुनियादी आधारभूत परीक्षण:
./poc.py -t 192.168.1.100
फजिंग रन:
./poc.py -t 192.168.1.100 --fuzz --techniques cyclic random
स्टेज्ड हाईजैक (केवल प्रयोगशाला):
./poc.py -t 192.168.1.100 --hijack --objective shell --dry-run
मॉक लक्ष्य के साथ पूर्ण अभियान:
# Terminal 1
./mock_printer.py
# Terminal 2
./poc.py -t 127.0.0.1 --fuzz --hijack --objective stage1
bTransportFrame() पेलोड को PRT2 हेडर + लंबाई के साथ लपेटता है।lObf): zlib संपीड़न → गतिशील XOR मास्क (बीज-व्युत्पन्न) → Base64।gModernPayload() और gPostPayload()।गहन विवरण के लिए इनलाइन डॉकस्ट्रिंग और कोड टिप्पणियाँ देखें।
PRT2 फ्रेमिंग पैटर्न देखें।यह PoC केवल शैक्षिक, अनुसंधान और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए प्रदान किया गया है। दुरुपयोग के गंभीर परिणाम हो सकते हैं। रिपॉजिटरी स्वामी किसी भी हुए नुकसान के लिए जिम्मेदार नहीं है।
| Option | Description |
|---|
-t, --target | लक्ष्य IP पता (आवश्यक) |
-p, --port | पोर्ट (डिफ़ॉल्ट: 9100) |
--passive | निष्क्रिय टोही मोड (केवल जांच पेलोड भेजें) |
--fuzz | बहु-तकनीक फजिंग सक्षम करें |
--hijack | पोस्ट-एक्सप्लॉइटेशन स्टेजिंग सक्षम करें |
--objective | stage1 | shell | beacon | persistence |
--callback | वैकल्पिक कॉलबैक पहचानकर्ता/स्ट्रिंग |
--capability | minimal | busybox | linux (कमांड रैपिंग को प्रभावित करता है) |
--dry-run | पेलोड उत्पन्न करें लेकिन भेजें नहीं |
--techniques | स्पेस-सेपरेटेड सूची (जैसे, cyclic format sled random) |
--delay | पेलोड के बीच विलंब सेकंड में (डिफ़ॉल्ट: 1.6) |