شناسایی بات نت ها با استفاده از جریان های شبکه و عامل های هوشمند یادگیر مبتنی بر الگوریتم بیزین
دسته بندي :
کالاهای دیجیتال »
رشته کامپیوتر و IT (آموزش_و_پژوهش)
بات نت (Botnet) یکی از مهمترین تهدیدکننده امنیتی در چند سال اخیر شناختهشده است. گستردگی ارتباطات، به اشتراکگذاری منابع، حس کنجکاوی، کسب پول، جمعآوری اطلاعات و به دست آوردن ظرفیت منابع، انگیزههایی برای ایجاد بات نت میباشند. بات نتها توسط مهاجمان برای انجام دادن فعالیتهای بدخواهانه و غیرقانونی، از راه دور کنترل میشوند. بات نتها بسیاری از حملات خطرناک از قبیل جلوگیری از سرویس توزیعشده، هرزنامه، فعالیتهای جعلی و غیره انجام میدهند. با توجه به معماری C&C بات نتها تشخیص حملات آنها نیز مشکل میشود معماری غیرمتمرکز و ترکیبی تشخیص اینگونه بات نتها را مشکل کرده است البته خوشبختانه بیشتر بات نتها معماری متمرکزی دارند. ما در این پژوهش برای شناسایی بات نتها از روش یادگیری دستهبندی ساده بیز استفاده کردیم تا یادگیری انجام و مدل برحسب آن ساخته شود و برحسب آن پیشگویی اینکه آیا میزبانی بات هست یا نه؟ انجام گیرید. این روش برخلاف روشهای دستهبندی دیگر مانند درخت تصمیم و نزدیکترین همسایه و... دارای پیچیدگی کمتر، اثبات بهینگی، حساسیت نداشتن به دادههای نامتقارن و... دارا است و با یک سری پیشپردازشهای دستی و انتخاب ویژگی بهصورت هوشمند به بهینه شدن روش کمک کردیم درروش هوشمند از الگوریتم انتخاب ویژگی information Gain و نرمافزار Weka جهت انتخاب ویژگی مؤثر استفادهشده است که در ارزیابیها نشان دادهشده که فاز انتخاب ویژگی بر کارایی ساده بیز تأثیر دارد و باعث بهبود عملکرد ساده بیز میشود. برای ارزیابی روش پیشنهادی از مجموعه داده آماده Waledac, Storm و آزمایشگاه ترافیک اریکسون استفادهشده است؛ که در مقایسهای که از روش پیشنهادی با الگوریتم KNN داشتیم، روش بیز دارای کارایی بیشتری ازنظر حساسیت به نسبت KNN دارا بود.
واژههای کلیدی: بات نت (Botnet)، دستهبندی، ساده بیز
فهرست مطالب
چکیده . 1
فصل 1 کلیات تحقیق . 2
1.1 مقدمه . 3
1.2 تاریخچه . 5
1.3 سوالات تحقیق . 9
1.4 فرضیه های تحقیق 9
1.5 تعاریف 10
1.5.1 بات نت . 10
1.5.2 بات نت C&C . 10
1.5.3 شبکه های بیزین . 11
1.5.4 الگوریتم بیزین . 12
1.5.5 جریان شبکه . 13
1.5.6 یادگیری ماشین . 15
1.5.6.1 ماشین بردار پشتیبان . 17
1.5.6.2 شبکه های عصبی مصنوعی . 17
1.5.6.3 درخت های تصمیم . 18
1.5.6.4 k نزدیکترین همسایه . 19
1.5.6.5 دسته بندی کننده ساده بیز . 20
1.5.6.5.1 تئوری بیز . 25
فصل 2 مرور بر کارهای گذشته . 29
2 مقدمه . 30
2.1 معماری دستور و کنترل . 30
2.1.1 سرورهای C&C متمرکز . 31
2.1.2 سرور C&C مبتنی بر P2P . 32
2.1.3 سرور C&C بدون ساختار . 33
2.2 رخداد های رها سازی . 34
2.3 پروتکل ارتباطی . 35
2.4 مکانیزم صف آرایی . 36
2.4.1 IP سخت کد گذاری شده . 36
2.4.2 نام دامنه DNS پویا . 37
2.4.3 سرویس DNS توزیعی . 37
2.5 حملات . 38
2.5.1 حملات DDOS . 38
2.5.2 اسپمینگ . 38
2.5.3 خرناس . 39
2.5.4 جعل کلیک . 39
2.5.5 جعل هویت . 39
2.6 تحلیل رفتاری . 40
2.6.1 رفتارهای مبتنی بر شبکه . 40
2.6.2 رفتارهای مبتنی بر میزبان . 41
2.6.3 رفتارهای همبسته جهانی . 41
2.7 تحلیل سه ربات . 42
2.7.1 زئوس . 42
2.7.2 کوب فیس . 43
2.7.3 تورپینگ . 45
2.7.4 نتیجه گیری . 46
فصل 3 روش پیشنهادی . 48
3 روش پیشنهادی . 49
3.6 معماری روش پیشنهادی . 51
3.6.1 شبیه سازی داده ها . 54
3.6.2 تحلیل بسته های شبکه، استخراج آمار و ارقام . 56
3.6.3 پیش پردازش دستی داده . 57
3.6.4 انتخاب ویژگی . 58
3.6.5 اجرای الگوریتم بیزین . 59
3.7 پیاده سازی و شبه کد روش پیشنهادی . 63
3.8 ویژگی های روش پیشنهادی . 64
فصل 4 نتایج روش پیشنهادی . 66
4 نتایج روش پیشنهادی . 67
4.1 پلتفرم اجرا . 68
4.2 نتایج اجرا . 71
4.2.1 تاثیر انتخاب ویژگی . 73
4.2.2 مقایسه الگوریتم KNN و ساده بیز 76
4.3 نتیجه گیری و پیشنهادات . 77
منابع و مراجع 78
منابع فارسی 79
منابع انگلیسی . 79
چکیده انگلیسی . 82