ACLs - DACLs/SACLs/ACEs

Trickest का उपयोग करें ताकि आप आसानी से दुनिया के सबसे उन्नत सामुदायिक उपकरणों द्वारा संचालित कार्यप्रवाहों का निर्माण और स्वचालित कर सकें। आज ही एक्सेस प्राप्त करें:

HackTricks का समर्थन करें

एक्सेस कंट्रोल लिस्ट (ACL)

एक एक्सेस कंट्रोल लिस्ट (ACL) एक्सेस कंट्रोल एंट्रीज़ (ACEs) का एक क्रमबद्ध सेट होती है जो एक ऑब्जेक्ट और इसकी विशेषताओं के लिए सुरक्षा निर्धारित करती है। मूल रूप से, एक ACL यह परिभाषित करती है कि कौन से कार्य किस सुरक्षा प्रिंसिपल (उपयोगकर्ता या समूह) द्वारा एक दिए गए ऑब्जेक्ट पर अनुमत या अस्वीकृत हैं।

ACLs के दो प्रकार होते हैं:

  • विवेकाधीन एक्सेस कंट्रोल लिस्ट (DACL): यह निर्दिष्ट करती है कि कौन से उपयोगकर्ता और समूह को एक ऑब्जेक्ट तक पहुंच है या नहीं।

  • सिस्टम एक्सेस कंट्रोल लिस्ट (SACL): यह एक ऑब्जेक्ट पर पहुंच के प्रयासों के ऑडिटिंग को नियंत्रित करती है।

एक फ़ाइल तक पहुंचने की प्रक्रिया में सिस्टम उपयोगकर्ता के एक्सेस टोकन के खिलाफ ऑब्जेक्ट के सुरक्षा विवरण की जांच करता है ताकि यह निर्धारित किया जा सके कि क्या पहुंच दी जानी चाहिए और उस पहुंच की सीमा, ACEs के आधार पर।

मुख्य घटक

  • DACL: इसमें ACEs होते हैं जो उपयोगकर्ताओं और समूहों को एक ऑब्जेक्ट के लिए एक्सेस अनुमतियों को प्रदान या अस्वीकृत करते हैं। यह मूल रूप से मुख्य ACL है जो एक्सेस अधिकारों को निर्धारित करती है।

  • SACL: इसका उपयोग ऑब्जेक्ट्स तक पहुंच के ऑडिटिंग के लिए किया जाता है, जहां ACEs सुरक्षा इवेंट लॉग में लॉग की जाने वाली पहुंच के प्रकारों को परिभाषित करते हैं। यह अनधिकृत पहुंच के प्रयासों का पता लगाने या पहुंच की समस्याओं को हल करने के लिए अमूल्य हो सकता है।

ACLs के साथ सिस्टम इंटरैक्शन

प्रत्येक उपयोगकर्ता सत्र एक एक्सेस टोकन से जुड़ा होता है जिसमें उस सत्र से संबंधित सुरक्षा जानकारी होती है, जिसमें उपयोगकर्ता, समूह पहचान और विशेषाधिकार शामिल होते हैं। इस टोकन में एक लॉगिन SID भी शामिल होता है जो सत्र की अद्वितीय पहचान करता है।

स्थानीय सुरक्षा प्राधिकरण (LSASS) ऑब्जेक्ट्स के लिए एक्सेस अनुरोधों को संसाधित करता है, DACL में ACEs की जांच करके जो उस सुरक्षा प्रिंसिपल से मेल खाते हैं जो पहुंच का प्रयास कर रहा है। यदि कोई प्रासंगिक ACE नहीं मिलती है, तो तुरंत एक्सेस दिया जाता है। अन्यथा, LSASS एक्सेस टोकन में सुरक्षा प्रिंसिपल के SID के खिलाफ ACEs की तुलना करता है ताकि एक्सेस पात्रता निर्धारित की जा सके।

संक्षिप्त प्रक्रिया

  • ACLs: DACLs के माध्यम से एक्सेस अनुमतियों को परिभाषित करती हैं और SACLs के माध्यम से ऑडिट नियम।

  • एक्सेस टोकन: एक सत्र के लिए उपयोगकर्ता, समूह और विशेषाधिकार जानकारी को शामिल करता है।

  • एक्सेस निर्णय: DACL ACEs की तुलना करके किया जाता है; SACLs का उपयोग ऑडिटिंग के लिए किया जाता है।

ACEs

एक्सेस कंट्रोल एंट्रीज़ (ACEs) के तीन मुख्य प्रकार होते हैं:

  • एक्सेस अस्वीकृत ACE: यह ACE निर्दिष्ट उपयोगकर्ताओं या समूहों के लिए एक ऑब्जेक्ट पर पहुंच को स्पष्ट रूप से अस्वीकृत करती है (DACL में)।

  • एक्सेस अनुमत ACE: यह ACE निर्दिष्ट उपयोगकर्ताओं या समूहों के लिए एक ऑब्जेक्ट पर पहुंच को स्पष्ट रूप से प्रदान करती है (DACL में)।

  • सिस्टम ऑडिट ACE: यह एक सिस्टम एक्सेस कंट्रोल लिस्ट (SACL) के भीतर स्थित है, यह ACE उपयोगकर्ताओं या समूहों द्वारा एक ऑब्जेक्ट पर पहुंच के प्रयासों पर ऑडिट लॉग उत्पन्न करने के लिए जिम्मेदार है। यह दस्तावेज करता है कि क्या पहुंच अनुमत थी या अस्वीकृत और पहुंच की प्रकृति।

प्रत्येक ACE में चार महत्वपूर्ण घटक होते हैं:

  1. उपयोगकर्ता या समूह का सुरक्षा पहचानकर्ता (SID) (या उनके प्रिंसिपल नाम का ग्राफिकल प्रतिनिधित्व)।

  2. एक झंडा जो ACE प्रकार की पहचान करता है (एक्सेस अस्वीकृत, अनुमत, या सिस्टम ऑडिट)।

  3. विरासत झंडे जो निर्धारित करते हैं कि क्या बाल ऑब्जेक्ट अपने माता-पिता से ACE विरासत में ले सकते हैं।

  4. एक एक्सेस मास्क, एक 32-बिट मान जो ऑब्जेक्ट के अनुमत अधिकारों को निर्दिष्ट करता है।

एक्सेस निर्धारण प्रत्येक ACE की क्रमबद्ध जांच करके किया जाता है जब तक:

  • एक एक्सेस-अस्वीकृत ACE स्पष्ट रूप से एक्सेस टोकन में पहचाने गए ट्रस्टी को अनुरोधित अधिकारों को अस्वीकृत नहीं करती।

  • एक्सेस-अनुमत ACE(s) स्पष्ट रूप से एक्सेस टोकन में ट्रस्टी को सभी अनुरोधित अधिकार प्रदान नहीं करती।

  • सभी ACEs की जांच करने पर, यदि कोई अनुरोधित अधिकार स्पष्ट रूप से अनुमत नहीं है, तो पहुंच स्वचालित रूप से अस्वीकृत होती है।

ACEs का क्रम

ACEs (नियम जो कहते हैं कि कौन कुछ तक पहुंच सकता है या नहीं) को DACL में सूचीबद्ध करने का तरीका बहुत महत्वपूर्ण है। इसका कारण यह है कि एक बार जब सिस्टम इन नियमों के आधार पर पहुंच देता है या अस्वीकृत करता है, तो यह बाकी को देखना बंद कर देता है।

इन ACEs को व्यवस्थित करने का एक सर्वोत्तम तरीका है, और इसे "कैनोनिकल ऑर्डर" कहा जाता है। यह विधि सुनिश्चित करती है कि सब कुछ सुचारू और निष्पक्ष रूप से काम करे। यह Windows 2000 और Windows Server 2003 जैसे सिस्टम के लिए इस प्रकार है:

  • पहले, सभी नियम जो विशेष रूप से इस आइटम के लिए बनाए गए हैं उन्हें उन नियमों से पहले रखें जो कहीं और से आते हैं, जैसे कि एक माता-पिता फ़ोल्डर।

  • उन विशेष नियमों में, "नहीं" (अस्वीकृत) कहने वाले नियमों को पहले रखें, फिर "हाँ" (अनुमत) कहने वाले नियमों को।

  • जो नियम कहीं और से आते हैं, उन्हें सबसे निकटतम स्रोत से शुरू करें, जैसे कि माता-पिता, और फिर पीछे की ओर जाएं। फिर से, "नहीं" को "हाँ" से पहले रखें।

यह सेटअप दो बड़े तरीकों से मदद करता है:

  • यह सुनिश्चित करता है कि यदि कोई विशेष "नहीं" है, तो इसे सम्मानित किया जाए, चाहे अन्य "हाँ" नियम कितने भी हों।

  • यह एक आइटम के मालिक को यह अंतिम निर्णय देने की अनुमति देता है कि कौन अंदर आता है, इससे पहले कि माता-पिता फ़ोल्डरों या आगे के नियम लागू हों।

इस तरह से करने पर, एक फ़ाइल या फ़ोल्डर के मालिक को यह सुनिश्चित करने में बहुत सटीकता मिलती है कि कौन पहुंच प्राप्त करता है, यह सुनिश्चित करते हुए कि सही लोग अंदर आ सकें और गलत लोग नहीं।

तो, यह "कैनोनिकल ऑर्डर" सभी एक्सेस नियमों को स्पष्ट और अच्छी तरह से काम करने के लिए सुनिश्चित करने के बारे में है, विशेष नियमों को पहले रखना और सब कुछ को एक स्मार्ट तरीके से व्यवस्थित करना।

Trickest का उपयोग करें ताकि आप आसानी से दुनिया के सबसे उन्नत सामुदायिक उपकरणों द्वारा संचालित कार्यप्रवाहों का निर्माण और स्वचालित कर सकें। आज ही एक्सेस प्राप्त करें:

GUI उदाहरण

यहां से उदाहरण

यह एक फ़ोल्डर का क्लासिक सुरक्षा टैब है जो ACL, DACL और ACEs को दिखाता है:

यदि हम उन्नत बटन पर क्लिक करते हैं, तो हमें विरासत जैसी अधिक विकल्प मिलेंगे:

और यदि आप एक सुरक्षा प्रिंसिपल जोड़ते या संपादित करते हैं:

और अंत में हमारे पास ऑडिटिंग टैब में SACL है:

सरल तरीके से एक्सेस कंट्रोल को समझाना

संसाधनों, जैसे कि एक फ़ोल्डर, तक पहुंच प्रबंधित करते समय, हम एक्सेस कंट्रोल लिस्ट (ACLs) और एक्सेस कंट्रोल एंट्रीज़ (ACEs) के रूप में जाने जाने वाले सूचियों और नियमों का उपयोग करते हैं। ये यह परिभाषित करते हैं कि कौन कुछ डेटा तक पहुंच सकता है या नहीं।

एक विशिष्ट समूह को एक्सेस अस्वीकृत करना

कल्पना करें कि आपके पास एक फ़ोल्डर है जिसका नाम Cost है, और आप चाहते हैं कि सभी लोग इसे एक्सेस कर सकें सिवाय एक मार्केटिंग टीम के। नियमों को सही तरीके से सेट करके, हम यह सुनिश्चित कर सकते हैं कि मार्केटिंग टीम को स्पष्ट रूप से एक्सेस अस्वीकृत किया गया है इससे पहले कि सभी को अनुमति दी जाए। यह मार्केटिंग टीम को एक्सेस अस्वीकृत करने वाले नियम को सभी को अनुमति देने वाले नियम से पहले रखकर किया जाता है।

एक अस्वीकृत समूह के एक विशिष्ट सदस्य को एक्सेस की अनुमति देना

मान लीजिए कि बॉब, मार्केटिंग निदेशक, को Cost फ़ोल्डर तक पहुंच की आवश्यकता है, भले ही मार्केटिंग टीम को सामान्यतः एक्सेस नहीं होना चाहिए। हम बॉब के लिए एक विशिष्ट नियम (ACE) जोड़ सकते हैं जो उसे एक्सेस प्रदान करता है, और इसे मार्केटिंग टीम को एक्सेस अस्वीकृत करने वाले नियम से पहले रख सकते हैं। इस तरह, बॉब को उसकी टीम पर सामान्य प्रतिबंध के बावजूद एक्सेस मिलता है।

एक्सेस कंट्रोल एंट्रीज़ को समझना

ACEs ACL में व्यक्तिगत नियम होते हैं। वे उपयोगकर्ताओं या समूहों की पहचान करते हैं, यह निर्दिष्ट करते हैं कि कौन सी एक्सेस अनुमत या अस्वीकृत है, और यह निर्धारित करते हैं कि ये नियम उप-आइटम (विरासत) पर कैसे लागू होते हैं। ACEs के दो मुख्य प्रकार होते हैं:

  • सामान्य ACEs: ये व्यापक रूप से लागू होते हैं, सभी प्रकार के ऑब्जेक्ट्स को प्रभावित करते हैं या केवल कंटेनरों (जैसे फ़ोल्डर) और गैर-कंटेनरों (जैसे फ़ाइलें) के बीच भेद करते हैं। उदाहरण के लिए, एक नियम जो उपयोगकर्ताओं को एक फ़ोल्डर की सामग्री देखने की अनुमति देता है लेकिन फ़ाइलों तक पहुंचने की अनुमति नहीं देता।

  • ऑब्जेक्ट-विशिष्ट ACEs: ये अधिक सटीक नियंत्रण प्रदान करते हैं, जिससे विशिष्ट प्रकार के ऑब्जेक्ट्स या यहां तक कि एक ऑब्जेक्ट के भीतर व्यक्तिगत विशेषताओं के लिए नियम सेट किए जा सकते हैं। उदाहरण के लिए, उपयोगकर्ताओं की एक निर्देशिका में, एक नियम एक उपयोगकर्ता को अपना फोन नंबर अपडेट करने की अनुमति दे सकता है लेकिन उनके लॉगिन घंटों को नहीं।

प्रत्येक ACE में महत्वपूर्ण जानकारी होती है जैसे कि नियम किस पर लागू होता है (सुरक्षा पहचानकर्ता या SID का उपयोग करके), नियम क्या अनुमति देता है या अस्वीकृत करता है (एक्सेस मास्क का उपयोग करके), और यह अन्य ऑब्जेक्ट्स द्वारा कैसे विरासत में लिया जाता है।

ACE प्रकारों के बीच मुख्य अंतर

  • सामान्य ACEs सरल एक्सेस नियंत्रण परिदृश्यों के लिए उपयुक्त होते हैं, जहां एक ही नियम ऑब्जेक्ट के सभी पहलुओं या एक कंटेनर के भीतर सभी ऑब्जेक्ट्स पर लागू होता है।

  • ऑब्जेक्ट-विशिष्ट ACEs अधिक जटिल परिदृश्यों के लिए उपयोग किए जाते हैं, विशेष रूप से ऐसे वातावरण में जैसे कि Active Directory, जहां आपको एक ऑब्जेक्ट की विशिष्ट विशेषताओं तक पहुंच को अलग-अलग नियंत्रित करने की आवश्यकता हो सकती है।

संक्षेप में, ACLs और ACEs सटीक एक्सेस नियंत्रण को परिभाषित करने में मदद करते हैं, यह सुनिश्चित करते हैं कि केवल सही व्यक्तियों या समूहों को संवेदनशील जानकारी या संसाधनों तक पहुंच प्राप्त हो, और एक्सेस अधिकारों को व्यक्तिगत विशेषताओं या ऑब्जेक्ट प्रकारों के स्तर तक अनुकूलित करने की क्षमता हो।

एक्सेस कंट्रोल एंट्री लेआउट

ACE फ़ील्डविवरण

प्रकार

झंडा जो ACE के प्रकार को इंगित करता है। Windows 2000 और Windows Server 2003 छह प्रकार के ACE का समर्थन करते हैं: तीन सामान्य ACE प्रकार जो सभी सुरक्षा योग्य ऑब्जेक्ट्स से जुड़े होते हैं। तीन ऑब्जेक्ट-विशिष्ट ACE प्रकार जो Active Directory ऑब्जेक्ट्स के लिए हो सकते हैं।

झंडे

विरासत और ऑडिटिंग को नियंत्रित करने वाले बिट झंडों का सेट।

आकार

ACE के लिए आवंटित मेमोरी के बाइट्स की संख्या।

एक्सेस मास्क

32-बिट मान जिसका बिट्स ऑब्जेक्ट के लिए एक्सेस अधिकारों से मेल खाते हैं। बिट्स को चालू या बंद किया जा सकता है, लेकिन सेटिंग का अर्थ ACE प्रकार पर निर्भर करता है। उदाहरण के लिए, यदि उस बिट को चालू किया गया है जो पढ़ने के अधिकार से मेल खाता है, और ACE प्रकार अस्वीकृत है, तो ACE ऑब्जेक्ट के अनुमतियों को पढ़ने के अधिकार को अस्वीकृत करता है। यदि वही बिट चालू है लेकिन ACE प्रकार अनुमत है, तो ACE ऑब्जेक्ट के अनुमतियों को पढ़ने का अधिकार प्रदान करता है। एक्सेस मास्क के अधिक विवरण अगले तालिका में दिखाई देते हैं।

SID

एक उपयोगकर्ता या समूह की पहचान करता है जिसका एक्सेस इस ACE द्वारा नियंत्रित या मॉनिटर किया जाता है।

एक्सेस मास्क लेआउट

बिट (रेंज)अर्थविवरण/उदाहरण

0 - 15

ऑब्जेक्ट विशिष्ट एक्सेस अधिकार

डेटा पढ़ें, निष्पादित करें, डेटा जोड़ें

16 - 22

मानक एक्सेस अधिकार

हटाएं, ACL लिखें, मालिक लिखें

23

सुरक्षा ACL तक पहुंच सकते हैं

24 - 27

आरक्षित

28

सामान्य सभी (पढ़ें, लिखें, निष्पादित करें)

सब कुछ नीचे

29

सामान्य निष्पादित करें

एक प्रोग्राम निष्पादित करने के लिए आवश्यक सभी चीजें

30

सामान्य लिखें

एक फ़ाइल में लिखने के लिए आवश्यक सभी चीजें

31

सामान्य पढ़ें

एक फ़ाइल को पढ़ने के लिए आवश्यक सभी चीजें

संदर्भ

HackTricks का समर्थन करें

Trickest का उपयोग करें ताकि आप आसानी से दुनिया के सबसे उन्नत सामुदायिक उपकरणों द्वारा संचालित कार्यप्रवाहों का निर्माण और स्वचालित कर सकें। आज ही एक्सेस प्राप्त करें:

Last updated