کلیه مطالب این سایت فاقد اعتبار و از رده خارج است. تعطیل کامل



آخرین مطالب


جستجو


 



فهرست

عنوان                                                                                                                              صفحه

فصل اول :  مقدمه و کلیات تحقیق. ۱

۱-۱) تعریف سیستم تشخیص نفوذ : ۲

۲-۱) اما چه چیزهایی سیستم تشخیص نفوذ نیست؟ ۲

۳-۱ ) دسته بندی حملات : ۴

۴-۱) انواع دسته بندی سیستم های تشخیص نفوذ : ۴

۱-۴-۱) روش های تشخیص نفوذ. ۶

۱-۱-۴-۱) روش تشخیص امضاء : ۶

۲-۱-۴-۱) روش تشخیص بر اساس ناهنجاری : ۶

۳-۱-۴-۱) روش ترکیبی : ۷

۲-۴-۱) دسته بندی براساس ساختار سیستم حفاظتی. ۸

۱-۲-۴-۱) سیستم تشخیص نفوذ مبتنی بر میزبان : ۸

۲-۲-۴-۱) سیستم تشخیص نفوذ مبتنی بر شبکه : ۹

۳-۲-۴-۱) مدل ترکیبی: ۹

۳-۴-۱) دسته بندی از لحاظ ساختار پردازشی: ۱۰

۴-۴-۱) دسته بندی بر اساس نوع منابع داده: ۱۰

۵-۴-۱) دسته بندی براساس رفتار بعد از حمله: ۱۰

۶-۴-۱) دسته بندی بر اساس جنبه های زمانی. ۱۰

 

فصل دوم : ادبیات و پیشینه تحقیق. ۱۲

۱-۲) داده کاوی: مقدمه. ۱۳

‫۲-۲) داده کاوی: مفاهیم کلی ۱۳

۳-۲) روال داده کاوی ۱۶

۱-۳-۲) بیان مسأله و فرمول بندی فرضیه ۱۷

۲-۳-۲) گردآوری داده ۱۷

۳-۳-۲)  انجام پیش پردازش ۱۸

۴-۳-۲) تشخیص و حذف داده های زائد ۱۸

۵-۳-۲) برآورد مدل (کاوش داده) ۱۹

۶-۳-۲) تعبیر مدل و استخراج نتایج ۱۹

۴-۲) آشنایی با مجموعه داده KDD : 20

۵-۲) ماشین های بردار پشتیبان. ۲۳

۱-۵-۲) دسته بندی کننده بردار پشتیبانی. ۲۴

۲-۵-۲) SVC با حاشیه انعطاف پذیر. ۳۰

۳-۵-۲) کرنل: ۳۳

۱-۳-۵-۲) انواع کرنل ها : ۳۵

۴-۵-۲) مقایسه ماشین های بردار پشتیبان با شبکه های عصبی. ۳۵

۳-۵-۲) نقاط ضعف ماشین های بردار پشتیبان. ۳۶

فصل سوم : روش تحقیق. ۳۹

۱-۳) بهینه سازی.. ۴۰

۲-۳) مقایسه ریشه یابی با بهینه سازی: ۴۰

۳-۳) انواع بهینه سازی: ۴۱

۴-۳) فراابتکاری.. ۴۲

۵-۳) انواع الگوریتم‌های ابتکاری.. ۴۴

۱-۵-۳) الگوریتم ژنتیک.. ۴۶

۱-۱-۵-۳) مراحل انجام الگوریتم ژنتیک.. ۴۷

۲-۱-۵-۳) عملگرهای الگوریتم ژنتیک: ۴۷

۳-۱-۵-۳) شرایط خاتمه برای الگوریتم ژنتیک.. ۵۸

۲-۵-۳) الگوریتم رقابت استعماری (ICA) 58

۷-۲-۵-۳) مراحل الگوریتم رقابت استعماری.. ۶۹

۳-۵-۳) الگوریتم بهینه سازی توده ذرات (PSO ) 71

مراحل الگوریتم PSO.. 72

فصل چهارم : محاسبات و یافته های تحقیق. ۷۳

فصل پنجم: نتیجه گیری و پیشنهادات.. ۸۳

مراجع: ۸۵

 

 

فهرست جداول

عنوان                                                                                                                                       صفحه

جدول ۲- ۱ دسته بندی رکورد های انتخابی بر اساس الگوریتم های اعمالی. ۲۲

جدول ۲-۲ بررسی ویژگی های رکوردهای موجود در KDD CUP 99. 88

جدول ۴-۱ نتایج حاصل از ترکیب الگوریتم های فراابتکاری با ماشین های بردار پشتیبان چندکلاسه ۷۶

موضوعات: بدون موضوع  لینک ثابت
[شنبه 1400-03-01] [ 02:35:00 ب.ظ ]




تعریف سیستم تشخیص نفوذ :

سیستم تشخیص نفوذ[۱] (IDS) یک سیستم دفاعی است که فعالیت های خصمانه در یک شبکه کامپیوتری را پیدا می کند. به عبارت دیگر مهمترین مسئله در این سیستم ها این است که اغلب فعالیت هایی که ممکن است امنیت سیستم را به خطر بیندازد و یا کارهایی که منجر به شروع یک خرابکاری در سیستم  بشود را تشخیص می دهد مانند شناسایی اولیه اطلاعات سیستم ها و یا فاز جمع آوری داده که منجر به آسیب رساندن به سیستم می شود مانند عملیات اسکن پورت های سیستم.

یک ویژگی مهم سیستم های تشخیص نفوذ توانایی آن ها در نمایش فعالیت های غیرنرمال در شبکه می باشد مانند تلاش کاربران برای ورود به محیط های غیر مجاز و اعلام خطر به مدیر سایت.

علاوه بر آن یک سیستم تشخیص نفوذ این توانایی را دارد که بتواند حملاتی که از داخل یک سازمان و یا خارج از سازمان به داخل آن می شود را تشخیص دهد.

۲-۱) موارد زیر جزء سیستم های تشخیص نفوذ نمی باشد:

برای درک بهتر سیستم های تشخیص نفوذ باید گفت که برخلاف لغات و اصطلاحات بکار رفته در تعاریف بالا هر چیزی را نمی توان در این دسته بندی قرار داد. به صورت منحصر به فرد ابزار های زیر یک سیستم تشخیص نفوذ نمی باشد:

۱-۲-۱ ) ابزارهایی که برای نگهداری گزارش روزانه یک سیستم بکار می رود به عنوان مثال تشخیص انواع آسیب پذیری هایی که منجر به از کار افتادن سیستم می شود. این ابزارها سیستم های مانیتور ترافیک شبکه می باشند.

۲-۲-۱ ) ابزارهایی که برای تشخیص آسیب پذیری های مربوط به باگ و عیب سیستم های عامل و سرویس های شبکه بکار می روند برای مثال Cyber Cop Scanner

۳-۲-۱ ) ابزارهایی که برای تشخیص نرم افزارهای مخرب مانند ویروس ها، اسب های تروجان، کرم ها و بمب های منطقی طراحی شده اند. اگر چه این موارد بسیار شبیه ویژگی های سیستم های تشخیص نفوذ می باشند یا به عبارت دیگر می توانند زمینه را برای یک نفوذ آماده کنند.

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

واحد پنهان کننده : یک برنامه گمراه کننده که باعث می شود ویروس بتواند خود را در کامپیوتر پنهان کند

واحد تکثیر کننده : یک برنامه تکثیر کننده که بوسیله آن ویروس می تواند خود را تکثیر کرده و برنامه بیشتری را آلوده کند.

واحد فعال کننده : یک کلید فعال کننده که باعث می شود ویروس در زمان خاصی یا بعد از انجام عمل خاصی  فعال شود.

واحد اجرایی :قسمت اجرایی ویروس که ممکن است فقط یک نمایش بدون خطر باشد و یا یک برنامه خطرناک که باعث وارد شدن صدمه به سیستم شود.

اسب های تروجان : بزرگترین تفاوت اسب های تروجان (تراوا) و یک ویروس این است که اسب های تراوا خودشان منتشر نمی شوند.

کرم ها : کرم های کامپیوتری برنامه های هستند که بطور مستقل تکثیر و اجرا و در سراسر ارتباطات شبکه منتشر میشوند.

موضوعات: بدون موضوع  لینک ثابت
 [ 02:35:00 ب.ظ ]




روش های تشخیص نفوذ

۱-۱-۴-۱) روش تشخیص امضاء[۱] :

روش تشخیص امضاء بر اساس داشتن الگویی از نفوذهای شناخته شده عمل میکند. در این روش، مسأله تشخیص نفوذ به یک مسأله دسته بندی تبدیل میشود و سیستم تشخیص نفوذ قادر است حمله هایی را که پیشتر الگوی آنها را در یک مرحله آموزشی فرا گرفته، تشخیص دهد. مهمترین خصیصه این روش آن است که سیستم امنیتی قادر است حمله های شناخته شده را با دقتی بالا و نرخ هشدار غلط خیلی کمتشخیص دهد. منظور از هشدار غلط هشداری است که هنگام عدم وقوع حمله توسط سیستم تشخیص نفوذ اعمال میگردد. وجود هشدار غلط حتی به میزان کم چنانچه بار ترافیکی عادی شبکه بالا باشد، باعث وقوع هشدارهای متعدد و خسته کننده میگردد. به همین دلیل نرخ تولید هشدار غلط توسط یک سیستم تشخیص نفوذ‫بایستی تا حد امکان پایین باشد. البته ذکر این نکته ضروری است که پایین نگه داشتن نرخ مزبور سبب‫کاهش توانایی سیستم در تشخیص حملات محتمل میگردد. به عبارتی بایستی میان دقت تشخیص بالا و نرخ هشدار غلط پایین نوعی تعادل برقرار نمود.[۶]

دانلود تحقیق و پایان نامه

۲-۱-۴-۱) روش تشخیص بر اساس ناهنجاری[۲] :

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

پس می توان گفت تکنیک های مبتنی بر ناهنجاری براین فرض بنا شده که بتوان رفتارهای مخربانه را از رفتارهای عادی سیستم تفکیک کرد[۱۵]

با توجه به انواع روش های ذکر شده برای تشخیص نفوذ به شبکه، مشخص است که هر روش نقاط ضعف وقوت مربوط به خودش را دارا میباشد. دقت بالا در تشخیص حملات و نرخ هشدار غلط پایین از جملهویژگیهای اصلی در روش تشخیص امضاء میباشد. در عین حال روش مزبور توانایی تشخیص حمله های جدید را دارا نمی باشد. روش تشخیص ناهنجاری با وجود داشتن توانایی بالا در تشخیص حمله های جدید،‫دارای نرخ هشدار غلط بالایی است.

 

۳-۱-۴-۱) روش ترکیبی[۳] :

در این روش که معمولا روش بهتری محسوب می شود سیستم تشخیص نفوذ مزایای دو حالت قبل را با هم مورد استفاده قرار می دهد. ابتدا سیستم حملات شناخته شده را بر اساس تکنیک های روش مبتنی بر امضاء پیدا می کند و برای سایر حملات جدید که الگویی برای شناسایی آنها در پایگاه اطلاعاتی خود ندارد از روش مبتنی بر ناهنجاری استفاده می کند[[۲۳],[۳۵ .[۳۲],

آقایان Zhang  و Zulkernine در [۲۱] یک مدل ترکیبی از سیستم های تشخیص نفوذ ارائه دادند که در واقع با بهره گرفتن از الگوریتم Random Forest ابتدا حملات شناخته شده را از طریق ماژول مبتنی بر امضاء پیدا می کند و سپس حملات خارج از پایگاه اطلاعاتی را با بهره گرفتن از همان الگوریتم و ماژول مبتنی بر ناهنجاری پیدا می کند. برای ارزیابی از مجموعه داده KDDCUP 1999 استفاده کرد که نتایج حاکی از آن است این سیستم ترکیبی ۹۴٫۷ درصد حملات را با تنها حدود ۲ درصد نرخ هشدار غلط توانسته پیدا کند.

 

[۱] Signature Detection

[۲] Anomaly Detection

[۳] Hybrid

موضوعات: بدون موضوع  لینک ثابت
 [ 02:35:00 ب.ظ ]




داده کاوی: مقدمه

بطور خلاصه داده کاوی[۱] عبارت است از کاوش یا استخراج دانش در مجموعه عظیمی از داده ها. ‫رشد روز افزون داده در شاخه های مختلف صنعت و علوم باعث شده است تا از کامپیوتر و علوم مربوط به آن جهت پردازش این حجم بالا از داده ها استفاده شود. بطور کلی هدف از پردازش داده ها، استخراجاطلاعات و دانش از آنها به گونه ای است که بتوان در علوم و کاربردهای دیگر از آنها استفاده نمود. کاوشداده عبارت است از اعمال روش های مبتنی بر کامپیوتر جهت استخراج دانش از روی داده های خام. در‫سالهای اخیر روش های مختلف و متنوعی جهت کشف و استخراج دانش از روی داده های خام ارائه شده‫است. دانش مزبور پس از استخراج شدن قابل ارزیابی توسط اشخاص خبره می باشد. با توجه به ارزیابی‫افراد خبره و همچنین روش های موجود در بررسی کیفیت دانش استخراج شده، این امکان وجود دارد تا ‫کارآیی الگوریتم کاوشگر دانش مورد مطالعه و بررسی قرار گیرد.,[۴] [۲۵]

‫۲-۲) داده کاوی: مفاهیم کلی

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

با رشد علم کامپیوتر و‫افزایش داده های متنوع در علوم مختلف، امکان استخراج مدلهای حاکم بر مسائل گوناگون از روی‫داده های مزبور میسر است.

‫نیاز به درک وقایع نهفته در حجم انبوهی از داده ها در زمینه های مختلف تجاری، علوم و مهندسی وجوددارد. در دنیای تجارت، داده های شرکت و مشتری به عنوان منابع اصلی تصمیم گیری شناخته می شوند. استفاده مناسب از داده های مزبور میتواند نقش تعیین کننده ای را در موفقیت و پیشرفت یک مجموعهتجاری ایفا کند.

فرایند استفاده از یک روش مبتنی بر کامپیوتر جهت استخراج دانش از داده های خام را میتوان یک تعریف کلی برای داده کاوی در نظر گرفت.

۱-۲-۲) اهداف مختلف داده کاوی به دو دسته زیر تقسیم بندیمیشوند:

۱-۱-۲-۲) پیش بینی[۲]: شامل استفاده کردن از برخی متغیرها یا فیلدها در مجموعه داده ها جهت پیش بینی مقادیر نامشخص میباشد.

 

‫۲-۱-۲-۲) توضیح یا توصیف[۳]: تمرکز این قسمت بیشتر بر روی استخراج الگوهای توصیف کننده مجموعه داده ها به گونه ای است که توصیف مزبور قابل درک و تفسیر به کمک انسان خبره باشد.

‫اهمیت هر کدام از اهداف فوق با توجه به کاربرد خاص داده کاوی متفاوت است.

۲-۲-۲)  کاربردهای مختلفداده کاوی در ادامه ارائه شده اند:

‫۱-۲-۲-۲) دسته بندی[۴]: هدف در دسته بندی، کشف یک مدل پیشگویی کننده به قسمی است که مدل مزبور توانایی دسته بندی یک داده ورودی را به یکی از مجموعه دسته های خروجی ممکن را دارا باشد.

‫۲-۲-۲-۲) رگرسیون[۵]: هدف در رگرسیون کشف یک مدل پیشگویی کننده با توانایی نگاشت یک نمونه داده ای به یک متغیر تخمینی است.

‫۳-۲-۲-۲) خوشه بندی[۶]: در خوشه بندی هدف یافتن مجموعه متناهی از دسته ها یا خوشه ها جهت توصیف داده ها می باشد.

  • ۲-۲-۲)خلاصه بندی[۷]: شامل روشهایی جهت یافتن توصیفی فشرده برای یک مجموعه داده می شود.
موضوعات: بدون موضوع  لینک ثابت
 [ 02:34:00 ب.ظ ]




تشخیص و حذف داده های زائد

در مجموعه داده هایی که معموال جهت کاوش به الگوریتم داده کاوی ارائه می شوند داده هایی وجود دارند‫که در تناقض با داده های دیگر می باشند. به طور معمول داده های مزبور نتیجه خطاهای اندازه گیری، کد‫کردن و یا ذخیره کردن هستند. گاهی اوقات هم این داده ها مقادیری غیر عادی هستند که منشاء کاملا‫طبیعی دارند. نمونه هایی از مجموعه داده های مورد کاوش که شامل داده های زائد هستند می توانند تأثیر منفی قابل توجهی را در مدل تولیدی الگوریتم داده کاوی داشته باشند. دو راه می توان جهت برخورد با داده های زائد معرفی نمود:

دانلود پایان نامه

الف- تشخیص و حذف داده های زائد به عنوان بخشی از مرحله پیش پردازش.

ب- ارائه مدلی مقاوم که نسبت به داده های زائد (نویزی) غیر حساس باشد.

نرمال کردن[۱]، کد کردن[۲] و انتخاب ویژگی ها[۳]

پیش پردازش داده ها شامل مراحل مختلفی نظیر نرمال و کد کردن متغیرها است. به عنوان مثال چنانچه دو ویژگی داشته باشیم که اولی تغییراتش در بازه [۰,۱]  دومی در بازه           [-۰٫۰۰۱,۱۰۰۰] باشد، چگونگی تأثیر این دو ویژگی در مدل بدست آمده توسط الگوریتم داده کاوی یکسان نخواهد بود و این اختلاف باعث تأثیر منفی در کارآیی مدل نهایی می گردد. به این ترتیب توصیه می شود که همیشه تمامی ویژگی ها‫در یک بازه یکسان نرمال شوند تا از تأثیر تفاوت بازه ها جلوگیری به عمل آید. همچنین با توجه به‫مسأله ای که قصد اعمال داده های آن را به الگوریتم داده کاوی داریم، گاهی اوقات با بکارگیری روش کدکردن خاصی میتوانیم ابعاد داده های ورودی را در مسأله مورد بررسی کاهش دهیم.

به عبارت دیگر تعداد ‫ورودی ها را با توجه به یک روش کد کردن خاص می توانیم کاهش دهیم. از آنجا که تعداد کم ورودی ها‫ همیشه اثری مهم در کاهش پیچیدگی مسأله و به تبع آن افزایش کارآیی الگوریتم داده کاوی در یافتن مدل نهائی می شود، انتخاب روش کدکردنی که بتواند باعث کاهش در تعداد ورودی های اعمالی به الگوریتم داده کاوی شود بسیار مورد توجه می باشد. استفاده از دانش قبلی در هر کدام از انواع روش های پیش پردازش ذکر شده میتواند در افزایش کارآیی فرایند پیش پردازش نقش به سزائی داشته باشد.

۵-۳-۲) برآورد مدل (کاوش داده)

انتخاب و پیاده سازی روش داده کاوی مناسب فرایند مهمی است که در این مرحله انجام می شود. به طور کلی روش ها و الگوریتم های مختلفی جهت یادگیری و تولید یک مدل بر اساس داده های ورودی وجود دارند. به نوعی الگوریتم های مزبور را می توان یک روال جستجو نیز در نظر گرفت. این روال سعی در یافتن مدلی می کند که به بهترین نحو داده های ورودی را پوشش دهد.

بایستی توجه نمود که الگوریتم داده کاوی که در این مرحله اجرا می گردد، با توجه به ماهیت مسأله ای که‫فرایند داده کاوی سعی در تحلیل داده های آن را دارد، طراحی می گردد.

[۱] Normalization

[۲] coding

[۳] Feature Selection

موضوعات: بدون موضوع  لینک ثابت
 [ 02:34:00 ب.ظ ]