بخشی از مقاله
چکیده — امنیت در دنیاي امروز یکی از چالش هاي مهم است که مردم در سراسر جهان با آن روبرو هستند. پایگاه داده مجموعه گسترده از داده است که به جمع آوري، بازیابی، سازماندهی و مدیریت داده ها، به صورت کارآمد و موثر کمک می کند. امنیت، حریم شخصی، درستی داده ها در هر عملیات در اینترنت مورد نیاز است. امنیت باید دسترسی حفاظت شده به محتویات پایگاه داده را فراهم کند. امروزه بسیاري از سازمان ها به مشتریان خود براي استفاده از خدمات مثل بانکداري اینترنتی، خرید آنلاین و ... با دسترسی به پایگاه داده را اجازه می دهند، که این امر منجر به نیاز امنیت بالا براي مقابله با مهاجمان است. در این مقاله امنیت دسترسی هاي مختلف
.1 مقدمه
اطلاعات دارایی با ارزش یک سازمان است و امنیت آن یک چالش بزرگ است. اطلاعات حساس وب سرورهاي سازمان هاي دولتی و غیر دولتی و خصوصی نیا ز به محافظت از مهاجمان را دارند.[1,11] امنیت پایگ اه داده، حفاظت از داده ها در مقابل دسترسی و استفاده غیر مجاز، افشاگري و تغییر است. گسترش استفاده از سایت هاي اینترنتی و برنامه هاي کاربردي، باعث افزایش توجه به امنیت پایگاه داده شده است. خواص امنیت پایگاه داده عبارتند از محرمانه بودن، یکپارچگی، اعتبار و در دسترس بودن است. حفاظت از داده ها و محرمانه بودن یکی از کارهاي امنیتی است. براي محافظت از داده هاي موجود از دسترسی هاي افراد غیرمجاز، محرمانه بودن محدودیت از قبل تعریف شده بر روي داده ها و یا سیستم ها است .[2,3] حفاظت از داده ها توسط اجزاي مختلف سیستم مدیریت پایگاه داده تضمین شده است. مکانیزم کنترل دسترسی تضمین محرمانه بودن داده ها در هر زمان براي دسترسی به یک شیء داده یا فرد بر اساس قوانین دسترسی، بررسی درستی و صحت داده ها و حفظ ثبات داده هاي داخلی و خارجی است .[11] چهار اصل اساسی در امنیت پایگاه داده، ایجاد زیربناي محکم بر مبناي کنترل دسترسی و احراز هویت و مجوزها، طبقه بندي اطلاعات از نظر امنیتی، کنترل هاي پیشگیرانه مثل رمزنگاري و مدیریت تغییرات، پیاده سازي زیرساخت تشخیص نفوذ با استفاده از نظارت و ارزیابی امنیتی می باشد که در ادامه به بررسی آن ها می پرداریم.
.2 حملات و خطرات امنیتی پایگاه داده
وقتی کاربران با حق دسترسی، اجازه انجام کارهایی که شامل کارهاي خود نمی شوند را دارند، سوء استفاده از امتیازات ممکن می شود .[3,4] مهاجمان سه دسته هستند: مزاحم، کسی که تلاش براي دسترسی به سیستم و خارج کردن اطلاعات را می کند. کاربر خودي، کسی که جزء کاربران مورد اعتماد است و تلاش براي دسترسی به داده ها فراتر از دسترسی خود را دارد. مدیر، کسی که امتیازات مدیر یک سیستم را دارد و با استفاده از حق دسترسی اطلاعات را استخراج می کند. حملات غیرفعال: یک پایگاه داده امن نباید هرگونه اطلاعات درباره مقادیر متنی پایگاه داده براي کاربران غیرمجاز آشکار سازد . نشت ارتباطی: اطلاعاتی در مورد ارزش متن پایگاه داده از طریق ارتباط یک مقدار به موقعیت خود در فهرست بدست آورد.
نشت پویا: اطلاعاتی در مورد ارزش متن پایگاه داده با مشاهده و تجزیه و تحلیل الگوهاي دسترسی و تغییرات در یک دوره از زمان پایگاه داده را بدست آورد.
حملات فعال- تغییر غیرمجاز: حملهspooping جایگزینی یک مقدار متن رمز شده با ارزش تولید شده با فرض این که کلیدهاي رمزنگاري در خطر نیستند و این حمله به ندرت کاربردي است.
حمله splicing ، جایگزینی یک مقدار متن رمز شده با ارزش متن رمز شده متفاوت است که محتواي رمزنگاري شده از محل هاي مختلف به یک مکان جدید کپی می شوند.
حمله replay، جایگزینی یک مقدار متن رمز شده با یک نسخه قدیمی که قبلا بروز یا حذف شده است.[4,11,13]
.3 ملزومات امنیتی
امنیت پایگاه داده جدا از سایر اجزاي سیستم نیست. ملزومات امنیتی سیستم با سیاست هاي امنیتی توسط مکانیزم هاي مختلف مشخص شده است، که به سه دسته تقسیم بندي می شوند.
- شناسایی کاربر، احراز هویت
براي اطمینان از دسترسی کاربران، مکانیزم کاملی از دسترسی را فراهم می کند. کاربر باید قبل از دسترسی به یک پایگاه داده براي سیستم کامپیوتري هویت خود را مشخص کند، جهت بررسی هویت کاربر در زمان ورود به سیستم لازم است . بیشتر روش هاي تصدیق هویت پسوردها هستند و روش هاي پیشرفته مثل دستگاه هاي تحلیل امضاء هستند.
- مجوز، کنترل دسترسی
مجوز مجموعه قوانین تعیین شده است که نوع دسترسی به اطلاعات را مشخص می کند. سیاست هاي مجوز، افشاء و اصلاح اطلاعات را کنترل می کند. کنترل دسترسی شامل روش هاي طراحی شده براي کنترل تایید مجوز است که مسئول محدود کردن دسترسی به داده هاي ذخیره شده براي کاربران مجاز است.
- تمامیت، انسجام
مجموعه اي از قوانین است که حالت هاي صحیح از پایگاه داده در طول عملیات را تعیین می کند و در برابر تغییر مخرب یا تصادفی می تواند از داده ها محافظت کند. سیاست هاي کنترل از تراکنش هاي همزمان محافظت می کند. اگر تراکنش ها به اتمام نرسند به طور معمول تکنیک هاي بهبود نقص امنیتی براي بازسازي صحیح یا حالت هاي معتبر پایگاه داده بکار برده می شود.
- حسابرسی
حسابرسی براي تمامیت داده هاي مطمئن که نیازمند دسترسی و مدیریت پایگاه داده از طریق حسابرسی و نگهداري سوابق هستند، تعریف شده است. همچنین در تجزیه و تحلیل اطلاعات روي سرورها براي احراز هویت، حسابرسی و دسترسی کاربر کمک می کند. در بخش بعدي انواع کنترل براي حفاظت پایگاه داده مورد بررسی قرار می گیرد .[1,3]
.4 ملزومات امنیتی براي حفاظت پایگاه داده
براي از بین بردن تهدیدات امنیتی هر سازمان باید یک سیاست امنیتی مشخص شود. یک سیاست امنیتی باید حاوي ویژگی هاي امنیتی مشخص شده باشد . چهار نوع کنترل براي حفاظت از پایگاه داده وجود دارد که شامل، کنترل دسترسی، کنترل جریان، رمزنگاري و کنترل استنتاج است.
1,4 کنترل استنتاج
کنترل استنتاج براي محافظت داده ها در سطح خاص است. زمانی که تفسیر داده خاص در قالب آزمایش یا واقعیت، از یک سطح امنیتی بالاتر محافظت می شود.
2,4 رمزنگاري
رمزنگاري فرآیند مخفی یا تبدیل اطلاعات با یک رمز یا کد براي همه افراد است بجز کسانی که تنها کلید داده ها را نگهداري می کنند.
3,4 کنترل جریان
تنظیم جریان داده بین جریان هاي داده و اشیاء در دسترس، از پایگاه داده است.
4,4 کنترل دسترسی
کنترل دسترسی تضمین می کند که همه ارتباطات با پایگاه داده ها و دیگر اشیاء سیستم، با توجه به سیاست ها و کنترل ها مشخص شده است و در به حداقل رساندن خطرات امنیت پایگاه داده روي سرورهاي اصلی تاثیر مستقیم می گذارد. چارچوب کنترل دسترسی به داده ها ي پایگاه داده سیستم شامل تصدیق و مجوز براي دسترسی کاربران است. براي جلوگیري از افشاي داده ها، اجراي سیاست هاي کنترل دسترسی تعریف شده روي سیستم مدیریت پایگاه داده یک روش عمومی است.[1,2,11]
در ادامه انواع کنترل دسترسی مورد بررسی قرار می گیرد.
- کنترل دسترسی اختیاري - DAC - 1
کنترل دسترسی اختیاري بر این اساس است که منبع هر شی یک لیست کنترل دسترسی مرتبط با شی دارد. کاربر خودش مسئول تنظیم دسترسی شی است. کنترل دسترسی اختیاري در مقابل حملات مخرب آسیب پذیر است مثل اسب هاي تروجان تعبیه شده در برنامه هاي عادي .[5,9]
- کنترل دسترسی اجباري - MAC - 2
کنترل دسترسی اجباري یکی از دقیق ترین واحدهاي کنترل دسترسی است و عمدتا توسط دولت براي حفاظت از داده ها استفاده می شود. با توجه به طبقه بندي امنیتی به شیء، کنترل دسترسی اختصاص داده می شود. سیاست هاي کنترل دسترسی براي هر سیستم تعریف شده و براي موضوع خ اص نمی توان تغییر داد. سطوح امنیتی شامل خیلی محرمانه، محرمانه، عمومی و تعریف نشده است.
- کنترل دسترسی مبتنی بر نقش - RBAC - 3
امتیازات با ﺳﺎزﻣﺎﻧﺪﻫﯽ تعیین نقش مناسب براي کاربران، اختصاص داده می شود. ساختار دسترسی ب ه صورت سلسله مراتبی است. دسترسی ها در سطح بالاتر به مدیران داده می شود و مدیران به مدیران پایین تر خود دسترسی را می دهند .[2,3,9]
- کنترل دسترسی مبتنی بر متن - CBAC - 4
یکی از ویژگی هاي نرم افزار فایروال که فیلترTCPوUDP بر اساس اطلاعات پروتکل جلسه لایه کاربردي است، براي شبکه هاي داخلی، اکسترانت و اینترنت استفاده می شود. کنترل دسترسی مبتنی بر متن، براي تعیین ﻣﺠﻮز TCPو ترافیک UDP از طریق یک فایروال وقتی که اتصال از درون شبکه نیاز به حفاظت دارد می تواند پیکربندي شود. بعبارت دیگر می تواند ترافیک را براي جلساتی که از شبکه خارجی سرچشمه می گیرد بازرسی کند .[6]
- کنترل دسترسی بر اساس ویژگی - ABAC - 5
کنترل دسترسی مبتنی بر ویژگی تعریف یک الگوي کنترل دسترسی است که حقوق دسترسی کاربران از طریق استفاده از سیاست هایی که ویژگی ها - صفات کاربر ان، ویژگی منابع و اشیاء و محیط زیست و غیره - با هم ترکیب می شوند اعطا می شود. براي مثال اگر درخواست کننده مدیر است، پس اجازه دسترسی خواندن/ نوشتن داده هاي حساس داده می شود. کنترل دسترسی مبتنی بر ویژگی مفهوم سیاست هایی است که مجموعه قوانین بولی پیچیده را بیان می کند که بسیاري از ویژگی هاي مختلف را ارزیابی می کند. کنترل دسترسی مبتنی بر ویژگی گاهی اوقات بعنوان کنترل دسترسی مبتنی بر سیاست - ABAC - یا کنترل دسترسی مبتنی بر دعوي - CBAC - اشاره شده است که یک دوره خاص مایکروسافت است .[7]
- کنترل دسترسی مبتنی بر گراف - GBAC - 6
کنترل دسترسی مبتنی بر گراف یک راه براي تعریف حقوق دسترسی، تکالیف وظایف، دریافت کنندگان و محتوا در سیستم هاي اطلاعاتی است. حقوق دسترسی به اشیاء مانند فایل ها یا اسناد مفروض هستند اما اشیاء کسب و کار مانند یک حساب کاربري اعطا می شود. سازمان ها شامل واحدهاي سازمانی، نقش ها و توابع و عوامل انسانی بعنوان یک نمودار معنایی اتوماتیک مدلسازي می شوند. کنترل دسترسی مبتنی بر گراف از دو قسمت، مدلسازي نمودار معنایی یک سازمان و زبان پرس و جو تشکیل شده است.
- کنترل دسترسی مبتنی بر شبکه - LBAC - 7
در امنیت کامپیوتر، کنترل دسترسی مبتنی بر شبکه یک مدل پیچیده بر اساس تعامل بین ترکیبی از اشیاء - مانند منابع، کامپیوترها، برنامه هاي کاربردي - و موضوعات - مانند افراد، گروه ها، سازمان ها - است. در این مدل اجبارا ﯾﮏ شبکه براي تعریف سطوح امنیتی یک شیء استفاده می شود که یک موضوع می تواند به آن دسترسی داشته باشد. موضوع تنها مجاز به دسترسی به یک شیء است اگر سطح امنیتی موضوع بزرگتر یا مساوي سطح امنیتی شی باشد .[8]
- کنترل دسترسی مبتنی بر سازمان - OrBAC - 8
کنترل دسترسی مبتنی بر سازمان اولین مدل کنترل دسترسی در امنیت کامپیوتر معرفی شد. روش هاي کنترل دسترسی فعلی روي سه موجودیت - موضوع، عمل، شی - ، سیاست برخی موضوعات که مجوز براي انجام برخی اعمال روي اشیاء را دارند، براي کنترل دسترسی مشخص می کند.کنترل دسترسی مبتنی بر سازمان اجازه می دهد طراح، یک سیاست امنیتی مستقل از پیاده سازي را تعریف کند. روش انتخابی براي معرفی یک سطح انتزاعی است. هر سیاست امنیتی براي یک سازمان تعریف شده است. این مدل، به مجوزها محدود نمی شود بلکه شامل احتمال براي تعیین ممنوعیت ها و تعهدات است. از سه موجودیت انتزاعی - نقش ها، فعالیت ها، دید - امتیازات انتزاعی تعریف می شود و از امتیازات انتزاعی، امتیازات واقعی بدست می آید. این مدل کنترل دسترسی داراي مفاهیم سلسله مراتبی - سازمان، نقش، فعالیت، دید، زمینه - و محدودیت هاي تفکیک است .[9]
- کنترل دسترسی مبتنی بر مجموعه قانون - RSBAC - 9
کنترل دسترسی مبتنی بر مجموعه قانون یک چارچوب کنترل دسترسی منبع باز براي هسته هاي لینوکس فعلی است که معرف تولید پایدار است. امکانات شامل، منبع باز رایگان هسته لینوکس یک افزونه امنیتی است که مستقل از دولت ها و سازمان ها است. براحتی به س یستم عامل هاي دیگر قابل حمل است و پشتیبانی از آخرین