آسيب پذيریهای نرم افزار میتواند منجر به تلفات مالی و اطلاعاتی شود. به علت محدود بودن منابع مالی و انسانی، اولويت دهی به آسيبها بسيار مورد توجه میباشد. پيش از اين پژوهش، تعداد زيادی از محققان آسيب پذيریها را براساس دانشهای تجربی و آماری، رده بندی کردهاند. اماگاهی طبيعت متغيير آسيب پذيریها، فراهم کردن يک معيار رده بندی برای آنها را غير ممکن میکند.گزارشهای آسيب پذيری، به طور پيوسته در پايگاه دادههای مختلف ثبت میشوند. اطلاعات متنی آسيب پذيریها، به طور کامل توسط ابزارهای اتوماتيک موجود، مورد استفاده قرار نمیگيرد. اين پژوهش نشان داد که از اطلاعات موجود در متنها برای ساخت مدلهای پيشگو میتوان استفاده کرد. متن کاوی ابزاری مناسب برای به دست آوردن اطلاعاتی است که در اخذ تصميمات مهم مديريتی موثر میباشند.در زمينه پيش بينی بهره کشی با استفاده از متن کاوی، تاکنون فقط يک تحقيق انجام شده است. اين تحقيق در KDD2010، با عنوان "فراتر از اکتشافی: آموزش برای، کلاس بندی آسيب پذيری و پيش بينی بهره کشی" ارائه شده است. اين تحقيق به سوالات زير، با استفاده از متن کاوی پاسخ داده است: آيا از آسيب پذيری بهره کشی خواهد شد؟ چه زمانی از آسيب پذيری موجود بهره کشی خواهد شد؟ اين مقاله در مقايسه با CVSS(که يکی از متريکهای معروف آسيب پذيری است) به نتايج خوبی رسيده است. در اين پژوهش به سوالات فوق و به سوالات جديد زير دقت بالايي پاسخ داده شده است:اگر سيستمی مورد بهره کشی قرار گرفته، چه زمانی اين بهره کشی آغاز شده است؟ (دقت پاسخها بين 94.5-84%)اگر سيستمی آسيب پذير است، چه زمانی بسته اصلاح شده آن از سوی سازندگان ارائه خواهد شد؟ (دقت پاسخها بين 91-68%)در زمينه خوشه بندی آسيب پذيریها، تاکنون تحقيقات زيادی انجام شده است. پايگاه داده OSVDBدارای دسته بندیهای مختلفی برای آسيب پذيریها میباشد، اما هيچ يک از اين دستهها بر اساس توصيف آسيب پذيریها نيست. در اين تحقيق آسيب پذيریها با استفاده از توصيفهايشان خوشه بندی شدهاند، که دستههای حاصل عبارتند از: سرريز بافر، رد سرويس، دستکاری داده، کنترل از راه دور، پيکربندی نامناسب، شکاف در رمز عبور، دسترسی غير مجاز به اطلاعات، و دسترسی غير مجاز به سرويس. برای انتساب آسيب پذيریها به دستههای مناسب به صورت دستی به تجربه نيروی انسانی نياز است و انجام اين کار بسيار ملال آور میباشد. دسته بندی ارائه شده در اين پژوهش، امکان ساخت نرم افزاری که بتواند آسيب پذيریها را به طور خودکار به دستههای مناسب نسبت دهد، را فراهم میکند.در اين پژوهش از دو پايگاه داده معروف آسيب پذيریها (OSVDBو CVE)، و اطلاعات تاريخ آسيب پذيریها که استفان فری در اختيارمان قرار داد، استفاده شده است. برای پيش بينی بهره کشی از کلاس بندی کنندههای ماشين بردار پشتيبانی و جنگل تصادفی، و برای انجام خوشه بندی از روش نگاشت خود سازمانده نوخاسته استفاده شده است.فهرست مطالب عنوانصفحهفصل اول: مقدمه11-1-آسیبپذیری21-1-1-تعریف آسیبپذیری21-1-2- کلاس بندی آسيبپذيریها31-1-3- علتهای ايجاد آسيبپذيریها41-1-4- شناسايي و حذف آسيبپذيریها51-2- مفاهيم اوليهی مورد نياز51-2-1- متن کاوی51-2-2- کلاسبندی و پيش بينی81-2-3- خوشهبندی121-2-4- انتخاب ويژگی141-3- هدف تحقيق16فصل دوم: مروری بر تحقیقات پیشین182-1- نقش افراد و فرآيندهای مختلف بر آسيبپذيریها192-2- روشهای ارزيابی و رده بندی آسيبپذيریها242-2-1- سيستم نمره دهی آسيبپذيری متعارف252-3- دسته بندی آسيب پذيریها302-4- پيش بينیهای امنيتی با استفاده از گزارشهای آسيب پذيریها362-5- تشخيص آسيب پذيریها با استفاده از سورس کد نرم افزارها36فصل سوم: دادههاوروشاستخراجويژگیها393-1- دادههای تحقيق403-2- روش استخراج ويژگیها برای کلاسبندی و پيشبينی443-3- روش استخراج ويژگیها برای خوشهبندی47فصل چهارم: روش انجام و نتايج آزمايشات504-1- روش و نتايج آزمايشات کلاسبندی و پيشبينی514-1-1- پيشبينی بهره کشی برون خط514-1-2- پيشبينی بهره کشی برخط544-1-3- پيشبينی زمان564-2- مقايسه OSVDB و CVE624-3- ارزيابی ويژگیها644-4- خوشه بندی آسيب پذيریها664-4-1- تحليل دستههای موجود در پايگاه داده OSVDB684-4-2- ارائه دسته بندی آسيب پذيریها784-4-3- ارزيابی دستهبندی ارائه شده84فصل پنجم: بحث و نتيجهگيري875-1- پيش بينی بهره کشی از آسيب پذيریها885-2- خوشه بندی آسيب پذيریها89نتيجه گيری89پيشنهادات برای پژوهشهای آينده90منابع و ماخذ91 فهرست جدولها عنوانصفحهجدول 3- 1: ويژگیهای استخراج شده از هر صفت47جدول 4- 1: دسته بندی بهره کشی آسيب پذيریها و نحوه برچسب زنی52جدول 4- 2: نتايج پيش بينی بهره کشی برون خط برای تعداد کلاس بندی کنندههای مختلف53جدول 4- 3: دقت پيش بينی در آزمايش برون خط برای 9 کلاس بندی کننده54جدول 4- 4: پيش بينی اينکه آيا از آسيب پذيری در T روز آينده بهره کشی خواهد شد يا نه58جدول 4- 5: پيش بينی اينکه آيا از آسيب پذيری در T روز آينده بهره کشی خواهد شد يا نه با روش 10 اعتبار متقاطع 10 قسمتی58جدول 4- 6: پيش بينی اينکه آيا از آسيب پذيری در T روز گذشته بهره کشی شده است يا نه59جدول 4- 7: پيش بينی اينکه آيا از آسيب پذيری در T روز گذشته بهره کشی شده است يا نه، با روش 10 اعتبار متقاطع 10 قسمتی59جدول 4- 8: پيش بينی اينکه آيا بسته اصلاح شده در T روز آينده ارائه خواهد شد يا نه60جدول 4- 9: پيش بينی اينکه آيا بسته اصلاح شده در T روز آينده ارائه خواهد شد يا نه، با روش 10 اعتبار متقاطع 10 قسمتی60جدول 4- 10: نتايج متوازن سازی، نامتوازنترينگروههای پيش بينی زمانی61جدول 4- 11: مقايسه OSVDB و CVE در پيش بينی بهره کشی برون خط63جدول 4- 12: مقايسه OSVDB و CVE برای پيش بينی زمان بهره کشی برای آسيب پذيریهای روز –مثبت64جدول 4- 13: مقايسه OSVDB و CVE برای پيش بينی زمان بهره کشی برای آسيب پذيریهای روز –منفی64جدول 4- 14: مقايسه OSVDB و CVE برای پيش بينی زمان ارائه بسته اصلاح شده64جدول 4- 15: گزارش مختصری از ويژگیهای انتخاب شده65جدول 4- 16: انواع دسته بندی آسيب پذيری موجود در OSVDB67جدول 4- 17: درصد کل نمونههادرهردسته80جدول 4- 18: نمونهای از آسيب پذيریهای هر دسته81جدول 4- 19: نمونهای از آسيب پذيریهای دارای همپوشانی در دستهها83جدول 4- 20: فاصله منهتن برای دستههابهروشESOM85جدول 4- 21: فاصله منهتن برای دستههابهروشK- ميانگين85 فهرست تصاویر عنوانصفحهتصوير 1- 1: مراحل متعارف متن کاوی7تصوير 2- 1: چرخه آسيب پذيری تعريف شده بوسيله رويدادهای مشخص. توالی دقيق رويدادها بين آسيب پذيریها متفاوت است (برگرفته از 16)20تصوير 2- 2: فرآيندهای اصلی اکوسيستم امنيتی و رابطه رويدادهای چرخه آسيب پذيری (برگرفته از 16)21تصوير 2- 3: متريکهایCVSS (برگرفته از 24)25تصوير 2- 4: وابستگی متريکهایCVSS (برگرفته از 24)25تصوير 2- 5: فرمول معيار پايه در CVSS26تصوير 2- 6: فرمول معيار زمانی در CVSS27تصوير 2- 7: فرمول معيار محيطی در CVSS28تصوير 2- 8: مدل ساده شدهای از چرخه آسيب پذيریها (برگرفته از 29)29تصوير 2- 9: احتمالات محاسبه شده؛ P0، P1، P2 و P3 برای تصوير 2-8 (محور افق زمان t را نشان میدهد) (برگرفته از 29)30تصوير 3- 1: شمای پايگاه داده OSVDB (برگرفته از 44)41تصوير 3- 2: مراحل پيش پردازش دادههابرای پيش بينی بهره کشي43تصوير 3- 3: مراحل پيش پردازش دادههابرای خوشه بندی آسيب پذيریها44تصوير 3- 4: مراحل استخراج ويژگیها برای کلاس بندی و پيش بينی46تصوير 3- 5: مراحل استخراج ويژگیها برای خوشه بندی49تصوير 4- 1: پارامترهای ورودیESOM70تصوير 4- 2: اجرای خوشه بندیESOM با 1359 ويژگی، الگوريتم آموزش k دسته، تعداد ستونها 82 وتعدادسطرها 50،تعدادگامهای آموزش 20، روش وزن دهی اوليه گوسی71تصوير 4- 3: اجرای خوشه بندیESOM با 1359 ويژگی، الگوريتم آموزش برخط، تعداد ستونها 82 وتعدادسطرها 50،تعدادگامهای آموزش 20، روش وزن دهی اوليه گوسی72تصوير 4- 4: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش برخط، تعداد ستونها 82 وتعدادسطرها 50،تعدادگامهای آموزش 20، روش وزن دهی اوليه گوسی73تصوير 4- 5: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش برخط، تعداد ستونها 90 وتعدادسطرها 90،تعدادگامهای آموزش 30، روش وزن دهی اوليه گوسی74تصوير 4- 6: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش k دسته، تعداد ستونها 100 وتعدادسطرها 120،تعدادگامهای آموزش 40، روش وزن دهی اوليه گوسی75تصوير 4- 7: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش برخط، تعداد ستونها 90 وتعدادسطرها 60،تعدادگامهای آموزش 30، روش وزن دهی اوليه انتخاب اعداد تصادفی از فاصله ميانگين منهای 2 برابر انحراف معيار تا ميانگين بعلاوه 2 برابر انحراف معيار76تصوير 4- 8: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش k دسته، تعداد ستونها 90 وتعدادسطرها 60،تعدادگامهای آموزش 30، روش وزن دهی اوليه انتخاب اعداد تصادفی از فاصله ميانگين منهای 2 برابر انحراف معيار تا ميانگين بعلاوه 2 برابر انحراف معيار77تصوير 4- 9: نمونههاييازنقشههای بررسی شده78تصوير 4- 10: خوشههای انتخاب شده بروی نقشه مشخص شده است.79تصوير 4- 11: نقشههای از اجرا با پارامترهاییکسان82 فهرست نمودارها عنوانصفحهنمودار 4- 1: درصد خطای تجمعی کل، خطای منفی غلط و خطای مثبت غلط در آزمايش برخط55نمودار 4- 2: تاثير تعداد نمونههابردقتپيشبينی روشهایSVM و جنگل تصادفی (برگرفته از (53))62 مقدمه 1-1- آسيب پذيری[1] در مباحث امنيت کامپيوتر، يک آسيب پذيری، ضعفی است که برای مهاجم امکان سوء استفاده از اطلاعات يک سيستم را فراهم میکند. سالانه هزاران آسيب پذيری کشف و گزارش میشوند و ميليونها دلار در سرتاسر دنيا صرف مقابله با آسيب پذيریها میگردد. برای بهره کشی از آسيب پذيری يک سيستم عموماً به سه عامل نياز است: حساسيت يا نقصی در سيستم، دسترسی مهاجم به نقص و توانايي مهاجم برای بهره کشی از نقص (1). 1-1-1- تعريف آسيب پذيری آسيب پذيری از جمله مفاهيمی است که منابع مختلف تعاريف متفاوتی را برايش ارائه دادهاند. از جمله اين تعاريف میتوان به موارد زير اشاره کرد:ISO 27005: ضعف يک دارايی يا گروهی از داراييها که میتواند توسط فرد يا گروهی از افراد مورد بهره کشی قرار گيرد (2). در اين تعريف دارايي به معنای هر چيزی که برای سازمان ارزشی داشته باشد، است، برای مثال منابع اطلاعاتی مورد حمايت سازمان.IETF RFC 2828: يک عيب يا ضعف در طراحی، پياده سازی، عملکرد يا مديريت سيستم، که میتواند باعث بهره کشی، در جهت نقض سياست امنيتی سيستم شود (3).کميته ملی سيستمهای امنيتی ايالات متحده آمريکا[2]، در دستورالعمل CNSSشماره 4009، در تاريخ 26 آوريل 2010، واژه نامه تضمين اطلاعات ملی: آسيب پذيری ضعف در يک IS، روشهای امنيتی سيستم، کنترلهای داخلی يا پياده سازی است، که میتواند منجر به بهره کشی شود (4).ENISA: وجود يک ضعف طراحی يا خطای پياده سازی که بتواند منجر به رويداد غير منتظره نامطلوبی شود، که اين رويداد امنيت سيستم کامپيوتر، شبکه، برنامه يا پروتکل را به خطر اندازد (5).گروه باز[3]: حالتی که قدرت مهاجم بيش از قدرت مقاومت در برابر آن باشد (6).تحليل عاملی از خطر اطلاعات[4](FAIR): احتمال اينکه يک دارايي قادر به مقاومت در برابر عوامل خطر نباشد (7).امنيت داده و کامپيوتر، فرهنگ لغات مفاهيم و لغات استاندارد، نويسندگان دنيس لانگلی[5] و مايکل شين[6]، استاکتون پرس[7]، ISBN 0-935859-17-9: 1-1-2- کلاس بندی آسيب پذيریها آسيب پذيریها، براساس نوع دارايي به دستههای زير تقسيم میشوند (2): 1-1-3- علتهای ايجاد آسيب پذيریها برخی از منابع و علتهای ايجاد آسيب پذيریها عبارتند از:ورودیهای کاربر کنترل نشده: برنامهها فرض میکنندکه همهی ورودیهای کاربر امن است. برنامههايي که ورودیهای کاربر را بررسی نمیکنند، در واقع امکان اجرای مستقيم دستورات ناخواسته و دستکاری در پايگاه دادهها را فراهم میکنند
پيش بينی بهره کشی و خوشه بندی آسيب پذيری ها بوسیله ی متن کاوی word
آسيب پذيریهای نرم افزار میتواند منجر به تلفات مالی و اطلاعاتی شود. به علت محدود بودن منابع مالی و انسانی، اولويت دهی به آسيبها بسيار مورد توجه میباشد. پيش از اين پژوهش، تعداد زيادی از محققان آسيب پذيریها را براساس دانشهای تجربی و آماری، رده بندی کردهاند. اماگاهی طبيعت متغيير آسيب پذيریها، فراهم کردن يک معيار رده بندی برای آنها را غير ممکن میکند.گزارشهای آسيب پذيری، به طور پيوسته در پايگاه دادههای مختلف ثبت میشوند. اطلاعات متنی آسيب پذيریها، به طور کامل توسط ابزارهای اتوماتيک موجود، مورد استفاده قرار نمیگيرد. اين پژوهش نشان داد که از اطلاعات موجود در متنها برای ساخت مدلهای پيشگو میتوان استفاده کرد. متن کاوی ابزاری مناسب برای به دست آوردن اطلاعاتی است که در اخذ تصميمات مهم مديريتی موثر میباشند.در زمينه پيش بينی بهره کشی با استفاده از متن کاوی، تاکنون فقط يک تحقيق انجام شده است. اين تحقيق در KDD2010، با عنوان "فراتر از اکتشافی: آموزش برای، کلاس بندی آسيب پذيری و پيش بينی بهره کشی" ارائه شده است. اين تحقيق به سوالات زير، با استفاده از متن کاوی پاسخ داده است: آيا از آسيب پذيری بهره کشی خواهد شد؟ چه زمانی از آسيب پذيری موجود بهره کشی خواهد شد؟ اين مقاله در مقايسه با CVSS(که يکی از متريکهای معروف آسيب پذيری است) به نتايج خوبی رسيده است. در اين پژوهش به سوالات فوق و به سوالات جديد زير دقت بالايي پاسخ داده شده است:اگر سيستمی مورد بهره کشی قرار گرفته، چه زمانی اين بهره کشی آغاز شده است؟ (دقت پاسخها بين 94.5-84%)اگر سيستمی آسيب پذير است، چه زمانی بسته اصلاح شده آن از سوی سازندگان ارائه خواهد شد؟ (دقت پاسخها بين 91-68%)در زمينه خوشه بندی آسيب پذيریها، تاکنون تحقيقات زيادی انجام شده است. پايگاه داده OSVDBدارای دسته بندیهای مختلفی برای آسيب پذيریها میباشد، اما هيچ يک از اين دستهها بر اساس توصيف آسيب پذيریها نيست. در اين تحقيق آسيب پذيریها با استفاده از توصيفهايشان خوشه بندی شدهاند، که دستههای حاصل عبارتند از: سرريز بافر، رد سرويس، دستکاری داده، کنترل از راه دور، پيکربندی نامناسب، شکاف در رمز عبور، دسترسی غير مجاز به اطلاعات، و دسترسی غير مجاز به سرويس. برای انتساب آسيب پذيریها به دستههای مناسب به صورت دستی به تجربه نيروی انسانی نياز است و انجام اين کار بسيار ملال آور میباشد. دسته بندی ارائه شده در اين پژوهش، امکان ساخت نرم افزاری که بتواند آسيب پذيریها را به طور خودکار به دستههای مناسب نسبت دهد، را فراهم میکند.در اين پژوهش از دو پايگاه داده معروف آسيب پذيریها (OSVDBو CVE)، و اطلاعات تاريخ آسيب پذيریها که استفان فری در اختيارمان قرار داد، استفاده شده است. برای پيش بينی بهره کشی از کلاس بندی کنندههای ماشين بردار پشتيبانی و جنگل تصادفی، و برای انجام خوشه بندی از روش نگاشت خود سازمانده نوخاسته استفاده شده است.فهرست مطالب عنوانصفحهفصل اول: مقدمه11-1-آسیبپذیری21-1-1-تعریف آسیبپذیری21-1-2- کلاس بندی آسيبپذيریها31-1-3- علتهای ايجاد آسيبپذيریها41-1-4- شناسايي و حذف آسيبپذيریها51-2- مفاهيم اوليهی مورد نياز51-2-1- متن کاوی51-2-2- کلاسبندی و پيش بينی81-2-3- خوشهبندی121-2-4- انتخاب ويژگی141-3- هدف تحقيق16فصل دوم: مروری بر تحقیقات پیشین182-1- نقش افراد و فرآيندهای مختلف بر آسيبپذيریها192-2- روشهای ارزيابی و رده بندی آسيبپذيریها242-2-1- سيستم نمره دهی آسيبپذيری متعارف252-3- دسته بندی آسيب پذيریها302-4- پيش بينیهای امنيتی با استفاده از گزارشهای آسيب پذيریها362-5- تشخيص آسيب پذيریها با استفاده از سورس کد نرم افزارها36فصل سوم: دادههاوروشاستخراجويژگیها393-1- دادههای تحقيق403-2- روش استخراج ويژگیها برای کلاسبندی و پيشبينی443-3- روش استخراج ويژگیها برای خوشهبندی47فصل چهارم: روش انجام و نتايج آزمايشات504-1- روش و نتايج آزمايشات کلاسبندی و پيشبينی514-1-1- پيشبينی بهره کشی برون خط514-1-2- پيشبينی بهره کشی برخط544-1-3- پيشبينی زمان564-2- مقايسه OSVDB و CVE624-3- ارزيابی ويژگیها644-4- خوشه بندی آسيب پذيریها664-4-1- تحليل دستههای موجود در پايگاه داده OSVDB684-4-2- ارائه دسته بندی آسيب پذيریها784-4-3- ارزيابی دستهبندی ارائه شده84فصل پنجم: بحث و نتيجهگيري875-1- پيش بينی بهره کشی از آسيب پذيریها885-2- خوشه بندی آسيب پذيریها89نتيجه گيری89پيشنهادات برای پژوهشهای آينده90منابع و ماخذ91 فهرست جدولها عنوانصفحهجدول 3- 1: ويژگیهای استخراج شده از هر صفت47جدول 4- 1: دسته بندی بهره کشی آسيب پذيریها و نحوه برچسب زنی52جدول 4- 2: نتايج پيش بينی بهره کشی برون خط برای تعداد کلاس بندی کنندههای مختلف53جدول 4- 3: دقت پيش بينی در آزمايش برون خط برای 9 کلاس بندی کننده54جدول 4- 4: پيش بينی اينکه آيا از آسيب پذيری در T روز آينده بهره کشی خواهد شد يا نه58جدول 4- 5: پيش بينی اينکه آيا از آسيب پذيری در T روز آينده بهره کشی خواهد شد يا نه با روش 10 اعتبار متقاطع 10 قسمتی58جدول 4- 6: پيش بينی اينکه آيا از آسيب پذيری در T روز گذشته بهره کشی شده است يا نه59جدول 4- 7: پيش بينی اينکه آيا از آسيب پذيری در T روز گذشته بهره کشی شده است يا نه، با روش 10 اعتبار متقاطع 10 قسمتی59جدول 4- 8: پيش بينی اينکه آيا بسته اصلاح شده در T روز آينده ارائه خواهد شد يا نه60جدول 4- 9: پيش بينی اينکه آيا بسته اصلاح شده در T روز آينده ارائه خواهد شد يا نه، با روش 10 اعتبار متقاطع 10 قسمتی60جدول 4- 10: نتايج متوازن سازی، نامتوازنترينگروههای پيش بينی زمانی61جدول 4- 11: مقايسه OSVDB و CVE در پيش بينی بهره کشی برون خط63جدول 4- 12: مقايسه OSVDB و CVE برای پيش بينی زمان بهره کشی برای آسيب پذيریهای روز –مثبت64جدول 4- 13: مقايسه OSVDB و CVE برای پيش بينی زمان بهره کشی برای آسيب پذيریهای روز –منفی64جدول 4- 14: مقايسه OSVDB و CVE برای پيش بينی زمان ارائه بسته اصلاح شده64جدول 4- 15: گزارش مختصری از ويژگیهای انتخاب شده65جدول 4- 16: انواع دسته بندی آسيب پذيری موجود در OSVDB67جدول 4- 17: درصد کل نمونههادرهردسته80جدول 4- 18: نمونهای از آسيب پذيریهای هر دسته81جدول 4- 19: نمونهای از آسيب پذيریهای دارای همپوشانی در دستهها83جدول 4- 20: فاصله منهتن برای دستههابهروشESOM85جدول 4- 21: فاصله منهتن برای دستههابهروشK- ميانگين85 فهرست تصاویر عنوانصفحهتصوير 1- 1: مراحل متعارف متن کاوی7تصوير 2- 1: چرخه آسيب پذيری تعريف شده بوسيله رويدادهای مشخص. توالی دقيق رويدادها بين آسيب پذيریها متفاوت است (برگرفته از 16)20تصوير 2- 2: فرآيندهای اصلی اکوسيستم امنيتی و رابطه رويدادهای چرخه آسيب پذيری (برگرفته از 16)21تصوير 2- 3: متريکهایCVSS (برگرفته از 24)25تصوير 2- 4: وابستگی متريکهایCVSS (برگرفته از 24)25تصوير 2- 5: فرمول معيار پايه در CVSS26تصوير 2- 6: فرمول معيار زمانی در CVSS27تصوير 2- 7: فرمول معيار محيطی در CVSS28تصوير 2- 8: مدل ساده شدهای از چرخه آسيب پذيریها (برگرفته از 29)29تصوير 2- 9: احتمالات محاسبه شده؛ P0، P1، P2 و P3 برای تصوير 2-8 (محور افق زمان t را نشان میدهد) (برگرفته از 29)30تصوير 3- 1: شمای پايگاه داده OSVDB (برگرفته از 44)41تصوير 3- 2: مراحل پيش پردازش دادههابرای پيش بينی بهره کشي43تصوير 3- 3: مراحل پيش پردازش دادههابرای خوشه بندی آسيب پذيریها44تصوير 3- 4: مراحل استخراج ويژگیها برای کلاس بندی و پيش بينی46تصوير 3- 5: مراحل استخراج ويژگیها برای خوشه بندی49تصوير 4- 1: پارامترهای ورودیESOM70تصوير 4- 2: اجرای خوشه بندیESOM با 1359 ويژگی، الگوريتم آموزش k دسته، تعداد ستونها 82 وتعدادسطرها 50،تعدادگامهای آموزش 20، روش وزن دهی اوليه گوسی71تصوير 4- 3: اجرای خوشه بندیESOM با 1359 ويژگی، الگوريتم آموزش برخط، تعداد ستونها 82 وتعدادسطرها 50،تعدادگامهای آموزش 20، روش وزن دهی اوليه گوسی72تصوير 4- 4: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش برخط، تعداد ستونها 82 وتعدادسطرها 50،تعدادگامهای آموزش 20، روش وزن دهی اوليه گوسی73تصوير 4- 5: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش برخط، تعداد ستونها 90 وتعدادسطرها 90،تعدادگامهای آموزش 30، روش وزن دهی اوليه گوسی74تصوير 4- 6: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش k دسته، تعداد ستونها 100 وتعدادسطرها 120،تعدادگامهای آموزش 40، روش وزن دهی اوليه گوسی75تصوير 4- 7: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش برخط، تعداد ستونها 90 وتعدادسطرها 60،تعدادگامهای آموزش 30، روش وزن دهی اوليه انتخاب اعداد تصادفی از فاصله ميانگين منهای 2 برابر انحراف معيار تا ميانگين بعلاوه 2 برابر انحراف معيار76تصوير 4- 8: اجرای خوشه بندیESOM با 586 ويژگی، الگوريتم آموزش k دسته، تعداد ستونها 90 وتعدادسطرها 60،تعدادگامهای آموزش 30، روش وزن دهی اوليه انتخاب اعداد تصادفی از فاصله ميانگين منهای 2 برابر انحراف معيار تا ميانگين بعلاوه 2 برابر انحراف معيار77تصوير 4- 9: نمونههاييازنقشههای بررسی شده78تصوير 4- 10: خوشههای انتخاب شده بروی نقشه مشخص شده است.79تصوير 4- 11: نقشههای از اجرا با پارامترهاییکسان82 فهرست نمودارها عنوانصفحهنمودار 4- 1: درصد خطای تجمعی کل، خطای منفی غلط و خطای مثبت غلط در آزمايش برخط55نمودار 4- 2: تاثير تعداد نمونههابردقتپيشبينی روشهایSVM و جنگل تصادفی (برگرفته از (53))62 مقدمه 1-1- آسيب پذيری[1] در مباحث امنيت کامپيوتر، يک آسيب پذيری، ضعفی است که برای مهاجم امکان سوء استفاده از اطلاعات يک سيستم را فراهم میکند. سالانه هزاران آسيب پذيری کشف و گزارش میشوند و ميليونها دلار در سرتاسر دنيا صرف مقابله با آسيب پذيریها میگردد. برای بهره کشی از آسيب پذيری يک سيستم عموماً به سه عامل نياز است: حساسيت يا نقصی در سيستم، دسترسی مهاجم به نقص و توانايي مهاجم برای بهره کشی از نقص (1). 1-1-1- تعريف آسيب پذيری آسيب پذيری از جمله مفاهيمی است که منابع مختلف تعاريف متفاوتی را برايش ارائه دادهاند. از جمله اين تعاريف میتوان به موارد زير اشاره کرد:ISO 27005: ضعف يک دارايی يا گروهی از داراييها که میتواند توسط فرد يا گروهی از افراد مورد بهره کشی قرار گيرد (2). در اين تعريف دارايي به معنای هر چيزی که برای سازمان ارزشی داشته باشد، است، برای مثال منابع اطلاعاتی مورد حمايت سازمان.IETF RFC 2828: يک عيب يا ضعف در طراحی، پياده سازی، عملکرد يا مديريت سيستم، که میتواند باعث بهره کشی، در جهت نقض سياست امنيتی سيستم شود (3).کميته ملی سيستمهای امنيتی ايالات متحده آمريکا[2]، در دستورالعمل CNSSشماره 4009، در تاريخ 26 آوريل 2010، واژه نامه تضمين اطلاعات ملی: آسيب پذيری ضعف در يک IS، روشهای امنيتی سيستم، کنترلهای داخلی يا پياده سازی است، که میتواند منجر به بهره کشی شود (4).ENISA: وجود يک ضعف طراحی يا خطای پياده سازی که بتواند منجر به رويداد غير منتظره نامطلوبی شود، که اين رويداد امنيت سيستم کامپيوتر، شبکه، برنامه يا پروتکل را به خطر اندازد (5).گروه باز[3]: حالتی که قدرت مهاجم بيش از قدرت مقاومت در برابر آن باشد (6).تحليل عاملی از خطر اطلاعات[4](FAIR): احتمال اينکه يک دارايي قادر به مقاومت در برابر عوامل خطر نباشد (7).امنيت داده و کامپيوتر، فرهنگ لغات مفاهيم و لغات استاندارد، نويسندگان دنيس لانگلی[5] و مايکل شين[6]، استاکتون پرس[7]، ISBN 0-935859-17-9: 1-1-2- کلاس بندی آسيب پذيریها آسيب پذيریها، براساس نوع دارايي به دستههای زير تقسيم میشوند (2): 1-1-3- علتهای ايجاد آسيب پذيریها برخی از منابع و علتهای ايجاد آسيب پذيریها عبارتند از:ورودیهای کاربر کنترل نشده: برنامهها فرض میکنندکه همهی ورودیهای کاربر امن است. برنامههايي که ورودیهای کاربر را بررسی نمیکنند، در واقع امکان اجرای مستقيم دستورات ناخواسته و دستکاری در پايگاه دادهها را فراهم میکنند