پایان نامه: یک روش بهینه تشخیص نفوذ به سرویس برمبنای سیستم فازی عصبی
فایل زیر شامل
۱- عدد فایل ورد(قابل ویراش و کپی) پایان نامه ارشد به همراه فایل پی دی اف به تعداد ۸۵ صفحه است.
(نوشته دارای نظم نگارشی و فرمتبندی کامل همچنین رفرنس نویس کامل است )
پایاننامه برای دریافت درجه کارشناسی ارشد (M.Sc.) در رشته مهندسی کامپیوتر
گرایش نرمافزار
عنوان:
یک روش بهینه تشخیص نفوذ به سرویس برمبنای سیستم فازی عصبی
فهرست عناوین
فصل دوم مبانی و پیشینه تحقیق… ۱۱
۲-۲-مفهوم سیستم تشخیص نفوذ. ۱۲
۲-۳-انواع روشهای تشخیص نفوذ. ۱۴
۲-۴-انواع معماری سیستمهای تشخیص نفوذ. ۱۵
۲-۵- معرفی انواع نفوذها به سیستمهای ابری.. ۱۶
۲-۷-انواع یادگیری برای شبکههای عصبی.. ۱۹
فصل چهارم تجزیهوتحلیل دادهها. ۳۶
۴-۲- پایگاه دادۀ KDD CUP 99. 39
۴-۳- سیستم تشخیص نفوذ شبکه با استفاده از HNF. 44
فصل پنجم نتیجهگیری و پیشنهادها. ۶۰
فهرست جدولها
شکل ۲-۱-تنوع سرویسها در ابر. ۱۷
شکل ۳-۱ شبه کد الگوریتم ژنتیک…. ۲۶
شکل۳-۲- عملکرد شبکه عصبی در متلب… ۲۷
جدول ۴-۱ انواع مختلف حملات تشریح شده در چهار مقولۀ اصلی… ۴۳
جدول ۴-۲ فهرست کاملی از ویژگیهای آمد در پایگاه دادۀ KDD Cup 99.. 43
جدول ۴-۳- پایگاه داده در نظر گرفتهشده برای آزمایش…. ۵۳
جدول ۴-۴- پایگاه داده آموزشی در نظر گرفتهشده برای ارزیابی… ۵۳
جدول ۴‑۵: امتیازات فازی تجمیع شده گزینهها نسبت به زیرمعیارهای ریسک بر اساس نظرات ده خبره. ۵۴
جدول ۴‑۶: ماتریس تصمیم فازی نرمال شده. Error! Bookmark not defined.
جدول ۴‑۷: ماتریس تصمیم فازی نرمال موزون.. Error! Bookmark not defined.
جدول ۴‑۸: گزینه ایدئال مثبت فازی و گزینه ایدئال منفی فازی… Error! Bookmark not defined.
جدول ۴-۹ ویژگیهای منتخب برای تدوین قانون.. ۵۶
جدول ۴-۱۱ عملکرد طبقهبندی سیستم تشخیص نفوذ پیشنهادی… ۵۸
فهرست نمودارها و شکلها
شکل ۲-۱-تنوع سرویسها در ابر. ۱۷
شکل ۳-۱ شبه کد الگوریتم ژنتیک…. ۲۶
شکل۳-۲- عملکرد شبکه عصبی در متلب… ۲۷
شکل ۴-۱- مراحل کلی سیستم تشخیص نفوذ پیشنهادی… ۴۶
شکل ۴-۲ سیستم فازی طراحیشده. ۵۰
IDS که بهطور فزایندهای بخش مهمی از دفاع سیستمی محسوب میشود برای شناسایی فعالیتهای ناهنجار در سیستم رایانهای مورداستفاده قرارگرفته است. بهطورکلی، تشخیص نفوذ معمولی بر معلومات گستردهای از کارشناسان امنیتی بهویژه بر آشنایی آنها با سیستمهای رایانهای که قرار است محافظت شوند، تکیه دارد. برای کاهش این وابستگی، روشهای مختلف یادگیری ماشینی و دادهکاوی در این پایاننامه مورداستفاده قرارگرفته است. در سیستم پیشنهادی، بهینهسازی سیستم منطقی فازی را برای شناسایی مؤثر فعالیتهای نفوذی شبکه طراحی گردیده. به دلیل اینکه قانون محوری سیستم مشتمل بر مجموعهای از بهترین قوانین قادر به شناسایی رفتار نفوذی شبکهها خواهد بود. ازاینرو، راهبرد خودکار تولید قوانین فازی همرا با شبکه عصبیرا مورداستفاده قرارگرفته که از قوانین معین با استفاده از آیتمهای متوالی گرفتهشده است. آزمایشها و ارزیابیهای مربوط به سیستم تشخیص نفوذ پیشنهادی با پایگاه تشخیص نفوذ KDD Cup 99 انجامشده است. نتایج تجربی بهوضوح نشان میدهد که این سیستم پیشنهادی از دقت بیشتری در شناسایی گزارشها به لحاظ دارا بودن ماهیت عادی یا تهاجمی برخوردار بوده است.
کلید واژگان: سیستم تشخیص نفوذ (IDS)، تشخیص نفوذ مبتنی بر ناهنجاری، HNF، یادگیری قانون، پایگاه دادۀ KDD Cup 99
سامانههای تشخیص نفوذ (IDS) یک سازوکار دفاعی بسیار مهم |برای نقاط آسیبپذیر شبکههای رایانهای است. ازآنجاییکه ازنظر فنی ایجاد سامانههای رایانهای بدون نقاط ضعف و شکست امنیتی عملاً غیرممکن است تشخیص نفوذ در تحقیقات رایانهای بااهمیت خاصی دنبال میشود. سامانه کشف نفوذ نقش حیاتی در کشف انواع مختلفی از حملهها را ایفاء میکند و همچنین ابزار باارزشی برای دفاع در شبکههای رایانهای است، عموماً سامانههای تشخیص نفوذ در کنار دیوارههای آتش و بهصورت مکمل امنیتی برای آنها مورداستفاده قرار میگیرند، با توجه به حجم زیاد دادهای که در ترافیک شبکه وجود دارد استخراج الگوهایی برای رفتارهای نادرست کاربران و پیشبینی رفتارهای آنان کاری زمانبرو دشوار است. ممکن است بین ویژگیهای مختلف دادهها، ارتباط اشتباهی وجود داشته باشد که مانع از تشخیص درست نفوذ شود. بعضی ویژگیها ممکن است از ویژگیهای دیگر قابل استنتاج باشند؛ بنابراین انتخاب ویژگیهای مناسب، میتواند سرعت طبقهبندی را افزایش دهد و موجب افزایش کارایی و سرعت سامانههای تشخیص نفوذ شود (نجفی، رافع،۱۳۹۶). هدف اصلی DS شناسایی استفادههای غیرمجاز و سوءاستفاده از رایانههای خودی توسط کاربران داخلی و مهاجمین است، به دلیل پیشرفت فناوری اینترنت و رشد پیوسته حملههای شبکهای، شناسایی نفوذ شبکه یکی از موضوعات مهم برای تحقیقشده است. در سالهای گذشته تلاشهای زیادی برای طبقهبندی حملهها انجامگرفته است، یکی از طبقهبندیهایی که موردقبول اکثریت واقعشده حملهها را به چهار گروه زیر طبقهبندی میکند.
-حملههای پویش پورت: حملههایی که بر اساس به دست آوردن اطلاعات در مورد سامانه برای پیش بردن نفوذ است.
-حملههای از کار اندازی سرویس (Dos) حملههایی که تلاش میکنند با ایجاد وقفه کوتاه یا وقفه کامل استفاده از یک سامانه یا سرویسها را برای کاربران قانونی دچار اختلال نمایند.
-حملههای کاربر به ریشه (UR) حملههایی که هدف آنها به دست آوردن سطح دسترسی مدیر اصلی سامانه بهوسیله استفاده از آسیبپذیریهای موجود در سامانه عامل یا برنامههای کاربردی است.
-حملههای از راه دور: (R2L6) حملههایی که بر اساس به دست آوردن دسترسی محلی، در خارج از شبکه داخلی است.
یک سامانه تشخیص نفوذ را میتوان مجموعهای از ابزارها روشها و مدارکی در نظر گرفت که به شناسایی، تعیین و گزارشهای غیرمجاز یا تائید نشده تحت شبکه، کمک میکند (نجفی، رافع،۱۳۹۶).
همگام با رشد شبکههای کامپیوتری، حملات و نفوذها به این شبکهها نیز گسترشیافته و به شکلهای متعددی صورت میپذیرد. نفوذ مجموعه اقدامات غیرقانونی است که صحت، محرمانگی و یا دسترسی به یك منبع را به خطر میاندازد. نفوذ گرها را میتوان به دودسته نفوذ گرهای خارجی و داخلی دستهبندی کرد. نفوذ گرهای خارجی کسانی هستند که اجازه استفاده از سیستم را ندارند، اما سعی میکنند که در سیستم راه یابند و نفوذ گرهای داخلی کسانی هستند که برای دستیابی به سیستم اختیارات محدودی دارند، اما تلاش میکنند به منابعی که اجازه استفاده از آنها را ندارند، دسترسی پیدا کنند. درگذشته نفوذها و حملات بیشتر از ناحیه افرادی صورت میگرفت که علاقهمند بودند تا مهارتها و تواناییهای خود را آزمایش کنند، اما در حال حاضر، تمایل به نفوذ باانگیزههای مالی، سیاسی و نظامی بیشتر شده است. لذا ضرورت طراحی و ساخت سیستمهای امن بهمراتب بیشتر از گذشته احساس میشود (تقوی، خادمی،۱۳۹۵).
همگام با رشد شبکههای کامپیوتری، حملات و نفوذها به این شبکهها نیز گسترشیافته و به شکلهای متعددی صورت میپذیرد. نفوذ مجموعه اقدامات غیرقانونی است که صحت، محرمانگی و یا دسترسی به یک منبع را به خطر میاندازد. نفوذترها را میتوان به دودسته نفوذ گرهای خارجی و داخلی دستهبندی کرد. نفوذ گرهای خارجی کسانی هستند که اجازه استفاده از سیستم را ندارند، اما سعی میکنند که در سیستم راه یابند و نفوذ گرهای داخلی کسانی هستند که برای دستیابی به سیستم اختيارات محدودی دارند، اما تلاش میکنند به منابعی که اجازه استفاده از آنها را ندارند، دسترسی پیدا کنند، درگذشته نفوذها و حملات بیشتر از ناحیه افرادی صورت میگرفت که علاقهمند بودند تا مهارتها و تواناییهای خود را آزمایش کنند، اما در حال حاضر، تمایل به نفوذ باانگیزههای مالی، سیاسی و نظامی بیشتر شده است، لذا ضرورت طراحی و ساخت سیستمهای امن بهمراتب بیشتر از گذشته احساس میشود (معین تقوی و خادمی، ۱۳۹۵).
سامانههای تشخیص نفوذ (DS) یک سازوکار دفاعی بسیار مهم برای نقاط آسیبپذیر شبکههای رایانهای است. ازآنجاییکه ازنظر فنی ایجاد سامانههای رایانهای بدون نقاط ضعف و شکست امنیتی عملاً غیرممکن است؛ تشخیص نفوذ در تحقیقات سامانههای رایانهای بااهمیت خاصی دنبال میشود. سامانه کشف نفوذ نقش حیاتی در کشف انواع مختلفی از حملهها را ایفاء میکند و همچنین ابزار باارزشی برای دفاع در شبکههای رایانهای است، عموماً سامانههای تشخیص نفوذ در کنار دیوارههای آتش و بهصورت مکمل امنیتی برای آنها مورداستفاده قرار میگیرند. با توجه به حجم زیاد دادهای که در ترافیک شبکه وجود دارد استخراج الگوهایی برای رفتارهای نادرست کاربران و پیشبینی رفتارهای آنان کاری زمانبر و دشوار است، ممکن است بین ویژگیهای مختلف دادهها، ارتباط اشتباهی وجود داشته باشد که مانع از تشخیص درست نفوذ شود. بعضی ویژگیها ممکن است از ویژگیهای دیگر قابل استنتاج باشند؛ بنابراین انتخاب ویژگیهای مناسب، میتواند سرعت طبقهبندی را افزایش دهد و موجب افزایش کارایی و سرعت سامانههای تشخیص نفوذ شود (نجفی، رافع،۱۳۹۶). در سالهای گذشته تلاشهای زیادی برای طبقهبندی حملهها انجامگرفته است. یکی از طبقهبندیهایی که موردقبول اکثریت واقعشده حملهها را به چهار گروه زیر طبقهبندی میکند:
-حملههای پویش پورت: حملههایی که بر اساس به دست آوردن اطلاعات در مورد سامانه برای پیش بردن نفوذ است.
-حملههای از کار اندازی سرویس: (Dos) حملههایی که تلاش میکنند با ایجاد وقفه کم یا وقفه کامل استفاده از یک سامانه یا سرویسها را برای کاربران قانونی دچار اختلال نمایند.
-حملههای کاربر به ریشه: (U2R) حملههایی که هدف آنها به دست آوردن سطح دسترسی مدیر اصلی سامانه بهوسیله استفاده از آسیبپذیریهای موجود در سامانه عامل یا برنامههای کاربردی است.
-حملههای از راه دور: (ROL) حملههایی که بر اساس به دست آوردن دسترسی محلی، در خارج از شبکه داخلی است.
روشهایی که DS بر اساس آن کار میکند به دودسته تقسیم میشوند: از تشخیص الگو (مبتنی بر امضاء) تشخیص ناهنجاری اکثر IDS ها از روش تشخیص نفوذ مبتنی بر امضاء استفاده میکنند، این نوع سامانههای تشخیص نفوذ اکثراً محصول تجاری هستند. سامانههای تشخیص نفوذ مبتنی بر ناهنجاری معمولاً برای اهداف تحقیق، طراحی و ساخته میشوند و در آینده سامانههای تشخیص نفوذ ایدئال خواهند بود و جایگزین سامانههای تشخیص نفوذ مبتنی بر امضاء خواهند شد.
تشخیص نفوذ فرایند نظارت و تحلیل رخدادهای اتفاق افتاده در یک سامانه رایانهای جهت شناسایی کردن نشانههایی از مشکلات امنیتی است؛ بهعبارتدیگر تشخیص نفوذ مجموعهای از فنها و روشهایی است که برای تشخیص فعالیتهای مشکوک در هر دو سطح شبکه و میزبان استفاده میشود. تشخیص نفوذ مبتنی بر میزبان بر روی یک سرورِ دیدهبانی یک کاربر خاص، عمل برنامههای کاربردی و ثبت وقایع متمرکز میشود ولی تشخیص نفوذ مبتنی بر شبکه ترافیک شبکه سیمی را برای فعالیتهای خاص با امضاءهایی که نشاندهنده یک حمله هستند مورد نظارت قرار میدهد (Richards, K,1999). یک سامانه تشخیص نفوذ را میتوان مجموعهای از ابزارهای روشها و مدارکی در نظر گرفت که به شناسایی، تعیین و گزارش فعالیتهای غیرمجاز با تائید نشده تحت شبکه، کمک میکند.
سامانههای تشخیص نفوذ (IDS) برای کمک به مدیران امنیتی سامانه جهت کشف نفوذ و حمله به کار گرفتهشدهاند. هدف یک سامانه تشخیص نفوذ جلوگیری از حمله نیست و تنها کشف و احتمالاً شناسایی حملهها و تشخیص اشکالات امنیتی در سامانه با شبکههای رایانهای و اعلام آن به مدیر سامانه است. عموماً سامانههای تشخیص نفوذ در کنار دیواره آتش و بهصورت مکمل امنیتی برای آن مورداستفاده قرار میگیرند. انتخاب ویژگی یکی از مهمترین مراحل در سامانههای تشخیص نفوذ است. انتخاب ویژگیهای بهینه کاری زمانبر است ولی با توجه به اینکه در حالت برونخطی اجرا میشود و ویژگیهای انتخابشده برای سامانههای تشخیص نفوذ واقعی و بر خط ۳ مورداستفاده قرار میگیرد، بنابراین زمانبر بودن آن مشکلی ایجاد نمیکند.
انتخاب ویژگی یکی از موضوعات کلیدی در سامانههای کشف نفوذ است. یکی از مشکلات طبقهبندی در سامانههای کشف نفوذ وجود تعداد زیادی ویژگی است که باعث بزرگ شدن فضای حالات میشود. بسیاری از این ویژگیها ممکن است نامرتبط با تکراری باشند که حذف آنها تأثیر قابلتوجهی در عملکرد طبقهبندی خواهد داشت. الگوریتم رقابت استعماری دارای سرعت همگرایی بالایی برای انتخاب ویژگیها بوده ولی مشکل آن گیر افتادن در بهینه محلی هست. الگوریتم ژنتیک دارای قدرت جستجوی بالا جهت پیدا کردن جوابها هست ولی مشکل آن عدم توانایی در مدیریت جوابهای یافت شده جهت همگرایی است؛ بنابراین ترکیب این دو الگوریتم میتواند از یکسو سرعت همگرایی و از سوی دیگر دقت در انتخاب ویژگی را به همراه داشته باشد. در این مقاله با اعمال عملگر جذب الگوریتم رقابت استعماری به الگوریتم ژنتیک، روش جدیدی برای انتخاب ویژگیهای بهینه در سامانه تشخیص نفوذ ارائه میشود. روش پیشنهادی با روش طبقهبندی درخت تصمیم روی مجموعه داده KDD99 آزمایششده که نشاندهنده افزایش نرخ تشخیص (۹۵/۰۳)، کاهش نرخ هشدار غلط (۱۳۴۶) و همچنین افزایش سرعت همگرایی (۳/۸۲ ثانیه) است (نجفی و رافع، ۱۳۹۶).
محمودی و همکاران (۱۳۹۲) به بررسی روش ضریب داده پرت محلی (Local Outlier Factor)، بهعنوآنیکی از روشهای مبتنی بر یادگیری ماشین که از آن میتوان جهت شناسایی نفوذ به شبکههای کامپیوتری استفاده کرد، معرفی کردهاند. همچنین نحوه بهکارگیری آن در یک مطالعه موردی، موردبحث و بررسی قراردادهاند. یکی از شاخههای تشخیص نفوذ به شبکههای کامپیوتری، استفاده از روشهای تشخیص ناهنجاری دردادههای شبکه است. این روشها با مقایسه شرایط عادی سیستم با شرایط مشاهدهشده، بهمنظور تشخیص تفاوتهای حاد که معمولاً در صورت بروز حملات رخ میدهد، نفوذ به شبکه را تشخیص میدهند. وضعیت رفتاری، وضعیت ارتباطات، تعداد مشترکین و درخواستهای معمول مشترکین و نیز مناسبات نرم – افزاری و سختافزاری در جریان، از این دستهاند.
در یک دستهبندی، روشهای تشخیص ناهنجاری به روشهای آماری، روشهای مبتنی بر فاصله، روشهای مبتنی بر چگالی، روشهای مبتنی بر خوشهبندی روشهای مبتنی بر ماشین بردار پشتیبان (SVM) سیستمهای مبتنی بر قاعده «و روشهای مبتنی بر شبکه عصبی مصنوعی» تقسیمبندی میشوند. هر یک از این روشها دارای نقاط ضعف و قدرت خاص خود هستند. تاکنون محققین زیادی با استفاده از روشهای ذکرشده به شناسایی حملههای مخرب به شبکههای کامپیوتری پرداختهاند، (Gonzalez, Breunig,at al,2003) با استفاده از روشهای آماری پروفیلهای آماری با استفاده از هیستوگرامها، مدلهای آماری پارامتری و مدلهای آماری نا پارامتری، مرجع (Eskin) با استفاده از مدلهای ترکیبی، (Zhang & ramadas,2001) با استفاده از شبکههای عصبی مصنوعی، مراجع با استفاده از شبکههای مراجع (Spence &Eskin, 2001) با استفاده از ماشین بردار پشتیبان (Lee & Barbara,2001) با استفاده از سیستمهای مبتنی بر قاعده به شناسایی حملههای مخرب به شبکههای کامپیوتری پرداختهاند.
۱-سیستم فازی عصبی ویژگیهایی از ارتباط درونشبکهای را ارائه میکند که با استفاده از روشهای شناسایی الگو تمایز میان ارتباط نرمال و نفوذ را یافت.
۲-شبکههای عصبی مصنوعی آموزشدیده با استفاده از الگوریتم ژنتیک عملکرد مناسبی در افزایش امنیت از نفوذ در شبکهدارند.
-آیا میتوآنیک روش بهینه تشخیص نفوذ به سرویس برمبنای سیستم فازی عصبی ارائه داد؟
-چگونه میتوان ویژگیهایی از ارتباط درونشبکهای یافت که با استفاده از روشهای شناسایی الگو تمایز میان ارتباط نرمال و نفوذ را یافت؟
-چه ویژگیهایی از ارتباط میتواند برای شناسایی نوع ارتباط مؤثر باشد؟
-آیا شبکههای عصبی مصنوعی آموزشدیده با استفاده از الگوریتم ژنتیک عملکرد مناسبی در شناسایی ارتباط نرمال از شبکهدارند؟
-چه پارامترهای بر مدل پژوهش تأثیرگذار است؟
-مدل پژوهش نسبت به روشهای پیشین چه دقتی دارد؟
۱-۶-۱- هدف صلی:
-معرفی یک روش بهینه تشخیص نفوذ به سرویس برمبنای سیستم فازی عصبی
۱-۶-۲-اهداف فرعی:
-معرفی و شناسایی روشهای موجود برای شناسایی نفوذ در شبکه
-ارائه شبکه مصنوعی برای شناسایی نفوذ در شبکه
-تنظیم پارامترهای روش پیشنهادی برای بالا بردن دقت مدل
مراکز دادههای امن کلیه واحدهای امنیتی و انفورماتیک سازمانها و همچنین کاربران خانگی که بهطور مستمر از شبکه استفاده میکنند. کلیه واحدهای امنیتی و انفورماتیک سازمانها و بهطورکلی پژوهش حاضر با توجه به استفاده فراگیر از شبکههای کامپیوتری کاربر در این پژوهش برای همه استفادهکنندگان از شبکه میباشد.
میزان نفوذ، تحملپذیری سیستم، سرعت اعلام خرابی
با توجه به اینکه موضوع پایاننامه بررسی امنیت سرویس شبکه میباشد کل مراحل پژوهش بهصورت آزمایشگاهی و تست بر روی شبکه آزمایشی طراحیشده توسط محقق صورت میگیرد.
ابتدا دادهای تشکیل میگردد بعد از ایجاد مجموعهی دادهای نرمالسازی برویدادهها تقسیمبندی دادهها به دودسته آموزش و ارزیابی تقسیم میشوند؛ و ازآنجاکه به دنبال تنظیم وزنهای شبکه با الگوریتم شبکههای عصبی هستیم از همین رو ابتدا قالب شبکه عصبی ایجاد میگردد تا بتوانیم مشخص کنیم که چه تعداد وزن جهت ایجاد وزن جهت ایجاد شبکه عصبی نیازمندیم. بعد به تخمین و بررسی راههای نفوذ در شبکه پرداختیم؛ و با استفاده از نرمافزار متلب به بررسی الگوریتمها و راههای نفوذ به شبکه و راهحلهای افزایش امنیت شبکه پرداختهشده است.
یک شبکه عصبی مصنوعی ایدهای است که برای پردازش اطلاعات از سیستم عصبی زیستی الهام میگیرد و مانند مغز به پردازش اطلاعات میپردازد. شبکههای عصبی باقابلیت توجه آنها در استنتاج معانی از دادههای پیچیده یا مبهم، میتواند برای استخراج الگوها شناسایی روشهای که آگاهی از آنها برای انسان و دیگر تکنیکهای کامپیوتری بسیار پیچیده و دشوار است استفاده شود. ازاینرو میتوان روش نوین و بهینه در تشخیص نفوذ به شبکه با استفاده از سیستم فازی عصبی که کمک زیادی برای جلوگیری از نفوذ به شبکه میکند و یک طرح نوین در این حوزه میباشد را طراحی و در اختیار کاربران و استفادهکنندگان از این ساختار امنیتی قرارداد.
در فصل بعد در رابطه با ادبیات پژوهش و اصطلاحاتی که در این پژوهش نیاز میباشد گفته میشود و اصطلاحات توضیح داده میشود تا بتوان فصلهای بعدی را بهتر درک نمود. در فصل سوم روشهای کار پژوهش گفته میشود و در رابطه با هرکدام از راهکارهای پیشین و مشکلات آنها توضیحاتی داده میشود. در فصل چهارم روش پیشنهادی که بر اساس ترکیب الگوریتم ژنتیک و شبکههای عصبی در جهت تشخیص نفوذ میباشد، توضیح داده میشود. در ادامه آن در فصل پنجم ارزیابی روی روش پیشنهادی صورت میگیرد و نتیجهگیری کلی از روش پیشنهادی نیز در آن فصل بیان میشود.
تکنولوژی شبکه بهسرعت در حال رشد است رشد و توسعه شبکههای کامپیوتری بر کسی پوشیده نیست مدتهاست که جمعآوری و پردازش اطلاعات توسط کامپیوتر انجام میشود. علاوه بر این، کامپیوتر در توزیع اطلاعات و برقراری ارتباطات از طریق شبکههای کامپیوتری نقش مهمی را بازی میکند. اغلب سیستمهای نرمافزاری که در دنیای امروز مورداستفاده قرار میگیرند، به اینترنت متصل هستند و از منابع سرشار موجود در آن استفاده میکنند. همانطور که میدانید، یک معماری سیستمهای موجود، معماری سرویسگیرنده – سرویسدهنده است که در آن، سرویسگیرنده سرویسی را درخواست میکند و سرویسدهنده آن سرویس را ارائه میکند. استفاده از شبکههای کامپیوتری در چندین سال اخیر رشد فراوانی کرده و سازمانها و مؤسسات اقدام به برپایی شبکه نمودهاند. هر شبکه کامپیوتری باید با توجه به شرایط و سیاستهای هر سازمان، طراحی و پیادهسازی گردد. درواقع شبکههای کامپیوتری زیرساختهای لازم را برای به اشتراک گذاشتن منابع در سازمان فراهم میآورند؛ درصورتیکه این زیرساختها بهدرستی طراحی نشوند، در زمان استفاده از شبکه مشکلات متفاوتی پیشآمده و باید هزینههای زیادی بهمنظور نگهداری شبکه و تطبیق آن با خواستههای موردنظر صرف شود.
سیستمهای تشخیص نفوذ بامطالعه رفتار کاربران و اطلاعات موجود در حملات، رفتارهای غیر نرمال را تشخیص میدهند. این سیستمها معایب و مزایای خاص خود رادارند که با تشخیص و یا پیشگیری از حملات نقش مؤثری در تأمین امنیت دارند. IDS های فعال سیستمهای جلوگیری از نفوذ (“IPs) هستند که علاوه بر نظارت ترافیک شبکه میتوانند از ورود ترافیک ناهنجار به شبکه جلوگیری و تهدیدها را مسدود یا متوقف سازند. برخلاف IDS که فقط نفوذ را شناسایی میکند، IPS ها قادر به جلوگیری از نفوذ، ارسال هشداره کاهش بستههای مخرب و انسداد ترافیک IP معیوب نیز میباشد. در ادامه بهطور خلاصه به توضیح روشهای تشخیص نفوذ، تکنیکهای بکار رفته در محیطهای ابری و حملات قابلتشخیص توسط آنها میپردازیم. سیستم تشخیص نفوذ ابزار امنیتی است که هدف آن تقویت امنیت اطلاعات و سیستمهای ارتباطی از طریق نظارت شبکه یا فعالیتهای سیستم، شناسایی نفوذها و تهیه گزارش میباشد (۲۰۱۲,Jeong et al).
۲-۲-۱- روشهای تشخیص در IDS
روش تشخیص در سیستمهای تشخیص نفوذ برحسب تکنولوژیهای تحلیلی، به دو روش مختلف است: ۱- تشخیص ناهنجاری ۲- روش مبتنی بر امضا در مدل مبتنی بر تشخیص ناهنجاری یک پروفایل معمولی با دادههایی درباره فعالیتهای سیستم ساختهشده و این پروفایل برای شناسایی الگوی فعالیتها استفاده میشود (۲۰۱۱,Yang et al). همچنین تصمیمها بر اساس پروفایل شبکه نرمال یا رفتار سیستم و با استفاده از تکنیکهای یادگیری ماشین با آماری انجام میشود (۲۰۱۳,Aljarah & Ludwing). از طرف دیگر اگر در این روش حملهای رخ دهد با بررسی اینکه آیا انحراف بین رویداد رخداده و رفتار نرمال، بیشتر از آستانه از پیش تعریفشده است یا نه تصمیم میگیرد. این رویکرد میتواند حملات دیده نشده قبلی را نیز تشخیص دهد (۲۰۱۲,Jeong et al).
هر یک از این روشها ضعفها و قوتهای خود رادارند، سیستمهای مبنی بر امضا نرخ FP خیلی پایینی دارند؛ یعنی نرخ خطاهای بدون نفوذی که اشتباهاً تشخیص دادهشده در آنها بسیار کم است. همچنین این سیستمها در شناسایی حملات ناول و مبهم ناتوان هستند، الگوریتم الگوی تطبیق نیز در این مدل با رشد نمایی انواع مختلف حملات، قابلاعتماد نیست. از طرف دیگر، سیستمهای مبنی بر ناهنجاری تعداد زیادی FP تولید میکنند. ازاینرو پیشنهاد میشود از هر دو شیوه در یک DS استفاده شود (۲۰۱۳,Aljarah and Ludwing).
۲-۲-۲- مدلهای استقرار IDS
بر اساس مدل استقرار، IDS ها به سیستمهای بر اساس شبکه و میزبان تقسیم میشوند.NIDS (Network-based IDS): وظیفه نظارت شبکه را دارد و تشخیص در آن روی انواع دسترسی تمرکز دارد (Yang etal, 2011).
۲-۲-۳-(Host – based IDS) HIDS
برای تشخیص و نظارت فعالیتهای مخرب مانند تغییرات سیستم فایل و لاگهای برنامه استفاده میشود و از سیستمعامل جدا نیست (۲۰۱۱,Yang et al). سیستمهای تشخیص نفوذ مبنی بر شبکه حملات را با تحلیل ترافیک بستههای شبکه در طول سگمنت با سوییچ شبکه تشخیص و نظارت و حفاظت از چندین میزبان را با ماشین جداگانهای انجام میدهند. این سیستمها قادر به نظارت تعداد زیادی میزبان با هزینه استقرار نسبتاً کم و شناسایی حملات از چندین میزبان میباشند (۲۰۱۳,(Aljarah and Ludwing NIDS نمیتوانند تشخیص و جلوگیری از حمله را بخصوص در حملات روی بستههای رمزگذاری شده تضمین کنند. از طرفی HIDS ها قادرند تصمیم بگیرند آیا یک حمله با نیت سوءقصد در ماشین محلی موفق بوده است یا نه. همچنین سرور باید روی همه HIDS ها نصبشده باشد؛ بنابراین حتی ساختار شبکههای در مقیاس کوچک هم معمولاً لازم است بر پایه هر دو مدل باشد (۲۰۱۱,Yang et al).
نفوذ به مجموعه اقدامات غیرقانونی که صحت و محرمانگی و یا دسترسی به یک منبع را به خطر میاندازد، اطلاق میگردد. نفوذها میتوانند به دودستهی داخلی و خارجی تقسیم شوند. نفوذهای خارجی به آن دسته نفوذهایی گفته میشود که توسط افراد مجاز و یا غیرمجاز از خارج شبکه به درون شبکهی داخلی صورت میگیرد و نفوذهای داخلی توسط افراد مجاز در سیستم و شبکهی داخلی، از درون خود شبکه انجام میپذیرد. نفوذترها عموماً از عیوب نرمافزاری، شکستن کلمات رمز، استراق سمع ترافیک شبکه و نقاط ضعف طراحی در شبکه، سرویسها و یا کامپیوترهای شبکه برای نفوذ به سیستمها و شبکههای کامپیوتری بهره میبرند. بهمنظور مقابله بانفوذ گران به سیستمها و شبکههای کامپیوتری، روشهای متعددی تحت عنوان روشهای تشخیص نفوذ ایجاد گردیده است که عمل نظارت بر وقایع اتفاق افتاده در یک سیستم با شبکهی کامپیوتری را بر عهده دارد. روشهای تشخیص مورداستفاده در سیستمهای تشخیص نفوذ به دودسته: ۱) روش تشخیص رفتار غیرعادی و ۲) روش تشخیص سوءاستفاده با تشخیص مبتنی بر امضاء؛ تقسیم میشوند Joshi, 2012) Manish).
۲-۳-۱-روش تشخیص رفتار غیرعادی
در این روش، یک نما از رفتار عادی ایجاد میشود. یک ناهنجاری ممکن است نشاندهندهی یک نفوذ باشد. برای ایجاد نماهای رفتار عادی از رویکردهایی از قبیل شبکههای عصبی، تکنیکهای یادگیری ماشین و حتی سیستمهای ایمنی زیستی استفاده میشود که برای تشخیص رفتار غیرعادی، باید رفتارهای عادی را شناسایی کرده و الگوها و قواعد خاصی برای آنها پیدا کرد. رفتارهایی که از این الگوها پیروی میکنند، عادی بوده و رویدادهایی که انحرافی بیشازحد معمول آماری از این الگوها دارند، بهعنوان رفتار غیرعادی تشخیص داده میشود. نفوذهای غیرعادی برای تشخیص بسیار سخت هستند، چون هیچگونه الگوی ثابتی برای نظارت وجود ندارد. معمولاً رویدادی که بسیار بیشتر یا کمتر از دو استاندارد انحراف از آمار عادی به وقوع میپیوندد، غیرعادی فرض میشود. بهعنوانمثال اگر کاربری بهجای یک یا دو بار ورود و خروج عادی به سیستم در طول روز، بیست بار این کار را انجام دهد و یا کامپیوتری که در ساعت ۲: ۰۰ بعد از نیمهشب مورداستفاده قرارگرفته درحالیکه قرار نبوده کامپیوتر فوق پس از ساعت اداری روشن باشد. هر یک از این موارد میتواند بهعنوآنیک رفتار غیرعادی در نظر گرفته شود (Deepthy K Detatious and Anita John, 2012 ye Qing,2010).
۲-۳-۲-روش تشخیص سوءاستفاده یا تشخیص مبتنی بر امضاء
در این تکنیک که معمولاً بانام تشخیص مبتنی بر امضاء شناختهشده است، الگوهای نفوذ از پیشساخته شده (امضاء) بهصورت قانون نگهداری میشوند. بهطوریکه هر الگو انواع متفاوتی از یک نفوذ خاص را در برگرفته و در صورت بروز چنین الگویی در سیستم، وقوع نفوذ اعلام میشود. در این روشها، معمولاً تشخیصدهنده دارای پایگاه دادهای از امضاءها با الگوهای حمله است و سعی میکند با بررسی ترافیک شبکه، الگوهای مشابه با آنچه را که در پایگاه دادهی خود نگهداری میکند، بیاید. این دسته از روشها تنها قادر به تشخیص نفوذهای شناختهشده میباشند و در صورت بروز حملات جدید در سطح شبکه، نمیتوانند آنها را شناسایی کنند و مدیر شبکه باید همواره الگوی حملات جدید را به سیستم تشخیص نفوذ اضافه کند. از مزایای این روش دقت در تشخیص نفوذهایی است که الگوی آنها عیناً به سیستم دادهشده است (D.Zhao, Q.Xu and Z.Feng, 2013).
۲-۴-انواع معماری سیستمهای تشخیص نفوذ
۲-۴-۱- سیستم تشخیص نفوذ مبتنی بر میزبان (HIDS)
این سیستم، شناسایی و تشخیص فعالیتهای غیرمجاز بر روی کامپیوتر میزبان را بر عهده دارد. سیستم تشخیص نفوذ مبتنی بر میزبان میتواند حملات و تهدیداتی را روی سیستمهای بحرانی تشخیص دهد (شامل دسترسی به فایلها، اسبهای تروا و غیره که توسط سیستمهای تشخیص نفوذ مبتنی بر شبکه قابلتشخیص نیستند). HIDS ها بهواسطهی مکانشان روی میزبانی که باید نظارت شود، از همهی انواع اطلاعات محلی اضافی با پیادهسازیهای امنیتی شامل فراخوانیهای دستگاهی، تغییرات فایلهای دستگاهی و اتصالات سیستم مطلع میباشند. این مسئله هنگام ترکیب با ارتباطات شبکهای، دادههای خوبی را برای جستجوی رویدادهای ممکن فراهم میکند (Y.Qing2010, W.Xiaoping and H.Gaofeng, 2012).
۲-۴-۲- سیستم تشخیص نفوذ مبتنی بر شبکه (NIDS)
نام NIDS از این حقیقت مشتق شده است که از منظر محلی که قرارگرفته، بر تمام شبکه نظارت دارد. شناسایی و تشخیص نفوذهای غیرمجاز قبل از رسیدن به سیستمهای بحرانی، به عهدهی سیستم تشخیص نفوذ مبتنی بر شبکه است NIDS ها اغلب از دو بخش ناظر (حسگر) و عامل تشکیلشدهاند این دو بخش اغلب در پشت دیوارهی آتش و بقیهی نقاط دسترسی برای تشخیص هر نوع فعالیت غیرمجاز نصب میشود. عاملهای شبکه میتوانند جایگزین زیر ساختار شبکه شوند تا ترافیک شبکه را جستجو کنند. نصب عاملها و ناظرها این مزیت را دارد که هر نوع حملهای را در ابتدا از بین میبرد. ضمناً دنبالههای بررسی یک یا چند میزبان میتوانند برای جستجوی علائم حملات، مفید باشندG.Xiaoqing, G.Hebin and C.Luly, 2012)).
۲-۴-۳-سیستم تشخیص نفوذ توزیعشده DIDS
این سیستمها از چندین NID5 یا HIDS یا ترکیبی از این دو نوع همراه یک ایستگاه مدیریت مرکزی تشکیلشده است. بدینصورت که هر IDS که در شبکه موجود است گزارشهای خود را برای ایستگاه مدیریت مرکزی ارسال میکند. ایستگاه مرکزی وظیفه بررسی گزارشهای رسیده و آگاهسازی مسئول امنیتی سیستم را بر عهده دارد سیستم تشخیص نفوذ داده کاو محور با استفاده از تکنولوژی انبار داده در ادامه مدل دیگری موسوم به سیستم تشخیص نفوذ ترکیبی ارائه میگردد که از ترکیب سیستمهای تشخیص نفوذ مبتنی بر میزبان و مبتنی بر شبکه بوده و از تشخیص بر اساس امضا و آنومالی استفاده میکند. تکنولوژی انبار داده به این جهت مفید است که اجزای مختلف بهصورت غیر همزمان قسمتهای مشابه ای از دادههای ذخیرهشده در پایگاه داده را دستکاری میکنند؛ بنابراین انبار داده قلب دادهها و مدلها در تمام سیستم است.
۲-۵- معرفی انواع نفوذها به سیستمهای ابری
در محيط ابري وجود IDS ضروری است زيرا استفادهکنندگان نميتوانند همواره بر امنيت زيرساخت فراهمکنندگان ابري اعتماد كنند. استفادهکنندگان ابر ممكن است براي نظارت و حفاظت از موجوديتهاي مجازي نياز به استفاده از IDS با تكنولوژيهاي امنيتي ديگر شبكه مانند فايروال، كنترلهاي دسترسي و رمزنگاري دادهها در ابر داشته باشند. انواع نفوذهای متداول که روی دسترسیپذیری و قابلیت اعتماد سرویسهای ابری مؤثر هستند را در ادامه تشریح میکنیم.
۲-۵-۱-حمله داخلی
سو استفاده از امتیازات و دسترسیهای سطح بالای در اختیار ارائهدهنده سرویس رایانش ابری تعریف میشود. خطر خرابکاری داخلی در ساختارهای قدیمی فناوری اطلاعات نیز وجود دارد اما احتمال آن در رایانش ابری باید بیشتر در نظر گرفته شود چراکه نقش ادمین در سیستمهای ابری دسترسی و موقعیت بالاتری نسبت به سایر روشهای IT دارد. حرکات خرابکارانه داخلی میتواند بهصورت بالقوه روی مواردی مانند نشت اطلاعات محرمانه، همگامسازی و در دسترس بودن تمامی اطلاعات، IP ها، تمامی انواع سرویسهای ارائهشده تأثیر داشته باشند که در ادامه میتواند روی حسن سابقه یک شرکت و اعتماد مشتریان به آن شرکت تأثیر مستقیم داشته باشد. با توجه به اینکه معماری ابری نیازمند این است که نقشهای مشخصی که بهشدت ریسک بالایی دارند به افراد واگذار شود درنتیجه از سایر روشهای IT در این زمینه ریسکپذیرتر است. مثالهایی از این نقشهای پر ریسک میتواند ادمین سیستمهای ارائهدهنده خدمات و ناظران و حسابرسان و ارائهدهندگان سرویسهای امنیتی در مواجهه با ثبت رخدادها و نفوذهای غیرمجاز باشند. بهموازات اینکه استفاده از رایانش ابری افزایش پیدا میکند کارکنان ارائهدهندگان خدمات ابری به شکل فزایندهای هدف دستههای جنایتکار قرار میگیرند.
۲-۵-۲-اسکن پورت
در این نوع حمله اسکن پورت فهرستی از پورتهای باز و بسته و فیلتر شده را فراهم میسازد. از طریق اسکن پورت، مهاجمان میتوانند پورتهای باز و حمله روی سرویسهای در حال اجرا روی این پورتها را بیابند. جزئیات مربوط به شبکه مانند آدرس IP آدرس,MAC روتر، فیلترینگ گذرگاه، قواعد فایروال و مواردی از این قبیل میتوانند از طریق این حمله شناسایی شوند. تکنیکهای اسکن پورت متعدد شامل اسکن TCP، اسکن UDP، اسکن SYN، اسکن FIN، اسکن ACK، اسکن پنجره میباشند. در سناریو ابر، مهاجم میتواند به سرویسهای عرضهشده از طریق اسکن پورت حمله کند ((Y. song et al. 2013.
۲-۵-۳-حملات روی ماشین مجازی (VM) یا هایپرویژن
Virtual Machine یا ماشین مجازی یا بهاختصار VM درواقع یک سیستمعامل است که بر روی یک نرمافزار مجازی ساز که در اصطلاح Hypervisor نام دارد نصب میشود و به شما این امکان را میدهد تا مانند یک کامپیوتر واقعی یا همان ماشین فیزیکی با آن کارکنید. با به خطر انداختن هایپرویژن لایه پایینتر، مهاجم میتواند به کنترل روی VM های نصبشده دست یابد بهعنوانمثال، BLUEPII، SurVir، DKSM برخی از حملات شناختهشده روی لایه مجازی میباشد. از طریق این حملات، هکرها میتوانند هایپرویژن نصبشده را برای به دست آوردن کنترل رویهاست به خطر اندازند (Kim, Lee et al. 2014).
شبکههای عصبی مصنوعی (ANN) یا Artificial Neural Networks و بهعبارتدیگر سیستمهای اتصال گر، سیستمهای محاسبه کنندهای هستند که از شبکههای عصبی زیستی الهام گرفتهشدهاند. این سیستمها، با بررسی مثالها، فعالیتها را یادگیری میکنند (بهعبارتدیگر عملکرد خود را در انجام فعالیتها بهمرور بهبود میدهند) و عموماً این اتفاق بدون هیچ برنامهنویسی مختص به فعالیت انجام میشود. برای مثال، در شناسایی تصویر، این شبکهها میتوانند یاد بگیرند که تصاویر شامل گربه را با تحلیل تصاویر مثالی که قبلاً بهطور دستی بهعنوان «با گربه» یا «بدون گربه» برچسبگذاری شدند، شناسایی کنند و از این نتایج برای شناسایی گربه در تصاویر دیگر استفاده نمایند. شبکههای عصبی این عمل را بدون دانش قبلی در مورد گربه انجام میدهند؛ یعنی از مثلاً از مو، دم، سیبیل یا صورت گربه خبر ندارند. در عوض، خود مجموعه مشخصههای مرتبط را از مطالب آموزشیای که پردازش میکنند، توسعه میدهند.
یک ANN بر مجموعهای از واحدهای متصل یا گره، به نام نورونهای مصنوعی، مبتنی است (مشابه نورونهای زیستی در مغز حیوان). هر اتصال (سیناپس) میان نورونها میتواند سیگنالی را از یک نورون به نورون دیگر انتقال دهد. نورون دریافتکننده (پُست سیناپتیک) میتواند سیگنال (ها) و سپس نورونهای سیگنالی متصل به آن را پردازش کند. در پیادهسازیهای معمول ANN، سیگنال سیناپس یک عدد حقیقی است و خروجی هر نورون توسط تابعی غیرخطی از ورودیهای آن محاسبه میشود. نورونها و سیناپسها معمولاً دارای وزن هستند که توأم با پیشرفت یادگیری، تنظیم میشود. این وزن، قدرت سیگنالی را که به سیناپس میفرستد افزایش یا کاهش میدهد. نورونها میتوانند آستانهای داشته باشند که تنها اگر سیگنال مجموع از آن آستانه عبور کند، سیگنال فرستاده شود. معمولاً، نورونها در لایهها سازماندهی میشوند. لایههای مختلف ممکن است تبدیلات مختلفی روی ورودی خود اِعمال کنند. سیگنالها از اولین لایه (ورودی) به آخرین لایه (خروجی) سفر میکنند و دراینبین ممکن است لایههایی را چند بار طی کنند. یک شبکه عصبی مصنوعی تربیتیافته میتواند بهعنوآنیک متخصص در مقوله اطلاعاتیای که برای تجزیهوتحلیل به آن دادهشده بهحساب آید. از این متخصص میتوان برای برآورد وضعیتهای دلخواه جدید و جواب سؤالهای «چه میشد اگر» استفاده کرد (Y.Song et al, 2013).
۲-۷-انواع یادگیری برای شبکههای عصبی
۲-۷-۱-یادگیری با ناظر
در یادگیری با ناظر به قانون یادگیری مجموعهای از زوجهای دادهها به نام دادههای یادگیری (Pi,Ti)i={1.…۱} میدهند که در آن Pi ورودی به شبکه و Ti خروجی مطلوب شبکه برای ورودی Pi است. پس از اعمال ورودی Pi به شبکه عصبی در خروجی شبکه ai با Ti مقایسه شده و سپس خطای یادگیری محاسبه و از آن در جهت تنظیم پارامترهای شبکه استفاده میشود بهگونهای که اگر دفعه بعد به شبکه همان ورودی Pi اعمال شود خروجی شبکه به Ti نزدیکتر میگردد با توجه به این نکته که معلم دستگاهی است که بر محیط وقوف دارد (مثلاً میداند که برای ورودی Pi خروجی مطلوب Ti است). توجه داریم که محیط برای شبکه عصبی مجهول است. در لحظه k بردار ورودی (Pik) با تابع توزیع احتمال معینی که برای شبکه عصبی نامعلوم است انتخاب و بهطور همزمان به شبکه عصبی و معلم اعمال میشود. جواب مطلوب (Tik) نیز توسط معلم به شبکه عصبی داده میشود. در حقیقت پاسخ مطلوب پاسخ بهینهای است که شبکه عصبی برای ورودی مفروض باید به آن برسد. پارامترهای شبکه عصبی توسط دو سیگنال ورودی و خطا تنظیم میشود. به این صورت که پس از چند تکرار الگوریتم یادگیری که عموماً توسط معادله تفاضلی بیان میشود به پارامترهایی در فضای پارامترهای شبکه همگرا میشوند که برای آنها خطای یادگیری بسیار کوچک است و عملاً شبکه عصبی شبکه عصبی معادل معلم میشود. یا بهعبارتیدیگر اطلاعات مربوط به محیط (نگاشت بین Ti و Pi) که برای معلم روشن است به شبکه عصبی منتقل میشود و پسازاین مرحله عملاً میتوان بجای معلم از شبکه عصبی استفاده کرد تا یادگیری تکمیل شود.
۲-۷-۲-یادگیری بدون ناظر
در یادگیری بدون ناظر یا یادگیری خود سامانده پارامترهای شبکه عصبی تنها توسط پاسخ سیستم اصلاح و تنظیم میشوند. به عبارتی تنها اطلاعات دریافتی از محیط به شبکه را بردارهای ورودی تشکیل میدهند؛ و در مقایسه با مورد بالا (یادگیری با ناظر) بردار جواب مطلوب به شبکه اعمال نمیشود. به عبارتی به شبکه عصبی هیچ نمونهای از تابعی که قرار است بیاموزد داده نمیشود. در عمل میبینیم که یادگیری با ناظر در مورد شبکههایی که از تعداد زیادی لایههای نرونی تشکیلشده باشند بسیار کند عمل میکند و در اینگونه موارد تلفیق یادگیری با ناظر و بدون ناظر پیشنهاد میگردد.
۲-۷-۳-یادگیری تشدیدی
یک اشکال یادگیری با ناظر این است که شبکه عصبی ممکن است بدون معلم نتواند مواضع جدیدی را که توسط مجموعه دادههای جدید تجربی پوشانده نشده است یاد بگیرد. یادگیری از نوع تشدیدی این محدودیت را برطرف میکند. این نوع یادگیری بهطور on-line صورت میگیرد درحالیکه یادگیری با ناظر را به دو صورت on-line & off-line میتوان انجام داد. در حالت off-line میتوان از یک سیستم محاسب با در اختیار داشتن دادههای یادگیری استفاده کرد و طراحی شبکه عصبی را به پایان رساند. پس از مرحله طراحی و یادگیری شبکه عصبی بهعنوآنیک سیستم استاتیکی عمل میکند؛ اما در یادگیری on-line شبکه عصبی همراه با خود سیستم یادگیر در حال انجام کار است و ازاینرو مثل یک سیستم دینامیکی عمل میکند. یادگیری از نوع تشدیدی یک یادگیری on-line از یک نگاشت ورودی-خروجی است. این کار از طریق یک پروسه سعی و خطا به صورتی انجام میپذیرد که یک شاخص اجرایی موسوم به سیگنال تشدید ماکزیمم شود و بنابراین الگوریتم نوعی از یادگیری با ناظر است که در آن بهجای فراهم نمودن جواب واقعی، به شبکه عددی که نشانگر میزان عملکرد شبکه است ارائه میشود. این بدین معنی است که اگر شبکه عصبی پارامترهایش را بهگونهای تغییر داد که منجر به یک حالت مساعد شد آنگاه تمایل سیستم یادگیر جهت تولید آن عمل خاص تقویت یا تشدید میشود. در غیر این صورت تمایل شبکه عصبی جهت تولید آن عمل خاص تضعیف میشود. یادگیری تقویتی مثل یادگیری با ناظر نیست و این الگوریتم بیشتر برای سیستمهای کنترلی کاربرد دارد.
سامانههای تشخیص نفوذ بهصورت سامانههای نرمافزاری و سختافزاری ایجادشده و هرکدام مزایا و معایب خاص خود رادارند. سرعت و دقت از مزایای سیستمهای سختافزاری است و عدم شکست امنیتی آنها توسط نفوذ گران، قابلیت دیگر اینگونه سیستمها میباشد؛ اما استفادهی آسان از نرمافزار، قابلیت سازگاری در شرایط نرمافزاری و تفاوت سیستمهای عامل مختلف، عمومیت بیشتری را به سامانههای نرمافزاری میدهد و عموماً اینگونه سیستمها انتخاب مناسبتری هستند. بهطورکلی سه عملکرد اصلی IDS عبارت است از: نظارت و ارزیابی، کشف و واکنش. بر همین اساس هر IDS را میتوان بر اساس روشهای تشخیص نفوذ، معماری و انواع پاسخ به نفوذ دستهبندی کرد. قسمت دیگری نیز به نام IPS وجود درد که داخل هسته آن میتوان IDS را یافت. درواقع IDS تنها ورود افراد غیرقانونی به شبکه را شناسایی میکنند اما IPSها جلوی ورودهای غیرقانونی به شبکه را میگیرند. حملات گنجاندهشده دردادههای تست عبارتاند از:
- حملات DOS انکار سرویس
- حملات PROBE بررسی و پویش برای یافتن راههای نفوذ
- حملات R2L دسترسی غیرمجاز از یک ماشین راه دور
- حملات U2R با به دست آوردن مجوز کاربر ROOT دسترسیها انجام میگیرد.
الگوریتم ژنتیک (Genetic Algorithm – GA) تکنیک جستجویی در علم رایانه برای یافتن راهحل تقریبی برای بهینهسازی و مسائل جستجو است. الگوریتم ژنتیک نوع خاصی از الگوریتمهای تکامل است که از تکنیکهای زیستشناسی مانند وراثت و جهش استفاده میکند. الگوریتم ژنتیک که بهعنوآنیکی از روشهای تصادفی بهینه یابی شناختهشده، توسط جآنهالند در سال ۱۹۶۷ ابداعشده است. بعدها این روش با تلاشهای گلدبرگ ۱۹۸۹, مکان خویش را یافته و امروزه نیز بهواسطه تواناییهای خویش، جای مناسبی در میان دیگر روشها دارد.
الگوریتمهای ژنتیک معمولاً بهعنوآنیک شبیهساز کامپیوتر که در آن جمعیت یک نمونهی انتزاعی (کروموزومها) از نامزدهای راهحل یک مسئله بهینهسازی به راهحل بهتری منجر شود، پیادهسازی میشوند. بهطور سنتی راهحلها به شکل رشتههایی از ۰ و ۱ بودند، اما امروزه به گونههای دیگری هم پیادهسازی شدهاند. فرضیه با جمعیتی کاملاً تصادفی منحصربهفرد آغاز میشود و در نسلها ادامه مییابد. در هر نسل گنجایش تمام جمعیت ارزیابی میشود، چندین فرد منحصر در فرایندی تصادفی از نسل جاری انتخاب میشوند (بر اساس شایستگیها) و برای شکل دادن نسل جدید، اصلاح میشوند (کسر یا دوباره ترکیب میشوند) و در تکرار بعدی الگوریتم به نسل جاری تبدیل میشود. الگوریتم ژنتیک جستجو با جمعیتی راهحلهای اولیه تصادفی آغاز کرده و چنانچه معیارهای توقف برآورده نشود، سه عملگر تکثیر، جهش و تقاطع به کار گرفته میشود تا جمعیت بروز شود. ازآنجاکه نمایش راهحلها در این الگوریتم بسیار شبیه به کروموزومهای طبیعی است و همچنین به دلیل شباهت عملگرها ژنتیکی، روند فوق الگوریتم ژنتیک خوانده میشود (Jungsuk Song et al. 2009).
در این فصل مباحث الگوریتم ژنتیک و شبکههای عصبی تشریح شد که اساس پژوهش میباشد و در این پژوهش از ترکیب این دو روش باهدف تشخیص نفوذ میباشد. همچنین روشهای مختلف تشخیص نفوذ تشریح شد تا دید کلی از این موضوع ایجاد شود که در این پژوهش راهکار برای چه مشکلی ارائه میشود.
سیستمهای تشخیص نفوذ بامطالعه رفتار کاربران و اطلاعات موجود در حملات، رفتارهای غیر نرمال را تشخیص میدهند. این سیستمها معایب و مزایای خاص خود رادارند که با تشخیص و یا پیشگیری از حملات نقش مؤثری در تأمین امنیت دارند. محیط ابری هدفی جذاب برای مهاجمان است و تهدیدات جدیدی را به دلیل مدلهای سرویسدهی ایجاد میکند. رایانش ابری اجازه دسترسی سیار به دادههای شرکت را از طریق تلفنها و دستگاههای هوشمند میدهد. با در نظر گرفتن اینکه امروزه اکثر مردم صاحب گوشیهای هوشمند هستند، در هنگام استفاده از ابر میتوانیم مطمئن باشیم که هیچکس از حلقه ارتباطی بیرون نمیماند. با توجه به روشهای معرفیشده تشخیص نفوذ در این فصل، روش پیشنهادی خود را در فصل بعد برای تشخیص نفوذ معرفی خواهیم کرد.