دانلود متن کامل پایان نامه با فرمت ورد

پایان نامه مقطع کارشناسی ارشد رشته کامپیوتر

دانشگاه شیراز

دانشکده مهندسی

پايان نامه­ کارشناسي ارشد در رشته­ مهندسی کامپيوتر- نرم ­افزار

عنوان:

پيش بينی بهره کشی و خوشه بندی آسيب پذيری­ ها بوسیله­ متن کاوی

استاد راهنما:

دکتر اشکان سامی

برای رعایت حریم خصوصی نام نگارنده درج نمی شود

تکه هایی از متن به عنوان نمونه :

چکیده:

آسيب پذيری­های نرم افزار می­تواند منجر به تلفات مالی و اطلاعاتی شود. به علت محدود بودن منابع مالی و انسانی، اولويت دهی به آسيب­ها بسيار مورد توجه می­باشد. پيش از اين پژوهش، تعداد زيادی از محققان آسيب پذيری­ها را براساس دانش­های تجربی و آماری، رده بندی کرده­اند. اماگاهی طبيعت متغيير آسيب پذيری­ها، فراهم کردن يک معيار رده بندی برای آن­ها را غير ممکن می­کند.

گزارش­های آسيب پذيری، به طور پيوسته در پايگاه داده­های مختلف ثبت می­شوند. اطلاعات متنی آسيب پذيری­ها، به طور کامل توسط ابزارهای اتوماتيک موجود، مورد استفاده قرار نمی­گيرد. اين پژوهش نشان داد که از اطلاعات موجود در متن­ها برای ساخت مدل­های پيش گو می­توان استفاده کرد. متن کاوی ابزاری مناسب برای به دست آوردن اطلاعاتی است که در اخذ تصميمات مهم مديريتی موثر می­باشند.

در زمينه پيش بينی بهره کشی با بهره گرفتن از متن کاوی، تاکنون فقط يک تحقيق انجام شده است. اين تحقيق در KDD2010، با عنوان “فراتر از اکتشافی: آموزش برای، کلاس بندی آسيب پذيری و پيش بينی بهره کشی” ارائه شده است. اين تحقيق به سوالات زير، با بهره گرفتن از متن کاوی پاسخ داده است: آيا از آسيب پذيری بهره کشی خواهد شد؟ چه زمانی از آسيب پذيری موجود بهره کشی خواهد شد؟ اين مقاله در مقايسه با CVSS(که يکی از متريک­های معروف آسيب پذيری است) به نتايج خوبی رسيده است. در اين پژوهش به سوالات فوق و به سوالات جديد زير دقت بالايي پاسخ داده شده است:

اگر سيستمی مورد بهره کشی قرار گرفته، چه زمانی اين بهره کشی آغاز شده است؟ (دقت پاسخ­ها بين 94.5-84%)

اگر سيستمی آسيب پذير است، چه زمانی بسته اصلاح شده آن از سوی سازندگان ارائه خواهد شد؟ (دقت پاسخ­ها بين 91-68%)

در زمينه خوشه بندی آسيب پذيری­ها، تاکنون تحقيقات زيادی انجام شده است. پايگاه داده OSVDB دارای دسته بندی­های مختلفی برای آسيب پذيری­ها می­باشد، اما هيچ يک از اين دسته­ها بر اساس توصيف آسيب پذيری­ها نيست. در اين تحقيق آسيب پذيری­ها با بهره گرفتن از توصيف­هايشان خوشه بندی شده­اند، که دسته­های حاصل عبارتند از: سرريز بافر، رد سرويس، دستکاری داده، کنترل از راه دور، پيکربندی نامناسب، شکاف در رمز عبور، دسترسی غير مجاز به اطلاعات، و دسترسی غير مجاز به سرويس. برای انتساب آسيب پذيری­ها به دسته­های مناسب به صورت دستی به تجربه نيروی انسانی نياز است و انجام اين کار بسيار ملال آور می­باشد. دسته بندی ارائه شده در اين پژوهش، امکان ساخت نرم افزاری که بتواند آسيب پذيری­ها را به طور خودکار به دسته­های مناسب نسبت دهد، را فراهم می­کند.

در اين پژوهش از دو پايگاه داده معروف آسيب پذيری­ها (OSVDB و CVE)، و اطلاعات تاريخ آسيب پذيری­ها که استفان فری در اختيارمان قرار داد، استفاده شده است. برای پيش بينی بهره کشی از کلاس بندی کننده ­های ماشين بردار پشتيبانی و جنگل تصادفی، و برای انجام خوشه بندی از روش نگاشت خود سازمانده نوخاسته استفاده شده است.

فصل اول: مقدمه

1-1- آسیب پذیری

در مباحث امنيت کامپيوتر، يک آسيب پذيری، ضعفی است که برای مهاجم امکان سوء استفاده از اطلاعات يک سيستم را فراهم می­کند. سالانه هزاران آسيب پذيری کشف و گزارش می­شوند و ميليون­ها دلار در سرتاسر دنيا صرف مقابله با آسيب پذيری­ها می­گردد. برای بهره کشی از آسيب پذيری يک سيستم عموماً به سه عامل نياز است: حساسيت يا نقصی در سيستم، دسترسی مهاجم به نقص و توانايي مهاجم برای بهره کشی از نقص (1).

1-1-1- تعریف آسیب پذیری

آسيب پذيری از جمله مفاهيمی است که منابع مختلف تعاريف متفاوتی را برايش ارائه داده­اند. از جمله اين تعاريف می­توان به موارد زير اشاره کرد:

ISO 27005: ضعف يک دارايی يا گروهی از دارايي­ها که می­تواند توسط فرد يا گروهی از افراد مورد بهره کشی قرار گيرد (2). در اين تعريف دارايي به معنای هر چيزی که برای سازمان ارزشی داشته باشد، است، برای مثال منابع اطلاعاتی مورد حمايت سازمان.

IETF RFC 2828: يک عيب يا ضعف در طراحی، پياده سازی، عملکرد يا مديريت سيستم، که می­تواند باعث بهره کشی، در جهت نقض سياست امنيتی سيستم شود (3).

کميته ملی سيستم­های امنيتی ايالات متحده آمريکا[1]، در دستورالعمل CNSSشماره 4009، در تاريخ 26 آوريل 2010، واژه نامه تضمين اطلاعات ملی: آسيب پذيری ضعف در يک IS، روش­های امنيتی سيستم، کنترل­های داخلی يا پياده سازی است، که می­تواند منجر به بهره کشی شود (4).

ENISA: وجود يک ضعف طراحی يا خطای پياده سازی که بتواند منجر به رويداد غير منتظره نامطلوبی شود، که اين رويداد امنيت سيستم کامپيوتر، شبکه، برنامه يا پروتکل را به خطر اندازد (5).

گروه باز[2]: حالتی که قدرت مهاجم بيش از قدرت مقاومت در برابر آن باشد (6).

تحليل عاملی از خطر اطلاعات[3](FAIR): احتمال اينکه يک دارايي قادر به مقاومت در برابر عوامل خطر نباشد (7).

امنيت داده و کامپيوتر، فرهنگ لغات مفاهيم و لغات استاندارد، نويسندگان دنيس لانگلی[4] و مايکل شين[5]، استاکتون پرس[6]، ISBN 0-935859-17-9:

  1. در امنيت کامپيوتر، ضعف کارکرد امنيتی سيستم­های خودکار شده، کنترل­های ناظران، کنترل­های اينترنت و غيره، که بتوانند بوسيله يک مهاجم با دسترسی غير مجاز به اطلاعات، پردازش اطلاعات را مختل کنند.
  2. در امنيت کامپيوتر، يک ضعف در لايه فيزيکی، سازمان، کارکرد، کارکنان، مديريت، سرپرستی، سخت افزار يا نرم افزار که امکان بهره کشی از آن­ها با هدف آسيب رساندن به سيستم يا فعاليت­ وجود داشته باشد.
  3. در امنيت کامپيوتر، هر ضعف يا نقص موجود در يک سيستم، حمله، رويداد مضر يا فرصت دسترسی برای يک عامل تهديد کننده، که امکان تهديد را برای عامل فراهم کند، را آسيب پذيری گويند.

2-1-1- کلاس بندی آسیب پذیری ها

آسيب پذيری­ها، براساس نوع دارايي به دسته­های زير تقسيم می­شوند (2):

  • سخت افزار، برای مثال: حساسيت به رطوبت، حساسيت به گرد و غبار، استعداد ابتلا به ذخيره سازی محافظت نشده.
  • نرم افزار، برای مثال: تست ناکافی، فقدان پيگيری.
  • شبکه، برای مثال: خطوط ارتباطی محافظت نشده، معماری شبکه ناامن.
  • کارکنان، برای مثال: روند جذب ناکافی، آگاهی­های امنيتی ناکافی.
  • مکان، برای مثال: منطقه مستعد سيل،منبع برق غير قابل اعتماد.
  • سازمانی، برای مثال: عدم پيگيری منظم، عدم تداوم برنامه­ها.

3-1-1- علت­های ايجاد آسيب پذيری­ها

 برخی از منابع و علت­های ايجاد آسيب پذيری­ها عبارتند از:

  • پيچيدگی سيستم: احتمال وجود نقص و نقاط دسترسی ناخواسته در سيستم­های بزرگ پيچيده، بيشتر است (8).
  • متعارف بودن سيستم: استفاده از کدها، نرم افزارها، سيستم عامل­ها يا سخت افزارهای معمول و معروف، احتمال اينکه يک مهاجم بتواند به دانش و ابزار، جهت بهره کشی از نقص موجود دسترسی پيدا کند، را افزايش می­دهد (9).
  • اتصال: اتصالات فيزيکی، امتيازات[1]، پورت­ها، پروتکل­ها و سرويس­های بيشتر و افزايش مدت زمان هر يک از آن­ها، دسترسی پذيری به آسيب پذيری­ها را افزايش می­دهد (7).
  • نقص در مديريت پسوردها: کاربران کامپيوتر از پسوردهای ضعيفی که با تلاش اندکی کشف می­شوند، استفاده می­کنند يا اينکه آن­ها را در برخی برنامه­ها ذخيره می­کنند، و اين پسوردها بين بسياری از برنامه­ها و صفحات وب­ مشترک است (8).
  • نقص­های طراحی در سيستم عامل­های اصلی: طراحان سيستم عامل­ها، عموماً سياست­هايي که کمتر کاربر/مدير سيستم را درگير کنند را برمی­گزينند. برای مثال سيستم عامل­ها، سياست­هايي مثل پيش فرض­های اعطای مجوز به هر برنامه و دسترسی کامل کاربران به سيستم را دارند (8).اين نقص­های سيستم عامل­ها، به ويروس­ها و بدافزارها، اجازه اجرای دستوراتی از طرف مدير را می­دهد (1).
  • مرور وب­سايت­های اينترنت: برخی وب سايت­های اينترنتی دارای جاسوس­ها يا تبليغات خطرناکی هستند، که می­توانند به صورت خودکار روی سيستم­های کامپيوتری نصب شوند. بعد از بازديد از اين وب سايت­ها سيستم­ها آلوده می­شوند، اطلاعات شخصی جمع آوری شده و برای شخص ثالث فرستاده می­شود (10).
  • اشکلات نرم افزاری: اشکلات قابل بهره کشی در بسياری برنامه­های نرم افزاری وجود دارد. اشکلات نرم افزاری ممکن است به مهاجمان اجازه سوء استفاده از برنامه را بدهند (8).
  • ورودی­های کاربر کنترل نشده: برنامه­ها فرض می­کنندکه همه­ی ورودی­های کاربر امن است. برنامه­هايي که ورودی­های کاربر را بررسی نمی­کنند، در واقع امکان اجرای مستقيم دستورات ناخواسته و دستکاری در پايگاه داده­ها را فراهم می­کنند (8).

4-1-1- شناسايي و حذف آسيب پذيری­ها

 تلاش­های زيادی در جهت ساخت نرم افزارهايي با قابليت کشف خودکار آسيب پذيری­های سيستم­های کامپيوتری انجام شده است. اگرچه نرم افزارهای موجود می­توانند در برخی موارد ديد کلی خوبی را نسبت به آسيب پذيری­های سيستم فراهم کنند، اما نمی­توانند جايگزين بررسی انسانیروی آسيب پذيری­ها شوند. تکيه بر گزارشات اسکنرها، ديد محدود همراه با تشخيص­های اشتباه زياد، به همراه خواهد داشت. آسيب پذيری­ها در همه­ی نرم افزارهای اساسی مثل سيستم عامل­ها وجود دارند. گاهی اوقات تنها راه حل اساسی مقابله با آن­ها نصب بسته نرم افزاری اصلاح شده آن محصول است و در فاصله زمانی کشف تا ارائه بسته نرم افزاری با روش­هايي مثل استفاده از ديوار آتش و يا نظارت مستقيم بر کنترل­های دسترسی توسط ناظران سيستم­ها، می­توان جلوی سوء استفاده از سيستم را گرفت. لازم به ذکر است که روش­های نظارت مستقيم بر سيستم­ها، هم از نظر مالی و هم از نظر نيروی انسانی بسيار هزينه بر هستند.

2-1- مفاهيم اوليه­ مورد نياز

1-2-1- متن کاوی

مشکلی که دنيای امروز با آن رو به رو است، كمبود يا نبود اطلاعات نيست بلکه کمبود دانشي است که از اين اطلاعات ميتوان حاصل کرد. ميليون­ها صفحه­ وب، ميليون­ها کلمه در کتابخانه­هاي ديجيتال و هزاران صفحه اطلاعات در هر شرکت، تنها بخشی از اين منابع اطلاعاتي هستند. اما نمي­توان به طور مشخص منبعي از دانش را در اين بين معرفي کرد. دانش حاصلی است که از نتيجه گيري و فکر و تحليل بر روي اطلاعات به دست می­آيد. هدف داده کاوی مشخص کردن روابط ميان داده­های موجود در پايگاه داده­ها و استخراج دانش از ميان آن­ها می­باشد. زمانی که داده­های موجود ساخت يافته باشند استفاده از روش­های داده کاوی و کسب دانش از آن­ها ساده است. اما امروزه بخش زيادی از اطلاعات به صورت متن نگهداری می­شود و متن­ها داده­هايی غير ساخت يافته هستند. يک فرد براي دريافت دانش از اطلاعات يک متن، بايستي ابتدا آنرا درک کند، تا بفهمد چه معاني و مفاهيمي در آن موجود است و چه ارتباطي ميان مفاهيم وجود دارد. با اين حال عصر تکنولوژي به دنبال خودکارسازی است، حتي اگر اين کار “درک معني متن” باشد (11).

متن كاوي تمام فعاليت­هايي كه به نوعي به دنبال كسب دانش از متن هستند را شامل مي‌گردد. تحليل داده­هاي متني توسط روش­هاي يادگيري ماشين، بازيابي اطلاعات هوشمند، پردازش زبان طبيعي، همگي در دسته فعاليت­های متن کاوی قرار مي‌گيرند. تصوير 1-1 مراحل متعارف متن کاوی را نشان می­دهد. اولين گام در متن کاوی استفاده از روش­هايی برای ساختارمند نمودن متن­ها است. متن از مجموعه­ای از کلمات و عبارات زبان طبيعی تشکيل شده است. عموماً روش­های متن کاوی ابتدا کلمات و عبارات، را از متن استخراج می­کنند و سپس آن­ها را مورد پردازش قرار می­دهند، برای مثال برخی کلمات مثل حروف اضافه و ضماير حذف، و کلمات باقی مانده ريشه­يابی می­شوند. سپس مشخصات استخراج شده از متن­ها به روش­های مختلفی مقداردهی می­شوند، از ميان اين روش­ها می­توان به مقداردهی دودويی (بيان­گر ظاهر شدن/ نشدن کلمه در متن است)، فراوانی کلمه در متن، وزن TF-IDFاشاره کرد (12).در اين تحقيق از روش وزن­دهی TF-IDFاستفاده شده است، که در قسمت بعد درباره اين روش توضيح داده خواهد شد. با بهره گرفتن از مقادير به دست آمده بردارهای ويژگی برای داده­ها ساخته و از بين مجموعه­ی داده­ها، داده­های آموزش و تست کلاس بندی کننده انتخاب می­شوند. پس از آن يک روش کلاس بندی انتخاب می­شود. کلاس بندی کننده با بهره گرفتن از داده­های آموزش، آموزش داده و با بهره گرفتن از داده­های تست ارزيابی می­شود.

[1]Privileges

[1] The committee on National Security Systems of United States of America

[2] Open Group

[3] Factor Analysis of Information Risk

[4] Dennis Longley

[5] Michael Shain

[6] Stockton Press

***ممکن است هنگام انتقال از فایل اصلی به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود ولی در فایل دانلودی همه چیز مرتب و کامل و با فرمت ورد موجود است***

متن کامل را می توانید دانلود نمائید

چون فقط تکه هایی از متن پایان نامه در این صفحه درج شده (به طور نمونه)

ولی در فایل دانلودی متن کامل پایان نامه

 با فرمت ورد word که قابل ویرایش و کپی کردن می باشند

موجود است

تعداد صفحه : 111

قیمت : 14700 تومان

 

***

—-

:       

****         serderehi@gmail.com

جستجو در سایت : کلمه کلیدی خود را وارد نمایید :