
CVE-2024-47177 के विरुद्ध एक्सप्लॉइट प्रयासों का पता लगाने के लिए PoC हनीपॉट
यह प्रोजेक्ट CUPS (Common UNIX Printing System) में कमजोरियों के शोषण के प्रयासों को कैप्चर करने के लिए एक हनीपॉट लागू करता है। विशेष रूप से, इसे CVE-2024-47177 से संबंधित शोषण प्रयासों की निगरानी के लिए डिज़ाइन किया गया है। यह कमजोरी PPD फ़ाइलों में FoomaticRIPCommandLine पैरामीटर के माध्यम से रिमोट कमांड निष्पादन की अनुमति देती है। यदि इस पैरामीटर में कोई दुर्भावनापूर्ण मान पास किया जाता है, तो इसे उपयोगकर्ता-नियंत्रित कमांड के रूप में निष्पादित किया जा सकता है, जिससे संभावित रूप से गंभीर सुरक्षा उल्लंघन हो सकते हैं।
CUPS एक मानक-आधारित, ओपन-सोर्स प्रिंटिंग सिस्टम है जो विभिन्न UNIX-जैसे ऑपरेटिंग सिस्टमों में व्यापक रूप से उपयोग किया जाता है। cups-filters पैकेज गैर-Mac OS सिस्टमों पर CUPS 2.x के लिए आवश्यक बैकएंड, फ़िल्टर और उपयोगिताएँ प्रदान करता है। CVE-2024-47177 में शोषित गंभीर दोष FoomaticRIPCommandLine का अनुचित प्रबंधन है, जिसे अन्य लॉजिक बगों के साथ मिलकर, जैसे कि CVE-2024-47176 में वर्णित, होस्ट सिस्टम पर मनमाने कमांड निष्पादित करने के लिए उपयोग किया जा सकता है।
यह हनीपॉट आने वाले प्रिंट जॉब अनुरोधों की निगरानी करके और उनमें संदिग्ध विशेषताओं की जाँच करके शोषण प्रयासों को लॉग करने के लिए डिज़ाइन किया गया है, विशेष रूप से printer-privacy-policy-uri पर ध्यान केंद्रित करता है जिसमें कमांड हो सकते हैं।
यह प्रोजेक्ट EvilSocket द्वारा प्रारंभिक प्रकटीकरण से प्रेरित है, जो CUPS से जुड़े सुरक्षा जोखिमों पर प्रकाश डालता है और इसमें शामिल शोषण तकनीकों का व्यापक अवलोकन प्रदान करता है।
इस हनीपॉट को चलाने के लिए, सुनिश्चित करें कि आपके पास निम्नलिखित निर्भरताएँ स्थापित हैं:
cups और subprocess Python लाइब्रेरीज़ (मानक Python इंस्टॉलेशन में शामिल)install.sh फ़ाइल डाउनलोड करें और चलाएँ:
curl -sSL https://raw.githubusercontent.com/referefref/cupspot-2024-47177/refs/heads/main/install.sh | bash
हनीपॉट चलाने के लिए, निम्नलिखित कमांड निष्पादित करें:
python3 cupspot.py <LOCAL_HOST> [TARGET_HOST]
#<LOCAL_HOST>: The local address where the honeypot will listen for incoming print requests.
#[TARGET_HOST]: (Optional) The IP address of a target host to which browsing packets will be sent.
#If omitted, the honeypot will run in passive mode.
हनीपॉट चलाएँ और किसी विशिष्ट लक्ष्य को पैकेट भेजें:
python3 cupspot.py 127.0.0.1 192.168.1.100
या इसे निष्क्रिय मोड में चलाएँ:
python3 cupspot.py 127.0.0.1