Chromium मधील 70% सुरक्षा समस्या मेमरी त्रुटींमुळे होतात

Chromium प्रकल्पाचे विकसक विश्लेषण केले 912 पासून क्रोमच्या स्थिर रिलीझमध्ये 2015 उच्च-जोखीम आणि गंभीर असुरक्षा ओळखल्या गेल्या आणि निष्कर्ष काढला की त्यापैकी 70% मेमरी असुरक्षिततेमुळे होते (C/C++ कोडमधील पॉइंटरसह काम करताना त्रुटी). यांपैकी अर्ध्या समस्या (36.1%) बफरशी संबंधित मेमरी मुक्त केल्यानंतर (वापर-नंतर-मुक्त) झाल्यामुळे होतात.

Chromium मधील 70% सुरक्षा समस्या मेमरी त्रुटींमुळे होतात

क्रोमियम डिझाइन करताना ते सुरुवातीला होते खाली ठेवले, कोडमध्ये त्रुटी दिसणे शक्य आहे, म्हणून असुरक्षिततेचे परिणाम मर्यादित करण्यासाठी सँडबॉक्स अलगावच्या वापरावर मोठा भर देण्यात आला. सध्या, या तंत्रज्ञानाचा वापर करण्याच्या शक्यता त्यांच्या क्षमतेच्या मर्यादेपर्यंत पोहोचल्या आहेत आणि संसाधनांच्या वापराच्या दृष्टिकोनातून प्रक्रियांमध्ये पुढील विखंडन अव्यवहार्य आहे.

कोडबेसची सुरक्षा राखण्यासाठी, Google देखील लागू करते "दोनचा नियम", त्यानुसार कोणत्याही जोडलेल्या कोडने तीनपैकी दोनपेक्षा जास्त अटी पूर्ण केल्या पाहिजेत: अप्रमाणित इनपुट डेटासह कार्य करणे, असुरक्षित प्रोग्रामिंग भाषा (C/C++) वापरणे आणि उन्नत विशेषाधिकारांसह चालणे. हा नियम सूचित करतो की बाह्य डेटावर प्रक्रिया करण्यासाठी कोड एकतर कमीत कमी विशेषाधिकार (वेगळे) किंवा सुरक्षित प्रोग्रामिंग भाषेत लिहिला गेला पाहिजे.

कोड बेसची सुरक्षितता आणखी वाढवण्यासाठी, कोड बेसमध्ये मेमरी एरर दिसू नये म्हणून एक प्रोजेक्ट सुरू करण्यात आला आहे. तीन मुख्य पध्दती आहेत: मेमरीच्या सुरक्षित ऑपरेशनसाठी फंक्शन्ससह C++ लायब्ररी तयार करणे आणि हार्डवेअर संरक्षण यंत्रणा वापरून कचरा गोळा करणाऱ्याची व्याप्ती वाढवणे. एमटीई (मेमरी टॅगिंग विस्तार) आणि भाषांमध्ये लेखन घटक जे मेमरीसह सुरक्षित कार्य सुनिश्चित करतात (जावा, कोटलिन, जावास्क्रिप्ट, रस्ट, स्विफ्ट).

हे अपेक्षित आहे की काम दोन क्षेत्रांवर केंद्रित केले जाईल:

  • C++ विकास प्रक्रियेत महत्त्वपूर्ण बदल, जे कार्यक्षमतेवर नकारात्मक प्रभाव टाकत नाही (अतिरिक्त सीमा तपासणी आणि कचरा संकलन). रॉ पॉइंटर्सऐवजी, प्रकार वापरण्याचा प्रस्ताव आहे MiraclePtr, जे तुम्हाला कार्यक्षमतेवर, स्मरणशक्तीचा वापर आणि स्थिरतेवर लक्षणीय नकारात्मक परिणाम न करता, सुरक्षिततेला धोका नसलेल्या क्रॅशमध्ये शोषणयोग्य वापर-नंतर-मुक्त त्रुटी कमी करण्यास अनुमती देते.
  • संकलित वेळी मेमरी सुरक्षा तपासणी करण्यासाठी डिझाइन केलेल्या भाषांचा वापर (कोड अंमलबजावणी दरम्यान अशा तपासण्यांमध्ये अंतर्निहित कार्यप्रदर्शनावरील नकारात्मक प्रभाव दूर करेल, परंतु कोडसह नवीन भाषेत कोडचा परस्परसंवाद आयोजित करण्यासाठी अतिरिक्त खर्च येईल. C++).

मेमरी-सुरक्षित लायब्ररी वापरणे हा सर्वात सोपा, परंतु कमी कार्यक्षम मार्ग आहे. रस्टमध्ये पुनर्लेखन कोड सर्वात प्रभावी, परंतु खूप महाग मार्ग म्हणून रेट केला जातो.

Chromium मधील 70% सुरक्षा समस्या मेमरी त्रुटींमुळे होतात

स्त्रोत: opennet.ru

एक टिप्पणी जोडा