कंट्रोल-फ़्लो एन्फ़ोर्समेंट (CET)
CET भी कहा जाता है
CET, कंट्रोल-फ़्लो एन्फ़ोर्समेंट टेक्नोलॉजी, कंट्रोल फ़्लो की सुरक्षा के लिए हार्डवेयर तंत्र जोड़ती है, मुख्य रूप से शैडो स्टैक्स और इनडायरेक्ट ब्रांच ट्रैकिंग। हार्डवेयर समर्थन और किसी विशेष प्रोसेस में सक्रिय सुरक्षा अलग-अलग अवस्थाएँ हैं।
आपको क्या जानना चाहिए
CET, कंट्रोल-फ़्लो एन्फ़ोर्समेंट टेक्नोलॉजी, कंट्रोल फ़्लो की सुरक्षा के लिए हार्डवेयर तंत्र जोड़ती है, मुख्य रूप से शैडो स्टैक्स और इनडायरेक्ट ब्रांच ट्रैकिंग। हार्डवेयर समर्थन और किसी विशेष प्रोसेस में सक्रिय सुरक्षा अलग-अलग अवस्थाएँ हैं।
यह कैसे काम करता है
शैडो स्टैक्स सुरक्षित रिटर्न-एड्रेस स्टेट बनाए रखते हैं, जबकि इनडायरेक्ट ब्रांच ट्रैकिंग ट्रैक की गई अप्रत्यक्ष शाखाओं के गंतव्यों को सीमित करती है। वे विभिन्न कंट्रोल-फ़्लो ट्रांसफ़र्स को लक्षित करते हैं और उनका अलग-अलग एन्युमिरेशन और सक्षमता होती है। OS, लोडर, एप्लिकेशन बाइनरी और लाइब्रेरीज़ एक संरक्षित निष्पादन वातावरण को काम करने योग्य बनाने में भाग लेते हैं।
यह कहाँ उपयोगी है
एक उपयुक्त रूप से निर्मित एप्लिकेशन OS-प्रबंधित शैडो स्टैक के साथ चल सकता है ताकि एक बेमेल रिटर्न एड्रेस निष्पादन को चुपचाप पुनर्निर्देशित करने के बजाय परिभाषित अपवाद (एक्सेप्शन) को ट्रिगर करे। लेगेसी मॉड्यूल और यूज़र-मोड बनाम सुपरवाइज़र-मोड सुरक्षा के लिए संगतता नीति भिन्न हो सकती है।
सपोर्ट और सक्षमता की जांच कैसे करें
शैडो-स्टैक क्षमता के लिए CPUID.07H.00H:ECX बिट 7 और इनडायरेक्ट ब्रांच ट्रैकिंग के लिए EDX बिट 20 की जाँच करें, फिर OS की प्रलेखित प्रोसेस सुरक्षा स्थिति का निरीक्षण करें। केवल एक उपलब्ध CPU बिट एक चालू प्रोग्राम के लिए प्रवर्तन स्थापित नहीं कर सकता है।
क्षमता, सक्षमता और प्रवर्तन की अलग से जांच की जानी चाहिए। एक प्रोसेसर एक सुरक्षा का समर्थन कर सकता है जबकि OS, एप्लिकेशन या वर्चुअल-मशीन नीति इसे सक्रिय नहीं करती है। डेटाबेस समर्थन फ़ील्ड चल रहे सिस्टम का सत्यापन नहीं है।
यह सुविधा क्या स्थापित नहीं करती है
CET फ़ील्ड यह साबित नहीं करता कि दोनों उप-सुविधाएँ मौजूद हैं या सक्षम हैं। CET किसी बाइनरी को भरोसेमंद नहीं बनाता है, प्रत्येक मेमोरी करप्शन बग को रोकता नहीं है या अपडेट्स की जगह नहीं लेता है। किसी एप्लिकेशन क्रैश के लिए सुरक्षा को ग्लोबली अक्षम करना कोई नियमित समाधान नहीं है।
व्यवहार में अनुकूलता और प्रदर्शन
OS, फ़र्मवेयर और प्रभावित रनटाइम को अद्यतित रखें। यदि कोई सुरक्षा अनुकूलता समस्या को उजागर करती है, तो पहले विक्रेता डायग्नोस्टिक्स और समर्थित अपडेट का उपयोग करें। एक व्यापक सुरक्षा टॉगल असंबंधित अनुप्रयोगों को प्रभावित कर सकता है और इसे एक स्पष्ट परिनियोजन और पुनर्प्राप्ति नीति का पालन करना चाहिए।
एक व्यावहारिक सत्यापन चेकलिस्ट
- शामिल सटीक प्रोसेसर या प्लेटफ़ॉर्म मॉडल और एप्लिकेशन, OS और रनटाइम संस्करणों को रिकॉर्ड करें। वास्तविक त्रुटि या आवश्यकता के शब्दों को सुरक्षित रखें।
- उस सटीक मॉडल के लिए निर्माता संदर्भ की जांच करें, फिर उस परिवेश में प्रभावी क्षमता और सक्षम स्थिति का निरीक्षण करें जहां प्रोग्राम चलता है।
- चयनित बाइनरी या बैकएंड की प्रत्येक आवश्यकता की तुलना करें। समान नाम वाली सुविधा, उपनाम या व्यापक तकनीक लेबल पर्याप्त नहीं है।
- पुष्टि करें कि एप्लिकेशन ने इच्छित कार्यान्वयन का चयन किया है। आवश्यकताएं पूरी न होने पर इसके दस्तावेजीकृत डायग्नोस्टिक्स और समर्थित फ़ॉलबैक का उपयोग करें।
- एक समय में एक समर्थित परिवर्तन करें और वही कार्यभार दोहराएं। मूल कॉन्फ़िगरेशन और पुनर्प्राप्ति पथ उपलब्ध रखें।
यदि सुविधा सूचीबद्ध है लेकिन सॉफ़्टवेयर इसका उपयोग नहीं कर सकता है
सटीक रूप से विफल घटक से शुरुआत करें। हार्डवेयर डेटाबेस रिकॉर्ड की गई क्षमता का वर्णन करता है; ऑपरेटिंग सिस्टम या हाइपरवाइज़र एक अलग प्रभावी वातावरण प्रदर्शित कर सकता है। एक अवैध-निर्देश त्रुटि के लिए वास्तविक दोषपूर्ण निर्देश और बाइनरी बिल्ड की जांच की भी आवश्यकता होती है, क्योंकि भ्रष्टाचार या एक असंबंधित असमर्थित निर्देश एक समान लक्षण उत्पन्न कर सकता है।
सटीक प्लेटफ़ॉर्म के लिए समर्थित एप्लिकेशन, ड्राइवर या रनटाइम संस्करण इंस्टॉल करें, और यदि आवश्यक हो तो विक्रेता के दस्तावेजीकृत बेसलाइन या फ़ॉलबैक बिल्ड का उपयोग करें। एक सॉफ़्टवेयर अपडेट ऐसा निर्देश नहीं बना सकता जिसकी प्रोसेसर में कमी है। फ़र्मवेयर और सुरक्षा-नीति परिवर्तनों को सामान्य अनुकूलन नुस्खे के बजाय सिस्टम निर्माता की प्रक्रिया और पुनर्प्राप्ति योजना का पालन करना चाहिए।
इस व्याख्या के स्रोत और दायरा
Intel 64 and IA-32 Architectures Software Developer's Manual · Linux कर्नेल: कंट्रोल-फ़्लो एन्फ़ोर्समेंट टेक्नोलॉजी शैडो स्टैक
ये संदर्भ आर्किटेक्चरल व्यवहार और सॉफ़्टवेयर आवश्यकताओं को स्थापित करते हैं। वे किसी लिंक्ड हार्डवेयर मॉडल पेज पर प्रत्येक सुविधा मान को स्वतंत्र रूप से सत्यापित नहीं करते हैं। मॉडल समर्थन के लिए, उस पेज के निर्माता साक्ष्य का उपयोग करें और प्रभावी सिस्टम कॉन्फ़िगरेशन की जांच करें। यह आलेख कोई बेंचमार्क, प्रमाणन या स्वतंत्र समीक्षा तिथि प्रदान नहीं करता है।
स्रोत और सत्यापन
संपादकीय स्वामित्व: Feex। कोई स्वतंत्र समीक्षा तिथि दर्ज नहीं है। हम कैसे शोध करते हैं.
- Intel 64 and IA-32 Architectures Software Developer's Manual · खंड 1 और 2 नामित निर्देश परिवारों और CPUID का वर्णन करते हैं; खंड 3 स्टेट, पेजिंग, VMX और सुरक्षा नियंत्रणों का वर्णन करता है। आर्किटेक्चर दस्तावेज़ किसी विशेष मॉडल के लिए समर्थन स्थापित नहीं करता है।
- Linux कर्नेल: कंट्रोल-फ़्लो एन्फ़ोर्समेंट टेक्नोलॉजी शैडो स्टैक · हार्डवेयर समर्थन, बाइनरी मार्कर्स, लोडर सक्षमता और सक्रिय प्रति-थ्रेड सुरक्षा में अंतर करता है। IBT और शैडो स्टैक्स को अलग-अलग सुविधाओं के रूप में वर्णित करता है।
क्या यह लेख उपयोगी था?
हाँ या ना ही काफी है। यदि आप चाहें तो कोई कारण चुनें, या एक संक्षिप्त नोट जोड़ें।
धन्यवाद। इससे हमें इस पृष्ठ को बेहतर बनाने में मदद मिलती है।