सिस्टम इंटीग्रिटी प्रोटेक्शन (एसआईपी) एक समग्र सुरक्षा नीति है, जिसके तहत सिस्टम फाइलों और प्रक्रियाओं को तीसरे पक्ष द्वारा संशोधित किए जाने से रोकना है। इसे प्राप्त करने के लिए, इसकी निम्नलिखित अवधारणाएँ हैं:
- फ़ाइल सिस्टम सुरक्षा
- कर्नेल विस्तार संरक्षण
- रनटाइम सुरक्षा
फ़ाइल सिस्टम सुरक्षा
SIP, कुछ निर्देशिकाओं में संग्रहीत निर्देशिकाओं और फ़ाइलों को जोड़ने, हटाने या संशोधित करने से Apple के अलावा अन्य पार्टियों को रोकता है:
/bin
/sbin
/usr
/System
Apple ने संकेत दिया है कि डेवलपर्स के लिए निम्नलिखित निर्देशिका उपलब्ध हैं:
/usr/local
/Applications
/Library
~/Library
/usr
सिवाय सभी निर्देशिका /usr/local
SIP द्वारा संरक्षित हैं।
इंस्टॉलर पैकेज के माध्यम से एसआईपी-संरक्षित फ़ाइलों और निर्देशिकाओं को जोड़ना, हटाना या बदलना संभव है जो कि एप्पल के स्वयं के प्रमाण पत्र प्राधिकरण द्वारा हस्ताक्षरित हैं। यह ऐप्पल को मौजूदा एसआईपी सुरक्षा को बदलने की आवश्यकता के बिना ओएस के एसआईपी-संरक्षित भागों में बदलाव करने की अनुमति देता है।
विचाराधीन प्रमाण पत्र प्राधिकारी Apple द्वारा अपने स्वयं के उपयोग के लिए आरक्षित है; डेवलपर आईडी-हस्ताक्षरित इंस्टॉलर पैकेज SIP- संरक्षित फ़ाइलों या निर्देशिकाओं को बदलने में सक्षम नहीं हैं।
यह निर्धारित करने के लिए कि कौन सी निर्देशिका संरक्षित है, Apple ने वर्तमान में फाइलसिस्टम पर दो विन्यास फाइल को परिभाषित किया है। नीचे दिए गए स्थान पर प्राथमिक एक पाया जाता है:
/System/Library/Sandbox/rootless.conf
जहां rootless.conf
सभी एप्लिकेशन और निर्देशिकाओं के शीर्ष-स्तर को सूचीबद्ध करता है जिसे SIP संरक्षित कर रहा है।
अनुप्रयोग
SIP उन मुख्य एप्स की सुरक्षा कर रहा है जो OS X एप्लीकेशन और एप्लिकेशन यूटिलिटीज में इंस्टॉल करता है। इसका मतलब यह है कि यह अब उन अनुप्रयोगों को हटाने के लिए संभव नहीं होगा जो ओएस एक्स इंस्टॉल करता है, यहां तक कि रूट विशेषाधिकारों का उपयोग करते समय कमांड लाइन से भी।
निर्देशिकाएँ
एसआईपी कई निर्देशिकाओं और सिम्बलिंक की सुरक्षा कर रहा है /Applications
और उन निर्देशिकाओं के शीर्ष स्तर को भी सूचीबद्ध किया गया है rootless.conf
।
सुरक्षा के अलावा, Apple ने रूटलेस.कॉन्फ़ फ़ाइल में SIP के संरक्षण के लिए कुछ अपवादों को भी परिभाषित किया है, और उन अपवादों को तारांकन चिह्न के साथ चिह्नित किया गया है। एसआईपी की सुरक्षा से इन छूटों का मतलब है कि उन स्थानों के भीतर फ़ाइलों और निर्देशिकाओं को जोड़ना, हटाना या बदलना संभव है।
उन अपवादों में निम्नलिखित हैं:
/System/Library/User Template
- जहाँ OS X नए खातों के लिए होम फोल्डर बनाते समय उपयोग की जाने वाली टेम्पलेट निर्देशिकाओं को संग्रहीत करता है।
/usr/libexec/cups
- जहां OS X प्रिंटर कॉन्फ़िगरेशन जानकारी संग्रहीत करता है
Apple इस फ़ाइल को अपना मानता है और यह कि किसी भी तीसरे पक्ष के परिवर्तन को Apple द्वारा अधिलेखित कर दिया जाएगा।
SIP द्वारा किन फ़ाइलों को संरक्षित किया गया है, यह देखने के लिए टर्मिनल में डैश कैपिटल O के साथ ls
कमांड का उपयोग करें :
ls -O
SIP- संरक्षित फ़ाइलों को प्रतिबंधित किया जाएगा ।
यह जानने के लिए एक महत्वपूर्ण विचार यह है कि भले ही एक सिपलिंक एसआईपी द्वारा संरक्षित है, लेकिन इसका मतलब यह नहीं है कि जिस निर्देशिका को वे लिंक कर रहे हैं वह एसआईपी द्वारा संरक्षित किया जा रहा है। OS X El Capitan बूट ड्राइव के रूट स्तर पर, कई SIP- रक्षित सिमिलिंक हैं जो रूट-लेवल डाइरेक्टरी नाम के अंदर निर्देशिकाओं को इंगित करते हैं private
।
हालाँकि, जब private
निर्देशिका की सामग्री की जांच की जाती है, तो जिन निर्देशिकाओं को इंगित किया जाता है, वे SIP द्वारा संरक्षित नहीं होती हैं और वे और उनकी सामग्री दोनों को रूट विशेषाधिकारों का उपयोग करके प्रक्रियाओं को स्थानांतरित, संपादित या परिवर्तित किया जा सकता है।
एसआईपी अपवादों की सूची के अलावा जो ऐप्पल ने निर्धारित किया है rootless.conf
, एसआईपी अपवादों की एक दूसरी सूची है। इस सूची में तीसरे पक्ष के उत्पादों के लिए कई निर्देशिका और आवेदन नाम शामिल हैं। इसी तरह rootless.conf
, यह बहिष्करण सूची Apple की है और किसी भी तीसरे पक्ष के परिवर्तन इसे Apple द्वारा अधिलेखित कर दिया जाएगा।
/System/Library/Sandbox/Compatibility.bundle/Contents/Resources/paths
रनटाइम सुरक्षा
एसआईपी की सुरक्षा प्रणाली को फाइलसिस्टम परिवर्तनों से बचाने के लिए सीमित नहीं है। सिस्टम कॉल भी हैं जो अब उनकी कार्यक्षमता में प्रतिबंधित हैं।
- task_for_pid () / processor_set_tasks () EPERM के साथ विफल
- मैक विशेष बंदरगाहों निष्पादन पर रीसेट कर रहे हैं (2)
- डाइल्ड पर्यावरण चर को अनदेखा किया जाता है
- DTrace जांच अनुपलब्ध है
हालाँकि, SIP अपने स्वयं के अनुप्रयोगों के विकासकर्ता द्वारा निरीक्षण को अवरुद्ध नहीं करते हैं जबकि वे विकसित किए जा रहे हैं। Xcode के उपकरण विकास प्रक्रिया के दौरान ऐप्स का निरीक्षण और डीबग करने की अनुमति देते रहेंगे।
इस बारे में अधिक जानकारी के लिए, मैं SIP के लिए Apple के डेवलपर प्रलेखन पर एक नज़र डालने की सलाह दूंगा ।
कर्नेल विस्तार संरक्षण
SIP अहस्ताक्षरित कर्नेल एक्सटेंशन की स्थापना को रोकता है। SIP सक्षम के साथ OS X El Capitan पर कर्नेल एक्सटेंशन स्थापित करने के लिए, कर्नेल एक्सटेंशन को होना चाहिए:
- साइनिंग केक्सस प्रमाण पत्र के लिए एक डेवलपर आईडी के साथ हस्ताक्षर किए जाएं
- / लाइब्रेरी / एक्सटेंशन में स्थापित करें
यदि कोई अहस्ताक्षरित कर्नेल एक्सटेंशन स्थापित कर रहा है, तो SIP को पहले अक्षम करना होगा।
SIP के प्रबंधन के बारे में अधिक जानकारी के लिए, कृपया नीचे दिए गए लिंक पर एक नज़र डालें:
सिस्टम इंटीग्रिटी प्रोटेक्शन - ऐप्पल के सुरक्षा मॉडल में एक और परत जोड़ रहा है
sudo
और पासवर्ड प्रॉम्प्टिंग ने सामान्य / पहले / अपेक्षित के रूप में काम किया है। तो, शायद जवाब है "ज्यादातर समय आप नोटिस नहीं करेंगे; जब आप करते हैं, तो आप कठिन नोटिस करेंगे।"