پایان نامه ارشد مهندسی نرم افزار: پیش بینی بهره کشی و خوشه بندی آسیب پذیری ها … |
- نرم افزار، برای مثال: تست ناکافی، فقدان پیگیری.
- شبکه، برای مثال: خطوط ارتباطی محافظت نشده، معماری شبکه ناامن.
- کارکنان، برای مثال: روند جذب ناکافی، آگاهیهای امنیتی ناکافی.
- مکان، برای مثال: منطقه مستعد سیل،منبع برق غیر قابل اعتماد.
- سازمانی، برای مثال: عدم پیگیری منظم، عدم تداوم برنامهها.
3-1-1- علتهای ایجاد آسیب پذیریها
برخی از منابع و علتهای ایجاد آسیب پذیریها عبارتند از:
- پیچیدگی سیستم: احتمال وجود نقص و نقاط دسترسی ناخواسته در سیستمهای بزرگ پیچیده، بیشتر است (8).
- متعارف بودن سیستم: استفاده از کدها، نرم افزارها، سیستم عاملها یا سخت افزارهای معمول و معروف، احتمال اینکه یک مهاجم بتواند به دانش و ابزار، جهت بهره کشی از نقص موجود دسترسی پیدا کند، را افزایش میدهد (9).
- اتصال: اتصالات فیزیکی، امتیازات[1]، پورتها، پروتکلها و سرویسهای بیشتر و افزایش مدت زمان هر یک از آنها، دسترسی پذیری به آسیب پذیریها را افزایش میدهد (7).
- نقص در مدیریت پسوردها: کاربران کامپیوتر از پسوردهای ضعیفی که با تلاش اندکی کشف میشوند، استفاده میکنند یا اینکه آنها را در برخی برنامهها ذخیره میکنند، و این پسوردها بین بسیاری از برنامهها و صفحات وب مشترک است (8).
- نقصهای طراحی در سیستم عاملهای اصلی: طراحان سیستم عاملها، عموماً سیاستهایی که کمتر کاربر/مدیر سیستم را درگیر کنند را برمیگزینند. برای مثال سیستم عاملها، سیاستهایی مثل پیش فرضهای اعطای مجوز به هر برنامه و دسترسی کامل کاربران به سیستم را دارند (8).این نقصهای سیستم عاملها، به ویروسها و بدافزارها، اجازه اجرای دستوراتی از طرف مدیر را میدهد (1).
- مروروبسایتهای اینترنت: برخی وب سایتهای اینترنتی دارای جاسوسها یا تبلیغات خطرناکی هستند، که میتوانند به صورت خودکار روی سیستمهای کامپیوتری نصب شوند. بعد از بازدید از این وب سایتها سیستمها آلوده میشوند، اطلاعات شخصی جمع آوری شده و برای شخص ثالث فرستاده میشود (10).
- اشکلات نرم افزاری: اشکلات قابل بهره کشی در بسیاری برنامههای نرم افزاری وجود دارد. اشکلات نرم افزاری ممکن است به مهاجمان اجازه سوء استفاده از برنامه را بدهند (8).
- ورودیهای کاربر کنترل نشده: برنامهها فرض میکنندکه همهی ورودیهای کاربر امن است. برنامههایی که ورودیهای کاربر را بررسی نمیکنند، در واقع امکان اجرای مستقیم دستورات ناخواسته و دستکاری در پایگاه دادهها را فراهم میکنند (8).
4-1-1- شناسایی و حذف آسیب پذیریها
تلاشهای زیادی در جهت ساخت نرم افزارهایی با قابلیت کشف خودکار آسیب پذیریهای سیستمهای کامپیوتری انجام شده است. اگرچه نرم افزارهای موجود میتوانند در برخی موارد دید کلی خوبی را نسبت به آسیب پذیریهای سیستم فراهم کنند، اما نمیتوانند جایگزین بررسی انسانیروی آسیب پذیریها شوند. تکیه بر گزارشات اسکنرها، دید محدود همراه با تشخیصهای اشتباه زیاد، به همراه خواهد داشت. آسیب پذیریها در همهی نرم افزارهای اساسی مثل سیستم عاملها وجود دارند. گاهی اوقات تنها راه حل اساسی مقابله با آنها نصب بسته نرم افزاری اصلاح شده آن محصول است و در فاصله زمانی کشف تا ارائه بسته نرم افزاری با روشهایی مثل استفاده از دیوار آتش و یا نظارت مستقیم بر کنترلهای دسترسی توسط ناظران سیستمها، میتوان جلوی سوء استفاده از سیستم را گرفت. لازم به ذکر است که روشهای نظارت مستقیم بر سیستمها، هم از نظر مالی و هم از نظر نیروی انسانی بسیار هزینه بر هستند.
2-1- مفاهیم اولیه مورد نیاز
فرم در حال بارگذاری ...
[چهارشنبه 1399-10-17] [ 06:22:00 ب.ظ ]
|