امنیت پایگاه داده فرآیند حفاظت از داده های سازمان در برابر دسترسی و استفاده غیر مجاز، افشاگری، تخریب و یا تغییر می باشد. امینت پایگاه های داده و به طبع امنیت داده های سازمان در واقع اصلی ترین چالش مدیران عامل و مسئولان IT سازمان می باشد.
امروزه گسترش استفاده از سیستم های کامپیوتری، سایت های اینترنتی و برنامه های کاربردی موجب گردیده که مباحث مربوط به امنیت پایگاه داده دارای اهمیت بسیار بالایی باشد و در نتیجه با توجه به نقش اطلاعات به عنوان کالای با ارزش در تجارت امروز، لزوم حفاظت صحیح از آن ضروری تر به نظر می رسد.
حال به عنوان یک مدیرعامل، مدیر فناوری اطلاعات و یا راهبر پایگاه داده باید از خود بپرسیم:
از آنجایی که مسائل امنیتی اغلب به سادگی دیگر بخشهای فن آوری اطلاعات، توجیه اقتصادی محسوسی ندارند، بنابراین این امر در بسیاری از موارد ( به طور گسترده در کشور ما) مورد توجه مدیران ارشد سازمان قرار گرفته نمی شود.
مفاهیم اصلی امنیت اطلاعات
به طور کلی، امنیت پایگاه داده سه مفهوم کلیدی را در بر میگیرد که در ادامه به آنها پرداخته میشود:
محرمانگی (Confidentially)
«حفظ محرمانگی اطلاعات» به عنوان اولین معیار در نظر گرفته میشود. امکان ایجاد محرمانگی از طریق رمزنگاری دادههای ذخیره شده در پایگاه داده امکانپذیر است.
رمزنگاری یک روش یا فرآیندی است که در آن دادهها کدگذاری میشوند. این کدگذاری به گونهای انجام میشود که تنها کاربران مجاز امکان خواندن دادهها را داشته باشند.
تمامیت از طریق تنظیمات مربوط به کنترلهای دسترسی کاربری (UAC) اعمال میشود.
با استفاده از این مفهوم، به هر کاربر دسترسی به پایگاه داده تا سطح مورد نیاز داده خواهد شد. به عنوان مثال، ممکن است به یک کارمند اجازه دیدن رکوردها و تغییر بخشهایی از اطلاعات، مثل جزییات شماره تماس داده شود، اما کارمند بخش منابع انسانی دسترسیهای بیشتری داشته باشد. برای اطمینان از تمامیت پایگاه داده روشهایی وجود دارند که در ادامه به آن پرداخته میشود:
در یک سیستم کارآمد، نباید پایگاه داده از کارافتادگی بازهای داشته و نرخ دسترس پذیری (Availability) آن باید قابل قبول باشد.
در واقع، برای جلوگیری از رخداد برنامهریزی نشده چنین اتفاقهایی، میتوان از اقدامات مختلفی استفاده کرد که در ادامه فهرست شدهاند:
تهدیدات احتمالی
خطرات احتمالی مختلفی برای امنیت پایگاه داده وجود دارند که ما در این جا به چند مورد از مهم ترین آن ها اشاره می کنیم:
1- اولین و مهم ترین و خطرناکترین تهدیدی که امنیت پایگاه داده را به خطر میاندازد، دسترسی غیرمجاز هکرها و دستکاریکنندگان به سیستمهای امنیتی و ایجاد مخاطره در اطلاعات مهم کاربر خارج از پایگاه داده است.آنها میتوانند به پایگاه داده آسیب برسانند یا آن ها را به گونهای دستکاری کنند تا به هدف های سوء خود برسند.
2-حملات مختلف از طریق نرمافزار، اسکریپت یا سایر سیستمهای غیرقانونی که شامل استفاده از بدافزارها و ویروسها میشوند. این مسئله در واقع مسیر را برای هکر ها هموار می کند.
3- تمام تهدیدات که در دو مورد فوق به آن اشاره کردیم منجر به بروز اختلال، عملکرد نادرست برنامههای مختلف و قطع دسترسی افراد مجاز به سیستم شود.
4 -اگر فایلهای آلوده حذف یا از سیستم سرور پاک نشوند، ممکن است منجر به بروز آسیبهای فیزیکی مختلفی مانند داغ شدن بیش از حد یا حتی از کار افتادگی سیستم مورد استفاده شود.
5-خرابی دادهها میتواند در موارد نقض یا تهدید در کنترلهای امنیتی مختلفی رخ دهد که در مرحله اول برای جلوگیری از وقوع چنین حوادثی به وجود آمدهاند.
در ادامه به بررسی روش های کنترل های امنیتی برای پایگاه داده می پردازیم :
کنترلهای امنیتی
کنترل دسترسی (Access Control) دادهها در حمل و نقل، به سیستم امنیتی خاصی اطلاق میشود که با کمک آن، اطمینان لازم از فرآیند انتقال حاصل خواهد شد.
به بیان ساده، با استفاده از این نوع کنترل امنیت پایگاه داده هیچکس نمیتواند دادهها را هنگام انتقال بین سرورهای مختلف یا پیکربندی شبکهها بخواند یا تفسیر کند.
هدف اصلی در این نوع از امنیت پایگاه داده محدود کردن هرگونه گره (Node) مربوط به رخنه یا دسترسی غیرمجاز به سیستمهای سرور در هر زمانی است.
بنابراین : این تنظیمات دادهها به عنوان کنترل دسترسی نیز شناخته میشوند.
احراز هویت (Authentication)
احراز هویت (Authentication) به عنوان مورد بعدی از انواع امنیت پایگاه داده مطرح میشود این پروتکل امنیتی دارای لایههای مختلفی در درون خود است.
به طور کلی: احراز هویت راهی است که از طریق آن تأیید میشود آیا کاربر همان شخصی است که مجاز است به اطلاعات دسترسی داشته باشد یا خیر.
به عبارت سادهتر: Authentication به معنی احراز هویت درخواست یا کوئری ارسال شده توسط پرسنل مجاز یا کاربر اختصاصی است.
روشهای احراز هویت
رمز های عبور ممکن است افشا شوند و به همین دلیل بایستی از آنها محافظت شود . اگر بخواهیم ایده آل در مورد امنیت فکر کنیم ، هر رمز عبور فقط بایستی یکبار استفاده شود. به این نوع رمز های عبور ، رمز های عبور یکبار مصرف یا One Time Password گفته می شود .در این روش حداکثر امنیت ممکن در رمزهای عبور را می توانیم داشته باشیم به دلیل اینکه در هر باز استفاده شدن رمز عبور ، این رمز تغییر کرده و در بار بعدی نمی توان از رمز قبلی استفاده کرد.
رمز عبوری که در هر بار ورود به سیستم ثابت مانده و تغییر نمی کند را رمزهای عبور ایستا یا Static می نامند و رمزهای عبوری که در هر بار ورود به سیستم تغییر می کنند را رمز های عبور پویا یا Dynamic می نامند. مقایسه تغییر رمز در بین این دو نوع رمز عبور واقعه غیر قابل مقایسه است .
رمزهای عبور بسته به نوع استفاده و حساسیت مصرف آنها در نوع منابعی که از آنها محافظت می کنند ، به صورت ماهیانه ، هفتگی و یا حتی روزانه تعویض می شوند . در حقیقت هر چقدر زمان استفاده از رمز های عبور طولانی تر شود ، امکان سوء استفاده و افشای آن بیشتر می شود .
یک Passphrase ترتیبی از کاراکترها است که معمولا بیشتر از طول رمزهای عبور یا Password ها هستند و برای امنیت بیشتر سیستم های اطلاعاتی به رمز عبور کمک می کنند ، Passphrase در هنگام استفاده در قالب یک رمز عبور مجازی فعالیت می کند .
توکن ها ابزاهای فیزیکی هستند که در اندازه ای مانند اندازه کارت های هوشمند ، و یا حافظه های فلش وجود دارند ، این ابزارها وظیفه نگهداری و یا تولید رمزهای عبور ایستا و یا پوسا را بر عهده دارند .
توکن ها ابزاهای فیزیکی هستند که در اندازه ای مانند اندازه کارت های هوشمند ، و یا حافظه های فلش وجود دارند ، این ابزارها وظیفه نگهداری و یا تولید رمزهای عبور ایستا و یا پوسا را بر عهده دارند .
به عنوان مثال : یک کارت بانکی یا ATM اطلاعات خاصی در مورد شما را در خود ذخیره می کند . کارت های هوشمند پا را از این نیز فراتر می گذارند و در درون خود پردازنده نیز قرار می دهند ، در واقع کارت های هوشمند توانایی پردازش اطلاعات را نیز دارند.
در ادامه به معرفی چهار نوع از این نوع کارت های هوشمند می پردازیم :
مالک خود را به توکن احراز هویت می کند
توکن مالک را برای استفاده از یک سیستم اطلاعاتی احراز هویت می کند
توکن در مرحله های زمانی معین و تعیین شده رمزهای عبور منحصر به فرد جدید ایجاد می کند .( این رمزعبور می تواند با یک کلید دیگر رمزنگاری شود)
این رمز عبور منحصر به فرد به همراه پین کد یا PIN مالک به سیستم یا ایستگاه کاری وارد می شود.
موجودیتی که در سیستم یا ایستگاه کاری وجود دارد ، کلید محرمانه و PIN مالک را می شناسد ، این موجودیت رمز عبور وارد شده را اعتبار سنجی کرده و در مورد آن تصمیم گیری می کند که در صورت معتبر بودن و وارد کردن رمز در زمان معین به آن اجازه ورود می دهد.
در این نوع ساختار ابتدا سیستم یا ایستگاه کاری یک رشته ( Challenge ) تصادفی تولید می کند و مالک این رشته را در داخل توکن به همراه PIN مربوطه قرار می دهد .
در ادامه توکن نیز یک رشته بازگشت می دهد که به سیستم یا ایستگاه کاری وارد می شود.
مکانیزم های احراز هویت در سیستم یا ایستگاه کاری بعدا تعیین می کند که مالک بایستی احراز هویت شود یا خیر.
در تمامی این ساختارها یک دستگاه احراز هویت جلودار یا Front-End و یک دستگاه احراز هویت پشتی یا Back-End وجود دارند که این قابلیت را به سیستم ها و سرویس های می دهند که براحتی فرآیند های احراز هویت را انجام دهند و این سرویس را پشتیبانی کنند .
یکی از راهکارهای که می توان در کنار رمزهای عبور برای پیاده سازی کنترل های دسترسی استفاده کرد سیستم های بایومتریک هستند. سیستم های بایومتریک از مکانیزم های نوع سوم فاکتورهای احراز هویت یعنی آنچه شما هستید ، هستند . بایومتریک یک سیستم خودکار است که انسان ها را از روی ویژگی های فیزیولوژیکی و همچنین رفتارهای فرد شناسایی و احراز هویت می کند .
در اینگونه سیستم ها یک پایگاه داده از تصاویر مربوط به ویژگیهای فیزیولوژیکی افراد وجود دارد که به محض در خواست فرد برای احراز هویت ، این تصاویر با تصویر ویژگیهای فرد مقایسه شده و در نهایت در صورتیکه تصویر مربوطه در پایگاه داده وجود داشته باشد شخص احراز هویت می شود . معمولا تجهیزات و سیستم های احراز هویت بایومتریک در پیاده سازی کنترل های امنیتی فیزیکی و همچنین احراز هویت در کنترل های منطقی مورد استفاده قرار می گیرد.
قابلیت Single Sign On یا SSO برای برطرف کردن مشکل ورود کاربر با نامهای کاربری و رمزهای عبور متعدد به سیستم های مختلف برای دسترسی به منابع را برطرف می کند. یک کاربر برای پیدا کردن دسترسی به منابع مختلف در شبکه مجبور است تعداد زیادی رمز عبور را حفظ باشد و یا آنها را در جایی یادداشت کند که این رمز ها فراموش نشوند ، معمولا همین رمز ها هستند که توسط مهاجمین مورد سوء استفاده قرار می گیرند .
در ساختار SSO کاربر صرفا یک نام کاربری و رمز عبور یکتا در شبکه دارد که بلافاصله بعد از اینکه وارد یک سیستم در ساختار SSO شود می تواند از تمامی منابعی که برای وی در شبکه تعریف شده است استفاده کند ، بدون نیاز به اینکه برای هر منبع اطلاعاتی نام کاربری و رمز عبور جدیدی وارد کند .
برای امنیت SSO مهمترین مسئله این است که رمزهای عبوری که در بین سیستم های اطلاعاتی رد و بدل می شوند بایستی بصورت رمزنگاری شده استفاده شوند ، این رمز ها نبایستی بر روی سیستم ها ذخیره شده و یا اینکه بصورت رمزنگاری نشده در شبکه منتقل شوند
تا این جا به طور کلی با مفهوم و روش هایی امنیت پایگاه داده و بالا بردن سطح آن پرداختیم در ادامه به بررسی صدور مجوز استراحت داده و ابزار ها می پردازیم با ما همراه باشید
#پایان_پارت_اول