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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
mikrotrick-poc — CVE-2026-67276 RouterOS SSH सार्वजनिक-कुंजी प्रमाणीकरण बायपास लैब PoC | Kitploit
उपकरण/GitHubGitHub/dinosn/mikrotrick-poc
भेद्यता विश्लेषणशोषणनेटवर्क सुरक्षापेनिट्रेशन टेस्टिंगप्रमाणीकरण
GitHubdinosn/mikrotrick-poc

mikrotrick-poc

CVE-2026-67276 RouterOS SSH सार्वजनिक-कुंजी प्रमाणीकरण बायपास लैब PoC

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

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

सभी देखें →

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

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

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

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

MikroTrick लैब PoC — CVE-2026-67276 (RouterOS SSH public-key auth बाईपास)

केवल लैब उपयोग के लिए। केवल उन RouterOS इंस्टेंस के विरुद्ध चलाएँ जिनके आप स्वामी हैं। उन डिवाइसों पर हमला करना जिनके आप स्वामी नहीं हैं, एक अपराध है (CFAA, पोलिश कला. 267, समकक्ष)।

पृष्ठभूमि

CERT PL (2026-09-05) ने छह RouterOS कमजोरियों का खुलासा किया, जिनका सक्रिय रूप से जंगल में श्रृंखला "MikroTrick" के रूप में शोषण किया गया (जब SSH इंटरनेट-सुलभ हो तो बिना प्रमाणीकरण के पूर्ण डिवाइस अधिग्रहण)। MikroTik द्वारा 2026-09-03 को 7.25beta3 / 7.24.2 / 7.23.4 / 6.49.21 में ठीक किया गया।

CVEप्रकारमुख्य दोष
2026-67276CWE-347 (यह PoC)SSH userauth कुंजी मिलान जाँच (कुंजी प्रकार, मापांक) लेकिन घातांक को छोड़ देती है; हस्ताक्षर सत्यापन क्लाइंट-आपूर्ति कुंजी का उपयोग करता है ⇒ e=1 जालसाजी
2026-86060CWE-88निषिद्ध वर्ण (-2 हमले के लॉग में देखा गया) से शुरू होने वाले उपयोगकर्ता नाम के माध्यम से तर्क इंजेक्शन ⇒ नीति-मास्क परिवर्तन ⇒ विशेषाधिकार वृद्धि
2026-67279CWE-841SSH बिना पूर्ण userauth के क्लाइंट-अनुरोधित rekey के बाद कनेक्शन प्रोटोकॉल में प्रवेश करता है ⇒ फ़ाइल नेमस्पेस में बिना प्रमाणीकरण के exec
2026-67277CWE-306bandwidth-test pre-auth स्थिति + uninit बफर प्रकटीकरण + आकार-अंडरफ्लो ⇒ कर्नेल मेमोरी लीक / पुनरारंभ
2026-67278CWE-347X.509 दोषपूर्ण RSA/PKCS#1v1.5 हस्ताक्षर स्वीकार करता है; e=3 ट्रस्ट एंकर ⇒ विश्वसनीय मध्यवर्ती जालसाजी
2026-67281CWE-824WebFig /jsproxy पुराना uninitialized प्रिंसिपल पॉइंटर + पथ एस्केप ⇒ रूट फ़ाइल पढ़ना

कमजोर श्रेणियाँ (सभी छह): [7.24, 7.24.2), [7.0.0, 7.23.4), [6.0.0, 6.49.21)।

CVE-2026-67276 तंत्र

  1. RouterOS प्रस्तुत SSH public-key ब्लॉब का मिलान उपयोगकर्ता की अधिकृत कुंजी से (कुंजी प्रकार, मापांक) द्वारा करता है — घातांक की तुलना नहीं की जाती।
  2. हस्ताक्षर सत्यापन क्लाइंट-आपूर्ति कुंजी का उपयोग करता है, अर्थात हमलावर के ब्लॉब से घातांक।
  3. {ssh-rsa, e=1, n=victim} प्रस्तुत करने से sig^1 mod n == sig बनता है, इसलिए वैध "हस्ताक्षर" केवल EMSA-PKCS1-v1_5(hash, authdata) है — जिसकी गणना कोई भी कर सकता है जो पीड़ित के सार्वजनिक मापांक को जानता है। कोई निजी कुंजी आवश्यक नहीं।
  4. परिणाम: लक्षित उपयोगकर्ता के रूप में एक SSH कमांड चैनल।

पूर्वापेक्षाएँ (प्रकटीकरण का अपना न्यूनतम): लक्षित उपयोगकर्ता नाम + उस उपयोगकर्ता का अधिकृत RSA सार्वजनिक मापांक।

पुनरुत्पादन के लिए आवश्यक न्यूनतम जानकारी

  1. लक्ष्य: कमजोर श्रेणियों में कोई भी RouterOS, SSH सुलभ (लैब: QEMU में KVM के साथ CHR छवि; वास्तविक हार्डवेयर समकक्ष)।
  2. उपयोगकर्ता नाम एक खाते का जिसमें अधिकृत RSA कुंजी है।
  3. उस अधिकृत कुंजी का RSA मापांक n (लीक/कैप्चर किए गए .pub, प्रावधान रिकॉर्ड, या --modulus-hex से)। यह एकमात्र गुप्त-निकट इनपुट है; निजी कुंजी कभी आवश्यक नहीं।
  4. प्रकटीकरण-पुष्टि सर्वर व्यवहार (दोष स्वयं, CERT PL से): मिलान = (प्रकार, n), सत्यापन घातांक = क्लाइंट-आपूर्ति।
  5. एक क्लाइंट जो मनमाना कुंजी ब्लॉब और मनमाना हस्ताक्षर बाइट्स प्रस्तुत कर सकता है (paramiko + ForgeKey हुक — स्टॉक OpenSSH नहीं कर सकता)।
  6. हस्ताक्षर एल्गोरिथ्म जो सर्वर स्वीकार करता है (ssh-rsa 6.x पर, rsa-sha2-256 भी 7.x पर)।

फ़ाइलें

  • forge_67276.py — प्रिमिटिव: OpenSSH pubkey पार्सिंग, RFC 8017 EMSA एन्कोडर, जाली ब्लॉब/हस्ताक्षर बिल्डर, संदर्भ RFC 8017 सत्यापनकर्ता।
  • selftest.py — स्थानीय प्रमाण, कोई राउटर नहीं: एन्कोडर OpenSSL के लिए बाइट-समान (वास्तविक-हस्ताक्षर व्युत्क्रमण के माध्यम से), जाली हस्ताक्षर e=1 पर सत्यापित होता है और 65537 पर नहीं, पूर्ण RFC 4252 §7 वायर-शेप सिम। सभी 15 जाँचें PASS।
  • poc_67276.py — paramiko क्लाइंट जो बाईपास करता है (प्रति-कनेक्शन एल्गोरिथ्म पिनिंग; --lab-i-own-this-target आवश्यक)।
  • console_setup.py — qemu सीरियल टेलनेट पर एक-बार CHR तैयारी (10.0.2.2 के माध्यम से पीड़ित कुंजी प्राप्त करें, admin के लिए आयात करें, ssh सक्षम करें)।
  • sanity_real_key.py — नियंत्रण: सामान्य pubkey प्रमाणीकरण पहले सफल होना चाहिए।
  • victim_rsa / victim.pub — उत्पन्न डिस्पोजेबल 2048-बिट "पीड़ित" कुंजी जोड़ी; जानबूझकर Git से बाहर रखा गया।

स्थानीय सेटअप

root@kitploit:~
python3 -m venv .venv
./.venv/bin/python -m pip install -r requirements.txt
ssh-keygen -q -t rsa -b 2048 -N '' -C victim-key -f victim_rsa

लैब ([email protected] पर प्रावधानित)

  • Kali x86_64, QEMU 11.0.1 + KVM, /root/mikrotrick-lab/, होस्ट ब्रिज br0 (192.168.100.1/24) टैप्स tap0-tap3 के साथ; br0 पर प्रति-MAC लीज़ के साथ dnsmasq।
VMछविगेस्ट IPMACMac-साइड टनल
chr-6.49.20कमजोर 6.x192.168.100.1152:54:00:aa:00:11127.0.0.1:2222
chr-6.49.21पैच किया गया 6.x192.168.100.1252:54:00:aa:00:12127.0.0.1:2223
chr-7.23.3कमजोर 7.x192.168.100.1352:54:00:aa:00:13127.0.0.1:2224
chr-7.23.4पैच किया गया 7.x192.168.100.1452:54:00:aa:00:14127.0.0.1:2225
  • इच्छित गेस्ट स्थिति: e1000 NIC, स्थिर गेस्ट IP, admin पासवर्ड labpass123, और admin के लिए आयातित पीड़ित कुंजी। पहले-लॉगिन पर बाध्य पासवर्ड परिवर्तन SSH (bootstrap_password.py डायलॉग पढ़ता है) या QEMU मॉनिटर sendkey (mon_type.py) के माध्यम से चलाए गए — CHR का सीरियल कंसोल डिफ़ॉल्ट रूप से मृत है; VGA कंसोल केवल मॉनिटर screendump के माध्यम से पठनीय है।
  • Mac से टनल: ssh -N -L 2222:192.168.100.11:22 -L 2223:192.168.100.12:22 -L 2224:192.168.100.13:22 -L 2225:192.168.100.14:22 [email protected]

पुनः चलाएँ (उदाहरण, VM3):

root@kitploit:~
qemu-system-x86_64 -enable-kvm -m 512 -smp 2 -name chr-7.23.3 \
  -drive file=/root/mikrotrick-lab/chr-7.23.3.img,format=raw,if=virtio \
  -netdev tap,id=n2,ifname=tap2,script=no,downscript=no \
  -device e1000,netdev=n2,mac=52:54:00:aa:00:13 \
  -display none -monitor unix:/root/mikrotrick-lab/mon3.sock,server,nowait &
root@kitploit:~
./.venv/bin/python import_key.py 127.0.0.1 admin labpass123 victim.pub 2224
./.venv/bin/python sanity_real_key.py 127.0.0.1 2224 victim_rsa admin   # बेसलाइन
./.venv/bin/python poc_67276.py --host 127.0.0.1 --port 2224 \
    --username admin --pubkey victim.pub --algos rsa-sha2-256,ssh-rsa \
    --exp-enc aligned --exec '/system resource print' --lab-i-own-this-target

देखे गए परिणाम (2026-09-06 स्वतंत्र पुनः सत्यापन)

लक्ष्यवास्तविक निजी कुंजी (बेसलाइन)जाली e=1 कुंजी (PoC)
7.23.3auth OKauth OK + /system resource print exec — CVE पुष्टि
7.23.4 (पैच किया गया)auth OKअस्वीकृत
6.49.20auth OKअस्वीकृत (बारीकी देखें)
6.49.21 (पैच किया गया)अमान्य बेसलाइनव्याख्या योग्य नहीं; गेस्ट ने SSH none auth स्वीकार किया

7.x जोड़ी के लिए, वास्तविक-कुंजी बेसलाइन दोनों बिल्डों पर सफल होती है, SSH none प्रमाणीकरण अस्वीकृत है, गलत-मापांक जालसाजी 7.23.3 द्वारा अस्वीकृत है, और सही-मापांक जालसाजी केवल 7.23.3 पर सफल होती है। यह एक वैध कमजोर-बनाम-पैच किया गया तुलना है।

6.49.21 गेस्ट को स्वतंत्र पुनः सत्यापन के दौरान दस्तावेज़ित रूप से प्रावधानित नहीं किया गया था: admin समाप्त रहा, /user ssh-keys print detail खाली था, और एक क्रेडेंशियल-मुक्त SSH none अनुरोध ने कमांड निष्पादित किए। असंबंधित वास्तविक RSA कुंजियाँ और गलत-मापांक e=1 कुंजियाँ इसलिए भी सफल दिखीं। इस गेस्ट को पुनः प्रावधानित करें और सत्यापित करें कि none और एक असंबंधित कुंजी अस्वीकृत हैं इसे पैच किए गए नियंत्रण के रूप में उपयोग करने से पहले।

संस्करण बारीकी: 6.49.20 पर सर्वर-साइड मिलान e=1 ब्लॉब को अस्वीकार करता है (/log ssh,debug: can't find matching key for user: admin) — प्रकटीकृत घातांक-छूट 6.x के मिलानकर्ता में देखने योग्य नहीं थी हालाँकि CERT की व्यापक श्रेणी [6.0.0, 6.49.21) सूचीबद्ध करती है। पुष्टि कमजोर: 7.23.3। पुष्टि पैच किया गया: 7.23.4। वर्तमान 6.49.21 लैब स्थिति न तो परिणाम साबित करती है। जंगल में MikroTrick गतिविधि ने भी 7.x डिवाइसों को लक्षित किया।

वायर-प्रारूप निष्कर्ष (RFC 8332): ब्लॉब की आंतरिक प्रकार स्ट्रिंग ssh-rsa ही रहती है rsa-sha2-256/512 हस्ताक्षर एल्गोरिदम के लिए भी; सिग एल्गोरिथ्म केवल बाहरी एल्गोरिथ्म फ़ील्ड में जाता है। इसे अनदेखा करने से सर्वर userauth के बीच में डिस्कनेक्ट हो जाता है (ब्लॉब पार्स त्रुटि) — 6.x और 7.x दोनों पर देखा गया। PoC का ForgeKey इसे संभालता है, और --exp-enc aligned|canonical टॉगल करता है e=1 mpint चौड़ाई (1 बनाम 3 बाइट्स)। 7.23.3 पर दोनों चौड़ाई प्रमाणित होती हैं — मिलानकर्ता घातांक को पार्स करता है और वास्तव में इसके मान को अनदेखा करता है। 6.49.20 पर न तो प्रमाणित होता है (can't find matching key) — ऊपर संस्करण बारीकी देखें। सर्वर-साइड /system logging add topics=ssh,debug + /log print पैकेट हेक्सडंप ने यह सब सतह पर लाया।

इस लैब द्वारा उपयोग किए गए स्रोत छवि संग्रह SHA-256 मान:

root@kitploit:~
a954ab0002a83de5e4c02110f560d0bf622e7d21916088aaacda6baaba88cf4a  chr-6.49.20.img.zip
6dcfb8674fa7964bf92ce849fbb0ba8147a5cf3d7a1ba595e24ce3e615569188  chr-6.49.21.img.zip
646764fb0a53e9b5a056cb9cf7420eb1629031096c7268c99fb9216c07f8e98c  chr-7.23.3.img.zip
0d32a8da0950dee71e751281c39063f2bebee4b542291aedecc9dbfbe5d60c9d  chr-7.23.4.img.zip

रक्षात्मक नोट्स (CERT PL)

  • तुरंत पैच करें: 7.25beta3 / 7.24.2 / 7.23.4 / 6.49.21।
  • अंतरिम: SSH/WWW/bandwidth-test को विश्वसनीय प्रबंधन नेटवर्क तक सीमित करें; बिना पैच वाले डिवाइसों से RouterOS-आरंभित SSH/TLS से बचें।
  • IOCs: लॉग पंक्तियाँ login failure for user -2 via ssh, user <name> added by ssh:-2@<ip>; अज्ञात उच्च-विशेषाधिकार उपयोगकर्ता ops; /system/device-mode/print "Flagged" मार्कर (समझौते का संकेत देता है, इसकी अनुपस्थिति कुछ साबित नहीं करती)। देखे गए हमलावर IP: 82.192.72.4, 103.102.31.18।

स्रोत

  • CERT PL सलाह: https://cert.pl/en/posts/2026/09/vulnerabilities-in-mikrotik-routeros-actively-exploited/
  • CERT PL CVE पृष्ठ: https://cert.pl/en/posts/2026/09/mikrotik-routeros-cve/
  • MikroTik बुलेटिन (2026-09-03): https://mikrotik.com/supportsec/september-2026-vulnerability/
  • "Flagged" तंत्र: https://manual.mikrotik.com/docs/system-information-and-utilities/device-mode#flagged-status
टूल डाउनलोड करें