يك نفوذ بهعنوان مجموعهای از عملیاتهایی تعريف میشود كه تلاش میکنند يكپارچگي، محرمانگي و در دسترس بودن يك منبع را به مخاطره اندازد. سیستم¬ تشخیص نفوذ، نرم¬افزار یا سخت¬افزاری است که عمل تشخیص نفوذ را بهطور خودکار انجام می¬دهد.همچنین يك سيستم تشخیص نفوذ (IDS) ، دسترسي كاربر به سيستم كامپيوتر را با اجراي قوانين خاص ، بازبيني و محدود میکند. بسیاری از قوانین مورد استفاده در سیستم های تشخیص نفوذ از آنالیز و پردازش حملات صورت گرفته در گذشته بدست می آید. امروزه با توجه به به کارگیری گسترده از شبکه¬های بی¬سیم و آسیب پذیری بالاتر این شبکه ها ، بحث تشخیص و جاوگیری از نفوذ با جدیت بیشتری دنبال می شود. همبسته سازی هشدارها یک روش تحلیلی است که در آن هشدارهای صادر شده از منابع امنیتی شبکه در چندین مرحله مورد ارزیابی قرار می گیرند تا به مدیر کمک میکنند دیدی سطح بالا از شبکهی تحت مراقبت ارائه دهند. روش¬های مختلفی برای همبسته سازی هشدار پیشنهادشده است. در این میان روش¬هایی که از داده¬کاوی و یادگیری ماشین استفاده می¬کنند، بیشتر موردتوجه هستند.در این تحقیق مدلی مبتنی بر شبکه عصبی هوشمند و درخت تصمیم برای همبسته سازی ، پیشنهادشده است. در این مدل، شبکه عصبی با استفاده از داده های خوشه بندی شده آموزش می بیند. برای افزایش سرعت آموزش استفاده از الگوریتم ژنتیک به منظور تعیین بهینه محدوده ویژگی ها پیشنهاد شده است. نتایج نشان از کارایی روش فوق در مقایسه با روشهای دیگر را دارد. می توانید این پروژه مدیریت فناوری اطلاعات را به صورت فایل word دانلود نمایید.
مقدمه
امروزه حملات و خرابکاري هاي متعددي که در شبکه رخ می دهد، و عملکرد بسياري از مشتريان و استفاده کنندگان از شبکه را مورد تهديد قرار می دهد، شرکت هاي امنيتي را بر آن داشته تا بيش از پيش در پي يافتن راهکارهايي براي حفظ امنيت در شبکه باشند. به منظور بالا بردن سطح امنيت در شبکه، ابزارهاي امنيتي متنوعي از قبيل سیستم های تشخیص نفوذ ،ديوارهاي آتش و آنتيويروسها... مورد استفاده قرار می گيرد.
گستردگي شبکه و ابزارهاي امنيتي، موجب می شود تا همواره، هشدارهاي بسيار زيادي از سوي عناصر شبکه به مدير شبکه ارسال شود. متاسفانه تعداد اين هشدارها آنقدر زياد و سطح انتزاع آ نها آنقدر پايين مي باشد كه تحليل آن ها در عمل براي مدير شبكه امكان پذير نمي باشد. همچنين، بسياري از اين هشدارها مثبت کاذب مي باشند.
به منظور برطرف کردن این مشکلات و امکان استفاده از خروجی IDS ها، سیستم های تحلیل گری پیشنهاد شدند که وظیفه بررسی هشدارها و گزارش های تولید شده از حسگرهای مختلف در شبکه را دارند. همبسته سازی هشدارها یک روش تحلیل است و بهصورت فرایندی چندگامه تعریف میشود و شامل چندین مؤلفه است که به مدیر کمک میکنند تا هشدارها را بررسی کرده و دیدی سطح بالا از شبکهی تحت مراقبت خود ارائه دهند.
هدف از همبسته سازی هشدارها، کاهش تعداد کلی هشدارها و تولید یک دید کلی مختصر از فعالیت امنیتی در شبکه است.
يك مزاحمت به عنوان مجموعهای از عملها تعريف میشود كه هدف آن نقض يكپارچگي، محرمانگي و در دسترس بودن يك منبع است. برای جلوگیری از مزاحمت، سيستم شناسايي مزاحمت (1IDS)، دسترسي كاربر به سيستم كامپيوتر را با اجراي قوانين خاص، بازبيني و محدود میکند. این قوانين، برگرفته از دانش مسئولان باتجربهای است كه سناريوهاي حمله را ساختهاند یا میشناسند. سيستم، همهی تخلفات كاربران را شناسايي كرده و در بسیاری از موارد اقدامهای لازم براي متوقف كردن حمله را انجام میدهد. سوگاناتان مسئله شناسايي مزاحمت در امنيت كامپيوتر را به صورت مبسوط مورد بررسی قرار داده است [30].
كشف سوءاستفاده و كشف ناهنجاري ، دو روش در سيستم تشخیص نفوذ است .
در كشف ناهنجاري ، مسئول سيستم ، خط مبنا يا حالت نرمالي براي ترافيك شبكه و اندازه نوعي بسته تعريف میکند . شناسايي کنندهی ناهنجاري ، با مقایسه ی سگمنت هاي شبكه با خط مبناي نرمال به دنبال ناهنجاري¬ها میگردد .
کشف سوءاستفاده يك روش مؤثر براي رفتار با حملاتي است كه بهوسیله سيستم شناختهشدهاند . در يك سيستم کشف حملات مختلف ، غیرقابل ممکن است . بهعلاوه ، چنين تلاشي وقتگیر و بسيار پيچيده خواهد بود. کشف ناهنجاري مكمل کشف سوءاستفاده است . يكي از اشكالات کشف ناهنجاري ، احتمال گزارش اخطارهاي غلط بهوسیله سيستم است.
سیستم تشخیص نفوذ
یک سیستم تشخیص نفوذ شامل فرايند بازبيني اتفاقات رخداده در يك سيستم كامپيوتر يا شبكه و تجزیهوتحلیل آنها به منظور پیدا کردن علائم و نشانههای رويدادهايي نظیر تخلفات يا تهديدات خطرناك ، تخلف سیاستهای امنيتي كامپيوتر ، سیاستهای استفاده شده قابلقبول یا رویههای امنيتي استاندارد ممکن است.
همچنین جلوگيري از تخلف ، فرايند اجراي كشف تخلف و تلاش براي متوقف كردن رويدادهاي کشفشده ممكن است . سیستمهای كشف و جلوگيري از تخلف ( IPS ) ابتدائاً بر شناسايي رويدادهاي ممكن ، ثبت اطلاعات دربارهی آنها ، تلاش براي متوقف كردن آنها و گزارش آنها به مجريان امنيتي تمركز میکنند.
علاوه بر این ، سازمان ها از IDSها براي اهداف ديگري همچون شناسايي مشکلهای سیاستهای امنيتي ، سنديت دادن به تهديدهاي موجود و بازداشتن اشخاص از تخلف در سیاستهای امنيتي ، استفاده میکنند .
IDS ما به جزء ضروري زیرساختهای امنيتي هر ارگان تبدیل شدهاند. IDS ما نوعاً اطلاعات مرتبط با رويدادهای مشاهدهشده را ثبت ، مجريان امنيتي رويدادهاي مشاهدهشدهی مهم را مطلع میکنند و گزارشها را ارائه میدهند . بسياري از IDS ما میتوانند به تهديدهاي کشف شده واكنش دهند . آنها از چندين تكنيك واكنش استفاده میکنند كه شامل توقف حمله ، تغيير محيط امنيتي يا تغيير مضمون حمله میباشد.
اهمیت و کاربردهای سیستم تشخیص نفوذ
نفوذ به مجموعه ي اقدامات غيرقانوني كه صحت و محرمانگي و يا دسترسي به يك منبع را به خطر مي اندازد، اطلاق مي گردد. نفوذ ها مي توانند به دو دسته ي داخلي و خارجي تقسيم شوند. نفوذهاي خارجي به آن دسته نفوذهايي گفته مي شود كه توسط افراد مجاز و يا غيرمجاز از خارج شبكه به درون شبكه ي داخلي صورت مي گيرد و نفوذهاي داخلي توسط افراد مجاز در سيستم و شبكه ي داخلي، از درون خود شبكه انجام مي پذيرد.
نفوذگرها عموماً از عيوب نرم افزاري، شكستن كلمات رمز، استراق سمع ترافيك شبكه و نقاط ضعف طراحي در شبكه، سرويس ها و يا كامپيوترهاي شبكه براي نفوذ به سيستم ها و شبكه هاي كامپيوتري بهره مي برند.
به منظور مقابله با نفوذگران به سيستم ها و شبكه هاي كامپيوتري، روش هاي متعددي تحت عنوان روشهاي تشخيص نفوذ ايجاد گرديده است كه عمل نظارت بر وقايع اتفاق افتاده در يك سيستم يا شبكه ي كامپيوتري را بر عهده دارد.
IDSها ابتدائاً بر تشخيص رويدادهاي ممكن تمركز میکنند . براي مثال ، يك IDS میتواند كشف كند كه يك مهاجم با بهرهبرداری از آسیبپذیری در سيستم تهدیدی ايجاد كرده است و در ادامه میتواند اين رويداد را به مدیران امنيتي گزارش و اطلاعاتي را كه توسط رسیدگیکنندگان رويداد مورداستفاده قرار میگیرد را ثبت كند .
سيستم هاي تشخيص نفوذ به صورت سيستم هاي نرم افزاري و سخت افزاري ايجاد شده و هر كدام مزايا و معايب خاص خود را دارند. سرعت و دقت از مزاياي سيستم هاي سخت افزاري است و عدم شكست امنيتي آن ها توسط نفوذگران، قابليت ديگر اين گونه سيستم ها مي باشد. اما استفاده ي آسان از نرم افزار، قابليت انطباق پذيري در شرايط نرم افزاري و تفاوت سيستم هاي عامل مختلف، عموميت بيشتري را به سيستم هاي نرم افزاري مي دهد و عمومأ اين گونه سيستم ها انتخاب مناسب تري هستند.
به طور كلي سه عملكرد اصلي (IDS) عبارتند از:
• نظارت و ارزيابي
• كشف
• واكنش
بر همين اساس هر IDS را مي توان بر اساس رو شهاي تشخيص نفوذ، معماري و انواع پاسخ به نفوذ دسته بندي كرد.
بسياري از IDS ما میتوانند براي شناسايي تخلف از سیاستهای امنيتي نیز پيكربندي شوند . براي مثال ، بعضي IDS میتوانند با تنظيمات شبيه firewall result پیکربندی شوند و به آنها اين امكان را بدهيم كه فعالیتی که از امنيت سازمان يا سیاستهای كاربردي قابلقبول تخطي كرده ،را شناسايي كند.
بسياري از IDS ما میتوانند فعاليت هایی را شناسايي کنند كه نشان میدهده يك حمله در حال وقوع است .
سیستم های تشخیص نفوذ عملا دارای مشکلات عدیده ای هستند. یک طرف مبارزه در سیستم های تشخیص نفوذ ، هوش انسانی یک نفوذگر حرفه ای است که در قالب یک کاربر معموای ظاهر شده و با سواستفاده از امکانات موجود و دسترسی هایی که سیستم در اختیار او قرار می دهد به سیستم نفوذ می کند. بنابراین در طرف دیگر مبارزه نیز باید رفتاری مناسب و درخور داشت. در اکثر سیستم های تشحیص نفوذ سطح قابل قبولی از هوشمندی وجود ندارد. مشکل اصلی این سیستم ها این است که حجو زیادی از هشدارهایی را تولید می کنند که به حمله واقعی ارتباط ندارد. این هشدارهای غلط موسوم به هشدارهای مثبت کاذب می باشند. همچنین بین هشدارها ارتباط منطقی وجود ندارد و فهم ارتباط واقعی بین هشدارها دشوار است.
در این قسمت برخی از مشکلات سیستم های تشخیص نفوذ را مورد بررسی قرار می دهیم.
هشدارهای سیل آسا : هشدارهای تولید شده توسط سیستم های تشخیص نفوذ بسیار زیاد است و به شکل سیل آسا بر سر مدیر سیستم فرو می ریزد. سیستم های تشخیص نفوذ مبتنی بر شبکه هر بسته را به طور جداگانه مورد بررسی قرار می دهند و در بدترین حالت ممکن است همه بسته ها را به عنوان حمله گزارش دهند. مدیر سیستم نمی تواند حجم زیادی از هشدارهای مستقل را مدیریت و ارزیابی کند. بسیاری ااز این هشدارها تکراری و غلط هستند. نادقیق بودن قوانین تشخیص حمله در سیستم های مبتنی بر الگو ، عدم تفاوت روشن بین رفتارهای معمول و غیرمعمول در سیستم های مبتنی بر ناهنجاری باعث تولید هشدارهای غلط می گردد.از این رو هشدارهای مربوط به حملات واقعی که معمولا کمتر هستند مابین این هشدارهای غلط گم شده و قابل تفکیک نیستند. همانطور که اشاره شد حملات ناشناخته در سیستم های مبتنی بر الگو قابل تشخیص نیستند و به دلیل نادقیق بودن الگوی حملات و مشکلات پیاده سازی سیستم های تشخیص نفوذ ، برخی از هشدارها تولید نمی شوند.
چالش های همبسته سازی
یکی از مشکلات حلنشده در سیستم همبسته سازی، عدم ارائهی مکانیزم مناسب برای کاهش تعداد هشدارهای کاذب میباشد.
یکی از راه¬های کاهش تعداد هشدارهای کاذب استفاده از منابع ناهمگن و همبسته سازی هشدارهای تولیدشده توسط این منابع میباشد. منظور از منابع ناهمگن، هشدارهای تولیدشده توسط سیستم همبسته سازی، از قبیل سیستم تشخیص نفوذ مبتنی بر شبکه و سیستم تشخیص نفوذ مبتنی بر میزبان، لاگ فایلهای سیستمعامل، دیواره آتش و برنامههای کاربردی میباشد. از این رو، محققان تحقیقات خود را در زمینه ی همبسته سازی هشدارهای تولیدشده توسط منابع ناهمگن، متمرکز نمودهاند [4].
روش های همبسته سازی هشدارها
روشهای تشخیص نفوذ به 4 دسته زیر تقسیم می¬شوند
1. روشهای آماری همبسته سازی
2. روشهای مبتنی بر قاعده هشدار
3. روشهای مبتنی بر الگوی هشدار
4. روشهای مبتنی بر هیوریستیک هشدارها
در ادامه روش های فوق را بررسی می کنیم.
روشهای آماری همبسته سازی
در این روش¬ها که بر اساس مشاهدات و تخمین یک مدل احتمالی (آماری) انجام می شود ، با استفاداز یک آستانه از پیش تعریفشده احتمال تشخیص نفوذ را محاسبه می کنند. برای مثال شن و همکارانش در مرجع [31] برای همبسته سازی هشدارها در شبکه¬های بی¬سیم از یک مدل "بازی علامتدهی برای همبسته سازی استفاده کرده اند. در این روش، فرض می¬شود در یک شبکه توزیعشده مرکزی ، هر نود مجهز به یک IDS عامل بوده اما تنها IDS تعبیهشده در خوشه مرکزی وظیفه تشخیص را بر عهده دارد.
وانگ و همکاران در مرجع [5] از الگوریتم Cusum استفاده می¬کند. بهطورکلی دو نوع الگوریتم Cusum وجود دارد. 1- پارامتریک 2- غیر پارامتریک. مدل پارامتریک هنگامی استفاده می¬شود که همه نمونه¬های داده دارای توزیع یکسانی بوده و توزیع آنها شناختهشده باشد. با استفاده از این مدل، اگر متغیر جاری تغییر کند، آنگاه الگوریتم می¬تواند تشخیص دهد. از طرفی مدل غیر پارامتریک هنگامی استفاده می¬شود که توزیع نمونه¬ها ناشناخته باشد.
روشهای مبتنی بر قاعده همبسته سازی
این روشها از تکنیک¬های داده¬کاوی و یادگیری ماشین برای تشخیص نفوذ استفاده میکنند . به نظر می¬رسد این روش چندان مناسب نیست بدین دلیل که نمی توان روشهای یادگیری ماشین را مبتنی قوانین دانست.
مرجع [7] از یک مدل سلسله مراتبی برای همبسته سازی استفاده می¬کند بدین ترتیب که در این مدل ابتدا داده-های مسئله با استفاده از الگوریتم خوشه¬بندی Birch، خوشهبندیشده و سپس در ادامه از یک ماشین بردار پشتیبان برای دسته¬بندی هر خوشه استفاده می¬کند. الگوریتم خوشه¬بندی Birch یک الگوریتم خوشه¬بندی است که برخلاف دیگر الگوریتم¬های خوشه¬بندی نظیر K-mean، دادها را نگهداری نمی¬کند بلکه از مرکز آنها برای خوشه¬بندی استفاده می¬کند. استفاده از ماشین بردار پشتیبان (SVM) برای دستبندی نیز به دلیل کارایی بالای آن، متداول است. اما این الگوریتم به دلیل اینکه از روشهای بهینه¬سازی برای به دست آوردن مرز تصمیم استفاده می¬کند، هنگامیکه حجم داده زیاد باشد، به مشکل برمی¬خورد و نمی¬تواند به جواب برسد. این مورد همان دلیلی است که مرجع فوق ابتدا داده را خوشه¬بندی کرده- تا حجم آنها کم شود- سپس از SVM برای هر خوشه استفاده می¬کند.
این روش در مرجع [2] نیز پیشنهاد شده است.
فصل اول کلیات تحقیق 1
مقدمه 2
1-1– سیستم تشخیص نفوذ 3
2-1- ساختار کلی سیستم تشخیص نفوذ 7
3-1- اهمیت و کاربردهای سیستم تشخیص نفوذ 8
4-1- اصول کشف و جلوگیری از تجاوز 10
5-1- متولوژی های معمول کشف در سیستم های تشخیص نفوذ 13
6-1- مشکلات موجود در سیستم های تشخیص نفوذ 17
1-7- همبسته سازی در سیستم های تشخیص نفوذ 19
8-1- نقش فناوری همبسته سازی در سیستم های تشخیص نفوذ 19
1-9- تعریف اصطلاحات رایج 20
1-10- هدف ، ساختار و فرضیات تحقیق 21
11-1- نتیجه گیری 22
فصل دوم پیشینه تحقیق 24
مقدمه 25
1-2- نظریات اولیه 26
2-2- چالش های همبسته سازی 26
3-2- روش های همبسته سازی هشدارها 26
1-3-2- روشهای آماری همبسته سازی 27
2-3-2- روشهای مبتنی بر قاعده همبسته سازی 27
3-3-2- روشهای مبتنی بر الگوی هشدار 28
4-3-2- روشهای مبتنی بر هیوریستیک هشدارها 29
4-2- تشخیص مبتنی بر همبسته سازی غیرمتعارف 30
1-4-2- روشهای مبتنی بر دادهکاوی و الگوریتمهای یادگیری ماشین 30
5-2- نظریات دیگر محققان 37
6-2- نتیجه گیری 44
فصل سوم مواد و روش ها 46
مقدمه 47
3-1- بخش بندی قسمت های مختلف سیستم تشخیص نفوذ 47
3-2- سیستم های تشخیص نفوذ مبتنی بر شبکه عصبی هوشمند 49
3-2-1- سیستم های تشخیص نفوذ مبتنی بر شبکه عصبی که از منطق فازی تبعیت می کنند 49
3-2-1-1- خوشه بندی 50
3-2-1-2- خوشه بندی فازی 51
3-2-1-3- خوشه بندی C-MEANS 52
3-2-1-4- خوشه بندی FUZZY-C-MEANS 53
3-2-1-5- الگوریتم خوشه بندی C-MEANS برای داده های نویزی: 55
3-2-2- فریم ورک FC-ANN 56
3-2-3- ترکیب شبکه عصبی و الگوریتم ژنتیک در سیستم تشخیص نفوذ : 57
3-3- درخت تصمیم 59
3-4- سیستم تشخیص نفوذ ترکیبی 60
فرمول 4-3 63
فرمول 5-3 63
فرمول 6-3 63
فصل چهارم نتایج و یافته ها 47
مقدمه 62
1-4- آزمایش بر روی مجموعه داده های آزمایشی 62
1-1-4- انتخاب داده های آزمایشی 62
4-1-2 مراحل انجام آزمایش بر روی داده های آزمایشی 64
4-1-3جزئیات پیاده سازی 65
4-1-4- درخت تصمیم گیری 69
4-1-5 پارامترهای پیاده سازی 70
2-4- نتایج بدست آمده 70
4-3- بحث در نتایج 74
فصل پنجم نتیجه گیری 62
مقدمه 72
1-5- مشکلات روش های موجود 72
2-5- راه حل 72
1-2-5 نکات کلیدی در ارائه راه حل 72
2-2-5- نگاهی گذرا به روش استفاده شده 73
3-5- نتیجه گیری 73
فصل ششم منابع و مراجع 72
پیوست ها 75
فهرست جداول
جدول 1-2 روشهای توسعه دادهشده بهمنظور همبسته سازی هشدارها در تشخیص نفوذ 46
جدول 1-4 نتایج تابع هدف در خوشه بند C-MEANS 67
جدول 2-4 نمونه درجه عضویت های محاسبه شده 69
جدول 3-4 تعداد هشدارهای نمونه های آزمایشی 71
جدول 3-4 مقایسه زمان پردازشی روش پیشنهادی 71
جدول 4-۴ مقایسه دقت روش با روش بدون خوشه بند 73
جدول 5-4 نتایج بر روی حمله NORMAL با 100 داده آزمون 74
جدول 6-4 نتایج بر روی حمله DOS با 300 داده آزمون 74
جدول 7-4 نتایج بر روی حمله R2L با 20 داده آزمون 74
فهرست اشکال
شکل 1 1 : ساختار IDS 8
شکل 1-2 :معماری روش استفاده شده در مرجع ]6[ 29
شکل 2 2: داده کاوی به عنوان يک مرحله از فرآيند کشف دانش ]9[ 31
شکل 3 2 : شبکه عصبی با یکلایه نهان]8[ 32
شکل 4 2 : وزن های بین لایهها در یک شبکه عصبی چندلایه ]8[ 33
شکل 5 2: درخت تصمیم]9[ 35
شکل 6 2: ساختار داخلی مفسر هشدار ]18[ 44
شکل 1 3 : ساختار داخلی یک سیستم تشخیص نفوذ برای همبسته سازی 48
شکل 2-3 خوشه بندی نمونه های ورودی 51
شکل3-3: خوشه بندی فازی داده 52
شکل3-4: خوشه بندی کلاسیک نمونه های ورودی 54
شکل 3-5: خوشه بندی فازی نمونه ها 54
شکل 6-3 فریم وررک FC-ANN 56
شکل 7-3 چارت پردازشی الگوریتم ژنتیک 58
شکل 8 3 : نمونهای از درخت تصمیم برای همبسته سازی 59
شکل 9-3 روش تشخیص نفوذ ترکیبی پیشنهادی 61
شکل 10-3 نمای کلی از روش کار 62
شکل 1-4 کدینگ باینری 64
شکل 2-4 روش کدینگ بازه ای پیشنهادی 64
شکل 3-4 کلاس های اصلی راهکار پیشنهادی 65
شکل 4-4 عملیات کراس اوور 67
شکل 5-4 ساختار شبکه عصبی استفاده شده 68
شکل 6-4 چارت پردازشی درخت تصمیم 69