
Python एक्सप्लॉइट CVE-2022-46196 के लिए, जो Cacti <=1.2.22 में अप्रमाणित कमांड इंजेक्शन को लक्षित करता है। यह संस्करण पहचान और remote_agent.php के माध्यम से रिवर्स शेल वितरण को स्वचालित करता है।
यह Python कोड Cacti के संस्करण 1.2.22 तक (और सहित) में एक अप्रमाणित कमांड इंजेक्शन कमजोरी का शोषण करता है। यह कमांड लाइन से तर्कों को पार्स करने के लिए argparse, लक्ष्य Cacti इंस्टेंस का HTML कंटेंट प्राप्त करने के लिए requests, और HTML कंटेंट से Cacti का संस्करण संख्या निकालने के लिए BeautifulSoup का उपयोग करता है। यदि संस्करण <= 1.2.22 है, तो कोड शोषण के साथ आगे बढ़ता है।
शोषण में Cacti इंस्टेंस की remote_agent.php फ़ाइल पर एक पेलोड भेजना शामिल है, जिसमें पेलोड एक Bash कमांड होता है जो निर्दिष्ट सुनने वाले IP और पोर्ट पर एक रिवर्स शेल खोलता है। कोड पेलोड भेजने के लिए होस्ट आईडी की एक श्रृंखला के माध्यम से पुनरावृत्ति करता है, और सफल होने पर, निर्दिष्ट IP और पोर्ट पर एक रिवर्स शेल खोलता है।
यह कोड केवल नैतिक उद्देश्यों के लिए उपयोग किया जाना चाहिए, जैसे सुरक्षा अनुसंधान या पेनिट्रेशन परीक्षण।
कोड चलाने के लिए, निम्नलिखित कमांड का उपयोग करें:
python exploit.py --url <URL of Cacti's instance> --lhost <Listening IP> --lport <Listening Port>
जहाँ:
कोड को निम्नलिखित Python लाइब्रेरी/मॉड्यूल की आवश्यकता है:
argparse
requests
BeautifulSoup4
re