OpenShift - SCC bypass
इस पेज के मूल लेखक हैं Guillaume
विशेषाधिकारित नेमस्पेस
डिफ़ॉल्ट रूप से, SCC निम्नलिखित परियोजनाओं पर लागू नहीं होता है:
default
kube-system
kube-public
openshift-node
openshift-infra
openshift
यदि आप इनमें से किसी नेमस्पेस में पॉड डिप्लॉय करते हैं, तो कोई SCC प्रवर्तित नहीं किया जाएगा, जिससे विशेषाधिकृत पॉड डिप्लॉय किया जा सकता है या होस्ट फ़ाइल सिस्टम को माउंट किया जा सकता है।
नेमस्पेस लेबल
RedHat दस्तावेज़ के अनुसार, आपके पॉड पर SCC एप्लिकेशन को अक्षम करने का एक तरीका है। आपके पास निम्नलिखित अनुमति में से कम से कम एक होनी चाहिए:
एक नेमस्पेस बनाएं और इस नेमस्पेस पर एक पॉड बनाएं
एक नेमस्पेस संपादित करें और इस नेमस्पेस पर एक पॉड बनाएं
विशिष्ट लेबल openshift.io/run-level
उपयोगकर्ताओं को एप्लिकेशन्स के लिए SCCs को दायर करने की अनुमति देता है। RedHat दस्तावेज़ के अनुसार, जब इस लेबल का उपयोग किया जाता है, तो उस नेमस्पेस के सभी पॉड्स पर कोई SCC प्रवर्तित नहीं किया जाता है, जिससे किसी भी प्रतिबंध को हटा दिया जाता है।
लेबल जोड़ें
अपने नेमस्पेस में लेबल जोड़ने के लिए:
एक नेमस्पेस लेबल के साथ एक YAML फ़ाइल के माध्यम से बनाने के लिए:
अब, नेमस्पेस पर बनाए गए सभी नए पॉड्स के पास कोई भी SCC नहीं होना चाहिए
SCC की अनुपस्थिति में, आपके पॉड परिभाषण पर कोई प्रतिबंध नहीं होता। इसका मतलब है कि एक हानिकारक पॉड आसानी से होस्ट सिस्टम पर भाग निकल सकता है।
अब, यह उन्नतियों को उच्चाधिकार तक बढ़ाना आसान हो गया है ताकि मेज़बान सिस्टम तक पहुंचा जा सके और उसके बाद पूरे क्लस्टर को हासिल किया जा सके, 'क्लस्टर-व्यवस्थापक' अधिकार प्राप्त करते हुए। Node-Post Exploitation भाग के लिए निम्नलिखित पृष्ठ में देखें:
Attacking Kubernetes from inside a Podकस्टम लेबल
इसके अतिरिक्त, लक्षित सेटअप पर आधारित, कुछ कस्टम लेबल / एनोटेशन भी पिछले हमले के स्थिति के तरीके से उपयोग किए जा सकते हैं। यद्यपि यह उद्देश्य के लिए नहीं है, तो लेबल को अनुमतियाँ देने, प्रतिबंधित करने या किसी विशेष संसाधन को न करने के लिए उपयोग किया जा सकता है।
यदि आप कुछ संसाधन पढ़ सकते हैं तो कस्टम लेबल खोजने का प्रयास करें। यहाँ कुछ दिलचस्प संसाधनों की सूची है:
पॉड
डिप्लॉयमेंट
नेमस्पेस
सेवा
रूट
सभी विशेषाधिकार वाले नेमस्पेस की सूची
उन्नत उत्पीड़न
OpenShift में, जैसा पहले प्रदर्शित किया गया, openshift.io/run-level
लेबल वाले नेमस्पेस में पॉड डिप्लॉय करने की अनुमति होने से क्लस्टर का सीधा अधिकार लेना संभव है। क्लस्टर सेटिंग्स के दृष्टिकोण से, यह कार्यक्षमता अक्षम की जा सकती है, क्योंकि यह OpenShift के डिज़ाइन में निहित है।
हालांकि, Open Policy Agent GateKeeper जैसी सुरक्षा उपाय उपयोगकर्ताओं को इस लेबल को सेट करने से रोक सकती है।
GateKeeper के नियमों को अनदेखा करने और इस लेबल को सेट करने के लिए क्लस्टर अधिकार लेने के लिए, हमलावरों को वैकल्पिक तरीके की पहचान करनी होगी।
संदर्भ
Last updated