SNMP RCE
SNMP RCE
यदि व्यवस्थापक डिवाइस या सर्वर पर इसकी डिफ़ॉल्ट कॉन्फ़िगरेशन को नजरअंदाज करता है, तो एक हमलावर SNMP का शोषण कर सकता है। लिनक्स ऑपरेटिंग सिस्टम पर लिखने की अनुमति (rwcommunity) के साथ SNMP समुदाय का दुरुपयोग करके, हमलावर सर्वर पर कमांड निष्पादित कर सकता है।
अतिरिक्त कमांड के साथ सेवाओं का विस्तार करना
SNMP सेवाओं का विस्तार करने और अतिरिक्त कमांड जोड़ने के लिए, "nsExtendObjects" तालिका में नई पंक्तियाँ जोड़ना संभव है। यह snmpset
कमांड का उपयोग करके और आवश्यक पैरामीटर प्रदान करके किया जा सकता है, जिसमें निष्पादन योग्य फ़ाइल का पूर्ण पथ और निष्पादित करने के लिए कमांड शामिल है:
कमांड निष्पादन के लिए इंजेक्ट करना
SNMP सेवा पर चलाने के लिए कमांड इंजेक्ट करने के लिए कॉल किए गए बाइनरी/स्क्रिप्ट का अस्तित्व और निष्पादन योग्य होना आवश्यक है। NET-SNMP-EXTEND-MIB
निष्पादन योग्य के लिए पूर्ण पथ प्रदान करने की आवश्यकता होती है।
इंजेक्ट किए गए कमांड के निष्पादन की पुष्टि करने के लिए, snmpwalk
कमांड का उपयोग SNMP सेवा को सूचीबद्ध करने के लिए किया जा सकता है। आउटपुट कमांड और इसके संबंधित विवरण प्रदर्शित करेगा, जिसमें पूर्ण पथ शामिल है:
Running the Injected Commands
जब इंजेक्ट किया गया कमांड पढ़ा जाता है, तो इसे निष्पादित किया जाता है। इस व्यवहार को run-on-read()
के रूप में जाना जाता है। कमांड का निष्पादन snmpwalk पढ़ने के दौरान देखा जा सकता है।
Gaining Server Shell with SNMP
सर्वर पर नियंत्रण प्राप्त करने और सर्वर शेल प्राप्त करने के लिए, mxrch द्वारा विकसित एक पायथन स्क्रिप्ट का उपयोग https://github.com/mxrch/snmp-shell.git से किया जा सकता है।
वैकल्पिक रूप से, SNMP में एक विशिष्ट कमांड इंजेक्ट करके मैन्युअल रूप से एक रिवर्स शेल बनाया जा सकता है। यह कमांड, जो snmpwalk द्वारा ट्रिगर किया जाता है, हमलावर की मशीन के लिए एक रिवर्स शेल कनेक्शन स्थापित करता है, जिससे पीड़ित मशीन पर नियंत्रण प्राप्त होता है। आप इसे चलाने के लिए पूर्व-आवश्यकता स्थापित कर सकते हैं:
या एक रिवर्स शेल:
संदर्भ
Last updated