प्रतिबन्धित शेल भनेको के हो र जम्पिङ शेल आक्रमण किन महत्त्वपूर्ण छ
प्रतिबन्धित शेलहरू प्रयोगकर्ताहरूले कुन आदेशहरू कार्यान्वयन गर्न सक्छन् भनेर नियन्त्रण गर्न प्रयोग गरिन्छ, प्रायः कार्यहरूलाई रोक्छ जस्तै cd, नयाँ शेलहरू सुरु गर्ने, वा वातावरण चरहरू निर्यात गर्ने। तिनीहरू सामान्यतया मा तैनाथ हुन्छन् CI/CD प्रयोगकर्ता व्यवहार सीमित गर्न एजेन्टहरू वा निर्माण वातावरणहरू। यद्यपि, आक्रमणकारीहरूले जम्पिङ शेल प्रदर्शन गर्ने तरिकाहरू खोज्छन्, जुन प्रतिबन्धित शेल वातावरणबाट भाग्न र असीमित शेलहरूमा पहुँच प्राप्त गर्न प्रयोग गरिने विधि हो। बिन/बाशभित्र पसेपछि it, आक्रमणकारीसँग पूर्ण कमाण्ड-लाइन नियन्त्रण हुन्छ, प्रतिबन्धित वातावरणका सबै सीमितताहरूलाई बाइपास गर्दै।
जम्पिङ शेलले कसरी काम गर्छ: प्रतिबन्धित देखि बिन/ब्यास सम्म
जम्पिङ शेलको लक्ष्य भनेको प्रतिबन्धित वातावरणमा कमजोरीहरूको शोषण गर्नु र शेल एस्केप ट्रिगर गर्नु हो जसले गर्दा बिन/बाशप्रतिबन्धित शेल आक्रमणबाट बच्नका लागि सामान्य तरिकाहरू समावेश छन्:
$ ls /bin/bash $ /bin/bashIf बिन/बाश पहुँचयोग्य छ भने, यो साधारण आह्वानले यसलाई पूरा गर्दछ।
अर्को सामान्य तरिका:
$ echo "/bin/bash" > run.sh $ sh run.sh आक्रमणकारीहरूले सम्पादकहरूको पनि शोषण गर्न सक्छन् जस्तै vi or थोरै:
vi :set shell=/bin/bash :shell यी विधिहरूले जम्पिङ शेलले कति सजिलै निम्त्याउन सक्छ भनेर देखाउँछ बिन/बाश कार्यान्वयन, प्रभावकारी रूपमा प्रतिबन्धित शेल सुरक्षाहरू बाइपास गर्दै।
DevOps मा यी आक्रमणहरूको वास्तविक जोखिमहरू
साझा गरिएको CI/CD वातावरणमा, प्रतिबन्धित शेलहरू निर्माणहरूलाई अलग गर्न र जोखिम कम गर्न प्रयोग गरिन्छ। तर जब आक्रमणकारी जम्पिङ शेलको साथ सफल हुन्छ र पुग्छ बिन/बाश, सुरक्षा मोडेल ध्वस्त हुन्छ।
जोखिमहरू समावेश छन्:
- वातावरणीय गोप्य कुराहरूमा अनधिकृत पहुँच
- असीमित मार्फत विशेषाधिकार वृद्धि बिन/बाश
- निर्माणमा हस्तक्षेप pipelineवा कलाकृतिहरू
- भित्र निरन्तर उपकरणहरूको तैनाती pipeline
एस्केपले शेललाई प्रतिबन्धित गर्यो बिन/बाश पूर्ण प्रणाली सम्झौताको ढोका खोल्छ, प्रायः फराकिलो क्षेत्रमा पहिलो चाल DevSecOps आक्रमण.
जम्पिङ शेल र बिन/ब्यास एस्केपको निगरानी र पत्ता लगाउने
जम्पिङ शेल व्यवहार पत्ता लगाउन र एस्केप-प्रतिबन्धित शेल प्रयासहरूलाई रोक्न, सुरक्षा टोलीहरूले निम्न कुराहरू गर्नुपर्छ:
- सबै शेल गतिविधिहरू लग गर्नुहोस्, विशेष गरी / बिन / bash निष्पादन
- शेल स्पोन भेक्टरको रूपमा सम्पादकको दुरुपयोग र स्क्रिप्ट प्रयोगको निगरानी गर्नुहोस्
- शेल कन्फिग फाइलहरूमा पहुँच ट्र्याक गर्नुहोस् जस्तै bashrc or .bash_profile
सुरुवात जस्ता व्यवहारिक ढाँचाहरू बिन/बाश प्रतिबन्धित वातावरणबाट आउने सतर्कतालाई उच्च प्राथमिकताका रूपमा लिनुपर्छ। यसलाई चाँडै पत्ता लगाउनाले गहिरो पार्श्व आन्दोलनलाई रोक्न सकिन्छ।
भाग्ने प्रतिबन्धित शेल आक्रमण र शोषणहरू रोक्ने
जम्पिङ शेल जोखिम कम गर्न र आक्रमणकारीहरूलाई प्रक्षेपण गर्नबाट रोक्नको लागि बिन/बाश:
- प्रतिबन्धित खोलहरूलाई कडा बनाउनुहोस्: हटाउनुहोस् वा रोक्नुहोस् पहुँच
- आदेश कार्यान्वयन प्रतिबन्ध गर्न AppArmor वा SELinux प्रयोग गर्नुहोस्
- सबैतिर न्यूनतम विशेषाधिकार लागू गर्नुहोस् CI/CD भूमिका र धावकहरू
- कन्टेनराइजमा डिस्ट्रोलेस छविहरू भएका निर्माणहरू छन् जसमा शेलहरू छैनन् जस्तै बिन/बाश
- विसंगतिहरू पत्ता लगाउन निर्माण अघि र पछिको वातावरण प्रमाणित गर्नुहोस्।
प्रतिबन्धित शेल परिदृश्यहरूबाट बच्नको लागि सीमित शेलहरूमा मात्र निर्भरता नभई तहबद्ध नियन्त्रणहरू आवश्यक पर्दछ। प्रतिबन्धित शेलहरू सुरक्षित छन् भनी नसोच्नुहोस् यदि बिन/बाश सम्भावित रूपमा पहुँचयोग्य पनि छ।
निष्कर्ष: शेल एस्केपहरू प्रवेश बिन्दुहरू हुन्
प्रतिबन्धित शेलहरू एक रक्षा तह हुन्, ग्यारेन्टी होइन। जम्पिङ शेल आक्रमणहरूले कमजोर अलगाव र कमजोर प्रमाणीकरणलाई लक्षित गर्छन्। एक पटक भित्र पसेपछि / बिन / bash, आक्रमणकारीहरूले DevSecOps पूर्वाधारलाई पिभोट गर्न, निरन्तरता दिन र सम्झौता गर्न सक्छन्।
पत्ता लगाउने र आइसोलेसन गर्नु आवश्यक छ। कमाण्ड लगिङ, प्रतिबन्धित वातावरण, र प्याकेज प्रबन्धकहरूको उचित सफाई संयोजन गर्नाले जोखिम कम हुन्छ।
अन्तमा, उपकरणहरू जस्तै जाइगेनी यी जोखिमहरूमा दृश्यता प्रदान गर्दछ। तिनीहरूले कोड अखण्डता लागू गर्न, असामान्य शेल व्यवहार पत्ता लगाउन, र आफ्नो सुरक्षित गर्नुहोस् pipelineआन्तरिक र बाह्य खतराहरूबाट, जसमा साधारण जम्पिङ शेलबाट सुरु हुनेहरू समावेश छन् / बिन / bash वा प्रतिबन्धित शेल वातावरणबाट भाग्ने प्रयासहरू।






