کنترل دسترسی (بخش اول)

کنترل دسترسی مکانیزمی جهت اطمینان از دسترسی انحصاری کاربر مجاز [۱] به اشیائ مختلف است. منظور از شیئ در سیستم عامل هرگونه برنامه، فایل، دایرکتوری و … می­باشد. همچنین کاربر در این تعریف عبارت است ازuser یا برنامه ای که (با استفاده از یک user مشخص) از یک شیئ استفاده می­کند.

 

 روشهای کنترل دسترسی:

۱٫       Discretionary Access Control [2] :

این روش در اغلب سیستم عاملها از جمله لینوکس به عنوان پیش فرض به کار می­رود. ایده آن مبتنی بر سه اصل است:

·         هویت[۳] کاربر

·         مالکیت[۴] یک شیئ

·         اجازه[۵] دسترسی داده شده به کاربر

سیستم دارای سه نوع کاربر است:

·         مالک: کاربری که مالک شیئ است.

·         گروه: مجموعه کاربران همگروه با مالک شیئ.

·         دیگران: مابقی کاربران که در دو دسته قبل قرار نمی­گیرند.

سه نوع اجازه در این روش مرسوم است، که توسط مالک شیئ به دیگران داده می­شود:

·         خواندن: خواندن فایل یا لیست کردن محتویات دایرکتوری

·         نوشتن: نوشتن در فایل یا اضافه کردن یک فایل به دایرکتوری

·         اجرا: اجرای یک فایل یا جستجو در یک دایرکتوری

بنا به پیش فرض دو سطح دسترسی در سیستم عامل وجود دارد: کاربر عادی و su [6] . اجازه مربوط به هر شیئ توسط مالک آن قابل تنظیم است، و su مالک کل سیستم بوده و می­تواند کلیه تنظیمات کاربر عادی را تغییر دهد. به عبارت دیگر، su دارای اجازه خواندن، نوشتن و اجرا روی کلیه فایلها، دایرکتوریها و برنامه هاست.

بنا بر این در این روش معیار تصمیم گیری سیستم عامل درباره حق دسترسی، بر اساس مالکیت ها می­باشد، و Role کاربر یا کاربرد برنامه مربوطه در آن دخیل نیست. بزرگترین نقطه ضعف این روش زیر سئوال رفتن امنیت کل سیستم در صورت از دست رفتن su است. این مساله در سیستم عاملهای حساس به خصوص در محصولات امنیتی بسیار حیاتی است، و لذا نباید امنیت کل سیستم را وابسته به su نمود.

از طرف دیگر هر برنامه کاربردی کلیه حقوق دسترسی کاربر اجراکننده خود را به ارث می­برد و این نقطه شروع بسیاری از حملات علیه سیستم است.  

 

۲٫       Mandatory Access Control [7] :

در سیستم عاملهای با حساسیت امنیتی بالا وجود بسیاری از حق دسترسی ها حتی برای su اصولا لزومی ندارد. این حقوق دسترسی تنها هنگام ساختن سیستم مورد نیاز است، و وقتی سیستم به مشتری تحویل شد، حتی کاربر su هم نباید به آنها دسترسی داشته باشد.

در این روش کلیه اجزای سیستم به دو دسته subject و object تقسیم می­شود. منظور از Subject کاربر یا برنامه ایست که می­خواهد به object ای دسترسی داشته باشد. وقتی مالک سیستم سیاست های مربوط به دسترسی به هر object را اعمال کرد، این سیاست ها غیر قابل تغییر خواهند بود، حتی su یا root هم قادر به تغییر آن نخواهد بود. یکی از نتایج این ایده از بین بردن تلویحی کاربر root است.



[۱] Authorized User

[۲] DAC

[۳] Identity

[۴] Ownership

[۵] Permission

[۶] Super user

[۷] MAC

اشتراک گذاری

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.