
प्रूफ-ऑफ-कॉन्सेप्ट (POC) Python में एक सरल फायरवॉल का है, जिसे Spring4Shell (CVE-2022-22965) RCE हमले को निरीक्षण और दुर्भावनापूर्ण अनुरोध निकायों को ब्लॉक करके कम करने के लिए डिज़ाइन किया गया है।
यह प्रोजेक्ट Python में एक प्रूफ-ऑफ-कॉन्सेप्ट (POC) के रूप में कार्यान्वित एक सरल लेकिन प्रभावी फ़ायरवॉल है। इसे एक HTTP सर्वर के रूप में कार्य करने के लिए डिज़ाइन किया गया है जो इनकमिंग POST अनुरोधों का निरीक्षण करता है ताकि Spring4Shell (CVE-2022-22965) रिमोट कोड निष्पादन (RCE) कमजोरी से जुड़े विशिष्ट पेलोड पैटर्न का पता लगाया और अवरुद्ध किया जा सके।
फ़ायरवॉल Python के अंतर्निहित http.server मॉड्यूल का उपयोग करता है। मुख्य तर्क ServerHandler वर्ग के do_POST विधि में स्थित है।
POST अनुरोधों को इंटरसेप्ट करता है।class.module.classLoader की खोज करता है। यह स्ट्रिंग Spring4Shell शोषण का मूलभूत घटक है और हमलावर के लिए इसे अस्पष्ट करना कठिन है।403 Forbidden HTTP प्रतिक्रिया भेजकर अनुरोध को अवरुद्ध कर देता है।200 OK प्रतिक्रिया के साथ संभाला जाता है।जबकि अन्य शमन रणनीतियाँ हेडर या विशिष्ट URL पथों पर ध्यान केंद्रित कर सकती हैं, इस विधि को इसकी मजबूती के लिए चुना गया था:
tomcatwar.jsp ) या कस्टम हेडर नाम जैसे नाजुक संकेतकों पर निर्भर नहीं है, जिन्हें हमलावर आसानी से बदल सकता है।फ़ायरवॉल चलाने के लिए, मुख्य स्क्रिप्ट firewall_server.py का उपयोग करें:
python firewall_server.py
सर्वर localhost:8000 पर शुरू होगा।
फिर आप प्रदान की गई स्क्रिप्ट Test_Requester.py का उपयोग करके दुर्भावनापूर्ण अनुरोधों का अनुकरण कर सकते हैं और सत्यापित कर सकते हैं कि उन्हें अवरुद्ध किया जा रहा है।
यह एक प्रूफ-ऑफ-कॉन्सेप्ट है और केवल शैक्षिक और प्रदर्शनात्मक उद्देश्यों के लिए है। यह उत्पादन-तैयार फ़ायरवॉल समाधान नहीं है।