شکل۴‑۱۵: نمودار ارزیابی مدلهای شبکه عصبی برحسب پارامتر دقت ۱۰۶
شکل۴‑۱۶: نمودار ارزیابی مدلهای شبکه عصبی برحسب پارامتر یادآوری ۱۰۶
شکل۴‑۱۷: نمودار ارزیابی مدلهای شبکه عصبی برحسب پارامتر F ۱۰۷
شکل۴‑۱۸: نموداره ارزیابی مدلهای شبکه عصبی برحسب پارامتر مختلف ۱۰۷
شکل۴‑۱۹:نمودار ارزیابی الگوریتمهای مدل قانونمحور برحسب پارامتر درستی ۱۱۶
شکل۴‑۲۰: نمودار ارزیابی الگوریتمهای مدل قانونمحور برحسب پارامتر دقت ۱۱۶
شکل۴‑۲۱: نمودار ارزیابی الگوریتمهای مدل قانونمحور برحسب پارامتر یادآوری ۱۱۷
شکل۴‑۲۲: نمودار ارزیابی الگوریتمهای مدل قانونمحور برحسب پارامتر F ۱۱۷
شکل۴‑۲۳: نمودار ارزیابی الگوریتمهای مدل قانون محور برحسب پارامتر مختلف ۱۱۸
شکل۴‑۲۴:نمودار ارزیابی الگوریتمهای مدل درخت برحسب پارامتر درستی ۱۲۷
شکل۴‑۲۵: نمودار ارزیابی الگوریتمهای مدل درخت برحسب پارامتر دقت ۱۲۸
شکل۴‑۲۶: نمودار ارزیابی الگوریتمهای مدل درخت برحسب پارامتر یادآوری ۱۲۸
شکل۴‑۲۷: نمودار ارزیابی الگوریتمهای مدل درخت برحسب پارامتر F ۱۲۹
شکل۴‑۲۸: نمودار ارزیابی الگوریتمهای مدل درخت برحسب پارامتر مختلف ۱۲۹
شکل۴‑۲۹: نمودار ارزیابی روشهای مختلف ماشین بردارپشتیبان برحسب پارامتر درستی ۱۳۵
شکل۴‑۳۰: نمودار ارزیابی روشهای مختلف ماشین بردارپشتیبان برحسب پارامتر یادآوری ۱۳۵
شکل۴‑۳۱: نمودار ارزیابی روشهای مختلف ماشین بردارپشتیبان برحسب پارامتر F ۱۳۶
شکل۴‑۳۲: نمودار ارزیابی روشهای مختلف ماشین بردارپشتیبان برحسب پارامتر دقت ۱۳۶
شکل۴‑۳۳: نمودار ارزیابی روشهای مختلف ماشین بردارپشتیبان برحسب پارامتر مختلف ۱۳۷
شکل ۴-۳۴: نمودار مربوط به مقایسه بین همه الگوریتمها بر حسب پارامترهای مختلف ۱۳۷
فصل اول
مقدمه و کلیات تحقیق
۱-۱ مقدمه
از آنجایی که از نظر تکنیکی ایجاد سیستمهای کامپیوتری بدون نقاط ضعف و شکست امنیتی عملا غیر ممکن است. تشخیص نفوذ در سیستمهای کامپیوتری با اهمیت خاصی دنبال می شود. سیستمهای تشخیص نفوذ سختافزار یا نرمافزاری است که کار نظارت بر شبکه کامپیوتری را در مورد فعالیتهای مخرب و یا نقص سیاستهای مدیریتی و امنیتی را انجام میدهد و گزارشهای حاصله را به بخش مدیریت شبکه ارائه میدهد[۱]. سیستمهای تشخیص نفوذ وظیف شناسایی و تشخیص هر گونه استفاده غیر مجاز به سیستم، سوء استفاده و یا آسیب رسانی توسط هر دودسته کاربران داخلی و خارجی را بر عهده دارند. هدف این سیستمها جلوگیری از حمله نیست و تنها کشف و احتمالا شناسایی حملات و تشخیص اشکالات امنیتی در سیستم یا شبکهکامپیوتری و اعلام آن به مدیر سیستم است. عموما سیستمهای تشخیص نفوذ در کنار دیوارهای آتش و بصورت مکمل امنیتی برای آنها مورد استفاده قرار میگیرد. سیستم های تشخیص نفوذ ستنی نمی توانند خود را با حملات جدید تطبیق دهند از این رو امروزه سیستم های تشخیص نفوذ مبتنی بر داده کاوی مطرح گردیدهاند[۱]. مشخص نمودن الگوهای در حجم زیاد داده، کمک بسیار بزرگی به ما می کند. روشهای داده کاوی با مشخص نمودن یک برچسب دودویی (بسته نرمال، بسته غیرنرمال) و همچنین مشخص نمودن ویژگیها و خصیصه با الگوریتمهای دسته بندی میتوانند داده غیرنرمال تشخیص دهند. از همین رو دقت و درستی سیستم های تشخیص نفوذ افزایش یافته و در نتیجه امنیت شبکه بالا میرود[۱].
در این پایان نامه سعی شده است با بهره گرفتن از روشهای مبتنی بر داده کاوی سیتم های تشخیص نفوذ پیشنهاد کنیم که از این روشها برای شناسایی و کشف حملات استفاده می کنند. در این روش ما تمامی الگوریتمهای موجود را شبیهسازی نموده و در خاتمه بهترین الگوریتم را پیشنهاد مینماییم. نوآوری اصلی در این پایان نامه، استفاده از الگوریتمهای مدل کاهل و مدل قانونمحور در داده کاوی است که تاکنون برای سیستمهای تشخیصنفوذ استفاده نشده است. همچنین استفاده از تمام الگوریتمهای موجود در روشهای دستهبندی است که در نرم افزار WEKA و Rapidminer موجود است[۶۷]. پیشنهاد ۵ نمونه داده که از داده اولیه استخراج شده و برای مدلهای مختلف و الگوریتمها بهترین جواب را میدهد از نوآوری این پایان نامه است. استخراج ۵ نمونه داده وقت بسیار زیادی به خود اختصاص داده وهمه الگوریتمهای مختلف موجود در مدلهای دستهبندی با مجموعه داده های مختلف شبیهسازی و اجرا شدند که در نهایت ۵ نمونه داده اولیه پیشنهاد نمودهایم.
۱-۲ بیان مسئله
در دنیای امروز، کامپیوتر و شبکه های کامپیوتری متصل به اینترنت نقش عمدهای در ارتباطات و انتقال اطلاعات ایفا می کند. در این بین افراد سودجو با دسترسی به اطلاعات مهم مراکز خاص یا اطلاعات افراد دیگر و با قصد اعمال نفوذ یا اعمال فشار و یا حتی به هم ریختن نظم سیستمها، به سیستم های کامپیوتری حمله می کنند. بنابراین لزوم حفظ امنیت اطلاعاتی و حفظ کارآیی در شبکه های کامپیوتری که با دنیای خارج ارتباط دارند، کاملا محسوس است.
مکانیزمهای امنیتی به ۲ گروه کلی محافظتی و مقابلهای تقسیمبندی میشوند. مکانیزمهای محافظتی سعی میکنند از اطلاعات و سیستم در مقابل حملات محافظت کنند. مکانیزمهای مقابلهای هم برای مقابله با حمله تدارک دیده شدهاند.[۱] سیستمهای تشخیص نفوذ مطابق تعریف مؤسسه ملی استانداردها و تکنولوژیهای آمریکا، فرایندی هستند که کار نظارت بر رویدادهایی که در شبکه و سیستم رخ میدهد و همچنین کار تحلیل رویدادهای مشکوک را برای بهدست آوردن نشانه نفوذ، بر عهده دارند.
۱-۳ اهمیت و ضرورت تحقیق
هدف از این پایان نامه استفاده از روشهای مبتنی بر داده کاوی برای تشخیص نفوذ است زیرا حملات همواره بروز میشوند و سیستمهای تشخیص نفوذ ستنی نمی توانند این حملات شناسایی کنند. وقتی نفوذ اتفاق میافتد مهمترین کار شناسایی است. رخداد مربوط به نفوذ در هر زمان مرتبط به الگویی ازاتفاقات است که در گذشته رخ داده است. این داده های تاریخی منبع بسیار مهمی از صفات هستند که نیاز هست تا بطور موثر علامت و نشانه های نفوذ در مجموعه داده ها مشخص شود. داده کاوی با کشف الگوهای مناسب از میان داده های قبلی به روند ساخت این مدل ها کمک شایانی می کند. در این روش مجموعه ای از قانونهای دستهبندی از داده های شبکه بدست می آید. این قانونها توانایی تعیین رفتار عادی از غیر عادی را دارا میباشند. این پایان نامه با بهره گرفتن از مجموعه داده DARPA مورد ارزیابی قرار گرفته است. هدف اصلی این پایان نامه معرفی بهترین الگوریتم با توجه به مجموعه داده ها است. که بتواند بسته های عادی را از غیر عادی تشخیص دهد. .نوآوری اصلی در پایان نامه، استفاده از الگوریتمهای مدل کاهل و مدل قانونمحور است که تاکنون برای سیستمهای تشخیصنفوذ استفاده نشده است. همچنین استفاده از تمام الگوریتمهای مجود در روشهای دستهبندی است که در نرم افزار WEKA و Rapidminer موجود است. و پیشنهاد ۵ نمونه داده که از داده اولیه استخراج شده و برای مدلهای مختلف و الگوریتمها بهترین جواب را میدهد. استخراج ۵ نمونه داده وقت بسیار زیادی به خود اختصاص داده وهمه الگوریتمهای مختلف موجود در مدلهای دستهبندی با مجموعه داده های مختلف شبیهسازی و اجرا شدند که در نهایت ۵ نمونه داده اولیه پیشنهاد نمودهایم.
۱-۴ اهداف تحقیق
شناسایی داده نرمال[۱] و غیرنرمال[۲] با بهره گرفتن از روشهای داده کاوی
استخراج مجموعه داده های متعدد برای ارزیابی بهتر شبیهسازی
بررسی تمام روشهای موجود در داده کاوی برای تشخیص نفوذ
مقایسه بین تمام الگوریتمهای موجود در هر مدل
عدم روشی موجود برای بررسی تمام الگوریتمها و مقایسه آنها
استفاده از پارامترهای متعدد ارزیابی
۱-۵ تعاریف و اختصار
نفوذ
نفوذ[۳] به عملیاتی اطلاق میشود که تلاش می کند برای دسترسی غیر مجاز به شبکه یا سیستم های کامپیوتری از مکانیسم امنیتی سیستم عبور کند. این عملیات توسط نفوذ کننده گان خارجی و داخلی انجام می شود.
سیستم های تشخیص نفوذ
سیستم تشخیص نفوذ[۴]، برنامهای است که با تحلیل ترافیک جاری شبکه یا تحلیل تقاضاها سعی در شناسایی فعالیتهای نفوذگر می کند و در صورتی که تشخیص داد ترافیک ورودی به یک شبکه یا ماشین، از طرف کاربر مجاز و عادی نیست بلکه از فعالیتهای یک نفوذگر ناشی میشود، به نحو مناسب به مسئول شبکه هشدار داده یا واکنش خاص نشان میدهد.
داده کاوی
داده کاوی[۵] عبارتست از فرایند یافتن دانش از مقادیر عظیم داده های ذخیره شده در پایگاه داده، انباره داده ویا دیگر مخازن اطلاعات
مدل بیزین
مدل بیزین[۶] نوعی از یادگیری با نظارت[۷] است که عضویت در یک دسته را با توجه به مقدار احتمال اینکه یک رکورد به کدام دسته تعلق دارد مشخص مینماید.
شبکه عصبی
شبکه عصبی[۸] نوعی از یادگیری با نظارت است که از مجموعه ای پیوسته از واحدهای ورودی خروجی وزندار تشکیل شده است. در طی مراحل یادگیری شبکه وزنها را بطور دقیق مقدار دهی مینماید یا عضویت هر داده ورودی در دسته را مشخص نماید.
درخت تصمیم
درخت تصمیم[۹] نوعی از یادگیری با نظارت است که از ساختاردرخت برای مشخص کردن عضویت در دسته استفاده می کند. برگها نوع دسته ها و نود میانی حالات مختلف رسیدن تا جواب نهایی را نشان میدهد.
مدل کاهل