CPU प्रोटेक्शन रिंग्स संरचनात्मक परतें हैं जो कंप्यूटर पर इंस्टॉल किए गए एप्लिकेशन और कोर प्रोसेस के बीच इंटरैक्शन को सीमित करती हैं। वे आमतौर पर आउटमोस्ट लेयर से होती हैं, जो रिंग 3 है, इनरमोस्ट लेयर तक, जो रिंग 0 है, जिसे कर्नेल भी कहा जाता है।
रिंग 0 सभी सिस्टम प्रोसेस के केंद्र में है। जो कोई भी कर्नेल को नियंत्रित कर सकता है, वह मूल रूप से कंप्यूटर के सभी पहलुओं को नियंत्रित कर सकता है। इस कोर के दुरुपयोग को रोकने के लिए, कंप्यूटर सिस्टम आर्किटेक्ट इस जोन में इंटरैक्शन को सीमित करते हैं। जैसे, कंप्यूटर यूजर द्वारा एक्सेस की जा सकने वाली अधिकांश प्रोसेस रिंग 3 तक सीमित हैं। तो प्रिविलेज रिंग्स कैसे काम करती हैं?
प्रिविलेज रिंग्स कैसे इंटरैक्ट करती हैं
रिंग 0 प्रोसेस सुपरवाइजर मोड में काम करती हैं और इसलिए उन्हें किसी यूजर इनपुट की आवश्यकता नहीं होती। उनके साथ हस्तक्षेप करने से बड़ी सिस्टम त्रुटियां और अनसुलझी सुरक्षा समस्याएं हो सकती हैं। यही कारण है कि उन्हें जानबूझकर कंप्यूटर यूजर्स के लिए दुर्गम बनाया गया है।
आइए विंडोज को एक उदाहरण के रूप में लें: रिंग 3 प्रोसेस द्वारा रिंग 0 तक पहुंच कुछ डेटा निर्देशों तक सीमित है। कर्नेल तक पहुंचने के लिए, रिंग 3 में एप्लिकेशन को एक कनेक्शन बनाना होगा जिसे वर्चुअलाइज्ड मेमोरी द्वारा संभाला जाता है। फिर भी, बहुत कम एप्लिकेशन को इसकी अनुमति होती है।
इनमें वे ब्राउज़र शामिल हैं जिन्हें नेटवर्क एक्सेस की आवश्यकता होती है और कैमरे जिन्हें नेटवर्क कनेक्शन बनाने की आवश्यकता होती है। इसके अतिरिक्त, इन डेटा कॉल को महत्वपूर्ण सिस्टम प्रोसेस के साथ सीधे हस्तक्षेप करने से रोकने के लिए इंसुलेट किया जाता है।
विंडोज के कुछ पुराने संस्करणों (जैसे विंडोज 95/98) में प्रिविलेज रिंग्स के बीच कम शील्डिंग थी। यह मुख्य कारणों में से एक है कि वे इतने अस्थिर और त्रुटियों के प्रति संवेदनशील क्यों थे। आधुनिक सिस्टम में, कर्नेल मेमोरी सुरक्षा विशेष हार्डवेयर चिप्स द्वारा मजबूत की जाती है।
इंट्रूजन के खिलाफ वर्तमान विंडोज कर्नेल मेमोरी प्रोटेक्शन
माइक्रोसॉफ्ट ने विंडोज 10 संस्करण 1803 से शुरू होने वाली कर्नेल मेमोरी के लिए दुर्जेय सुरक्षा पेश की।
सबसे उल्लेखनीय में कर्नेल DMA प्रोटेक्शन था; समग्र सुविधा को पर्सनल कंप्यूटर्स को डायरेक्ट मेमोरी एक्सेस (DMA) हमलों से बचाने के लिए डिज़ाइन किया गया था, विशेष रूप से PCI हॉट प्लग के माध्यम से लागू किए गए। प्रोटेक्शन कवरेज को बिल्ड 1903 में आंतरिक PCIe पोर्ट जैसे M.2 स्लॉट को कवर करने के लिए विस्तारित किया गया था।
माइक्रोसॉफ्ट द्वारा इन क्षेत्रों को अतिरिक्त सुरक्षा प्रदान करने का एक मुख्य कारण यह है कि PCI डिवाइस बॉक्स से बाहर DMA-सक्षम हैं। यह क्षमता उन्हें सिस्टम प्रोसेसर अनुमतियों की आवश्यकता के बिना सिस्टम मेमोरी को पढ़ने और लिखने की अनुमति देती है। यह गुण उन मुख्य कारणों में से एक है जिनकी वजह से PCI डिवाइस का प्रदर्शन उच्च होता है।
DMA प्रोटेक्शन प्रोसेस की बारीकियां
विंडोज अनधिकृत पेरिफेरल्स को DMA ऑपरेशन करने से रोकने के लिए इनपुट/आउटपुट मेमोरी मैनेजमेंट यूनिट (IOMMU) प्रोटोकॉल का उपयोग करता है। हालांकि, नियम के अपवाद हैं यदि उनके ड्राइवर DMA रीमैपिंग का उपयोग करके निष्पादित मेमोरी आइसोलेशन का समर्थन करते हैं।
कहा जा रहा है कि, अतिरिक्त अनुमतियों की अभी भी आवश्यकता है। आमतौर पर, OS एडमिनिस्ट्रेटर को DMA ऑथराइजेशन प्रदान करने के लिए प्रेरित किया जाएगा। असंगत DMA रीमैपिंग ड्राइवर्स को कैसे संभाला जाएगा, यह निर्धारित करने के लिए IT विशेषज्ञों द्वारा DmaGuard MDM पॉलिसी को और संशोधित और स्वचालित किया जा सकता है।
यह जांचने के लिए कि क्या आपके सिस्टम में कर्नेल DMA प्रोटेक्शन है, सिक्योरिटी सेंटर का उपयोग करें और मेमोरी एक्सेस प्रोटेक्शन के तहत कोर आइसोलेशन डिटेल्स में सेटिंग्स देखें। यह ध्यान रखना महत्वपूर्ण है कि केवल विंडोज 10 संस्करण 1803 के बाद जारी ऑपरेटिंग सिस्टम में यह सुविधा है।
CPU शायद ही कभी रिंग 1 और 2 प्रिविलेज पर भरोसा क्यों करते हैं
रिंग 1 और 2 मुख्य रूप से ड्राइवर्स और गेस्ट ऑपरेटिंग सिस्टम द्वारा उपयोग किए जाते हैं। इन प्रिविलेज लेवल में अधिकांश कोड को भी अर्ध-पुनर्निर्मित किया गया है। जैसे, अधिकांश समकालीन विंडोज प्रोग्राम ऐसे काम करते हैं जैसे सिस्टम में केवल दो लेवल हैं - कर्नेल और यूजर लेवल।
कहा जा रहा है कि, वर्चुअलाइजेशन एप्लिकेशन जैसे VirtualBox और वर्चुअल मशीन रिंग 1 का उपयोग करके काम करते हैं।
प्रिविलेज पर अंतिम शब्द
एकाधिक प्रिविलेज रिंग्स डिजाइन x86 सिस्टम आर्किटेक्चर के कारण अस्तित्व में आया। हालांकि, हर समय सभी रिंग प्रिविलेज लेवल का उपयोग करना असुविधाजनक है। इससे विलंबता और संगतता मुद्दे बढ़ेंगे।