انواع رویکردها و مدلهای موجود در زمینه پیادهسازی سیستم های توصیهگر
در سالهای اخیر شیوه ها، رویکردها، الگوریتمها و مدلهای متنوع و گوناگونی در زمینه توسعه انواع سیستم های توصیه گر مطرح گردیده است که از ابعاد مختلف و با نگاههای متفاوتی به مسئله ارائه پاسخ و پیشنهاد مناسب به کاربران پرداختهاند که در این میان، پارهای از مهمترین و معروفترین روش های موجود به اختصار معرفی میگردند.
یکی از متداولترین شیوه های مطرح"پالایش گروهی"میباشد[۶]. این شیوه با جمعآوری و آنالیز داده های موجود در مورد رفتار گذشته کاربران، فعالیتهای ایشان، سلایق آنها و امتیازاتی که به آیتمهای مختلف توسط ایشان داده شده است و همچنین بر اساس تشابه کاربران یا موضوعات با یکدیگر، مدلی ایجاد مینماید و سپس از آن مدل برای پیش بینی آیتمهای مورد علاقه کاربر یا پیش بینی امتیازدهی یک کاربر به یک آیتم خاص استفاده مینماید[۷]. یکی دیگر از شیوه های موجود در این زمینه “پالایش محتوایی[۱]” میباشد که در این شیوه، مجموعه ای از خصوصیات یک آیتم، برای پیشنهاد آیتمهای جدید با خصوصیات مشابه با آن مورد استفاده قرار میگیرد[۸]. از هر دو روش فوق نسخههایی نیز به صورت تجاری پیادهسازی شده است که به عنوان مثال سیستم توصیهگر موسیقی بکار رفته در سایت Last.fm[2] بر اساس شیوه پالایش محتوایی پیادهسازی شده است در حالیکه در سایت [۳]PandoraRadio از شیوه پالایش گروهی استفاده شده است.
یکی دیگر از شیوه های موجود درخصوص تولید سیستم های توصیهگر، ترکیب هر دو رویکرد فوق تحت عنوان “سیستم های توصیهگر ترکیبی” میباشد[۴]. مطالعات اخیر نشان داده است که در برخی موارد استفاده از ترکیب هر دو شیوه می تواند نتایج موثرتری را ایجاد نماید. این ترکیب می تواند در اشکال و انواع مختلفی صورت گیرد که هر کدام نتایج خاصی را تولید مینمایند[۹]. تحقیقات نشان داده است که ترکیب این دو شیوه می تواند برخی از مشکلات هر کدام از روشها را برطرف نموده و نتایج با دقت بالاتری ایجاد نماید، به عنوان مثال، سیستم توصیهگر ایجاد شده در سایتNetflix[4] از یک سیستم ترکیبی بهره میبرد که در آن عادات مشاهده فیلم، توسط کاربران مشابه (شیوه پالایش گروهی)، در کنار ارائه فیلمهایی که به لحاظ مشخصات، مشابه فیلمهایی هستند که توسط کاربر امتیاز بالاتری اخذ نموده اند (شیوه پالایش محتوایی) در نظر گرفته شده است.
با ظهور شبکه های اجتماعی و شبکه های مبتنی بر اعتماد، رویکردها و ایدههای جدیدی در خصوص ایجاد و بهبود سیستم های توصیهگر، با توجه به ارتباطات میان کاربران و به صورت خاص، وجود رابطه اعتماد میان آنها مطرح گردیدکه منجر به تولید سیستم های توصیه گر مبتنی بر اعتماد شده است[۱۰].
یک شبکه اجتماعی در واقع یک ساختار اجتماعی متشکل از مجموعه ای از بازیگران (شامل کاربران و سازمان آنها) و ارتباطات دوتایی میان این عناصر میباشد[۱۱] که به عنوان نمونه برجستهای از آن می تواند به شبکه اجتماعی facebook اشاره نمود. این ارتباطات می تواند در قالب انواع گوناگون یا بر اساس معیارهای مختلفی مانند: قیمتها، تبادلات مالی، دوستی، خویشاوندی، تجارت، سرایت بیماری یا مسیرهای هواپیمایی و غیره بیان گردند[۱۲]. بررسی ابعاد و زوایای مختلف یک شبکه اجتماعی روش مشخصی برای آنالیز و تحلیل ساختار کلیه عناصر تشکیل دهنده آنرا فراهم می کند. مطالعه این ساختارها از روش “آنالیز شبکه اجتماعی” برای شناسایی الگوهای محلی و سراسری ، یافتن عناصر و موجودیتهای تاثیرگذار در شبکه و بررسی دینامیک شبکه استفاده مینماید[۱۳]. شبکه های اجتماعی و تحلیل آنها یکی از موضوعات میان رشتهای است که به صورت آکادمیک در حوزه های روانشناسی اجتماعی، جامعه شناسی، آمار و تئوری گراف مطرح میباشد.
از دیدگاه تئوری گراف[۱۴] یک شبکه اجتماعی متشکل از تعدادی گره و یال میباشد که گرهها در واقع همان افراد، سازمانها و گروهها میباشند و یالها نیز بیانگر رابطه میان هر دو گره موجود در این گراف میباشند. نکته حائذ اهمیت، پیچیدگی این گرافها به لحاظ تعداد بسیار زیاد گرهها و همچنین یالهای میان آنها میباشد.
یکی از انواع خاص شبکه های اجتماعی وجود یک شبکه مبتنی بر اعتماد میان کاربران میباشد که در آن کاربران عقیده و نظر خود در خصوص اعتماد به دیگران را صراحتا و آشکارا بیان می نمایند و این اعتماد را در قالب امتیازی که به افراد مختلف می دهند بیان می کنند[۱۵]. یک شبکه مبتنی بر اعتماد در واقع یک گراف جهتدار است که می تواند متمایز کننده آن از یک شبکه اجتماعی گردد. گرهها کاربران میباشند و یالهای گراف بیانکننده وجود رابطه اعتماد میان دو کاربر میباشند[۱۶]. به عنوان مثال می توان به سایت Epinions[5] اشاره نمود. این سایت تجارت الکترونیک[۶] مثال بارزی از شبکه مبتنی بر اعتماد می باشد که در آن کاربران در خصوص محصولات، نظرات خود را مطرح می نمایند و می توانند برای محصولات یا نظر سایر کاربران امتیازی در محدوده ۱ تا ۵ را انتخاب نمایند. نکته مهم در خصوص این سایت این است که کاربران می توانند بر اساس کیفیت و تشابه نظر سایر افراد با خودشان، ایشان را به شبکه اعتماد خود اضافه نمایند و شبکه ای از افراد مورد اعتماد خود را تشکیل دهند و یا افراد ناشناس را که نظرات آنها مورد تایید نمی باشد را در لیست سیاه[۷] خود قرار دهند.
سیستم توصیهگری نیز که بر اساس شبکه اعتماد ایجاد میگردد به کاربران بر اساس نظرات افراد موجود در شبکه اعتماد[۸] ایشان و یا بر اساس نظرات افرادی که مورد اعتماد اعضای شبکه اعتماد باشند پیشنهاداتی را ارائه مینماید.
یکی از مباحث مهم و مطرح در اینگونه شبکه ها نحوه بیان و ارزیابی معیار اعتماد میان کاربران میباشد که روش های بسیار متنوع و مختلفی در این خصوص موجود است که طبیعتا منتج به نتایج متفاوتی میگردند[۱۷]. به عنوان مثال تعداد ارتباطات مستقیم و غیرمستقیم میان یک کاربر با کاربر دیگر می تواند بیان کننده میزان اعتماد میان ایشان باشدکه این امر به صورت کلی باعث ارائه جوابهای قابل قبولتری میگردد[۱۸]. نحوه بیان معیار اعتماد و اندازه گیری آن، خود یکی از موضوعات قابل تحقیق و بررسی است که از محدوده این تحقیق خارج بوده و در این تحقیق وجود یک شبکه مبتنی بر اعتماد میان کاربران به عنوان یکی از فرضیه های تحقیق در نظر گرفته می شود و به منظور محاسبه اندازه و مقدار اعتماد میان کاربران از نتایج تحقیق صورت گرفته در این خصوص بهره برداری میگردد[۱۹].
[۱]Content Based Filtering
[۶] E-Commerce
[۷] Block List or Black List
[۸] Web Of Trust (WOT)
از آنجایی که از نظر تکنیکی ایجاد سیستمهای کامپیوتری بدون نقاط ضعف و شکست امنیتی عملا غیر ممکن است. تشخیص نفوذ در سیستمهای کامپیوتری با اهمیت خاصی دنبال می شود. سیستمهای تشخیص نفوذ سختافزار یا نرمافزاری است که کار نظارت بر شبکه کامپیوتری را در مورد فعالیتهای مخرب و یا نقص سیاستهای مدیریتی و امنیتی را انجام میدهد و گزارشهای حاصله را به بخش مدیریت شبکه ارائه میدهد[۱]. سیستمهای تشخیص نفوذ وظیف شناسایی و تشخیص هر گونه استفاده غیر مجاز به سیستم، سوء استفاده و یا آسیب رسانی توسط هر دودسته کاربران داخلی و خارجی را بر عهده دارند. هدف این سیستمها جلوگیری از حمله نیست و تنها کشف و احتمالا شناسایی حملات و تشخیص اشکالات امنیتی در سیستم یا شبکهکامپیوتری و اعلام آن به مدیر سیستم است. عموما سیستمهای تشخیص نفوذ در کنار دیوارهای آتش و بصورت مکمل امنیتی برای آنها مورد استفاده قرار میگیرد. سیستم های تشخیص نفوذ ستنی نمیتوانند خود را با حملات جدید تطبیق دهند از این رو امروزه سیستم های تشخیص نفوذ مبتنی بر داده کاوی مطرح گردیدهاند[۱]. مشخص نمودن الگوهای در حجم زیاد داده، کمک بسیار بزرگی به ما می کند. روشهای داده کاوی با مشخص نمودن یک برچسب دودویی (بسته نرمال، بسته غیرنرمال) و همچنین مشخص نمودن ویژگیها و خصیصه با الگوریتمهای دسته بندی میتوانند داده غیرنرمال تشخیص دهند. از همین رو دقت و درستی سیستم های تشخیص نفوذ افزایش یافته و در نتیجه امنیت شبکه بالا میرود[۱].
در این پایان نامه سعی شده است با بهره گرفتن از روشهای مبتنی بر داده کاوی سیتم های تشخیص نفوذ پیشنهاد کنیم که از این روشها برای شناسایی و کشف حملات استفاده می کنند. در این روش ما تمامی الگوریتمهای موجود را شبیهسازی نموده و در خاتمه بهترین الگوریتم را پیشنهاد مینماییم. نوآوری اصلی در این پایان نامه، استفاده از الگوریتمهای مدل کاهل و مدل قانونمحور در داده کاوی است که تاکنون برای سیستمهای تشخیصنفوذ استفاده نشده است. همچنین استفاده از تمام الگوریتمهای موجود در روشهای دستهبندی است که در نرم افزار WEKA و Rapidminer موجود است[۶۷]. پیشنهاد ۵ نمونه داده که از داده اولیه استخراج شده و برای مدلهای مختلف و الگوریتمها بهترین جواب را میدهد از نوآوری این پایان نامه است. استخراج ۵ نمونه داده وقت بسیار زیادی به خود اختصاص داده وهمه الگوریتمهای مختلف موجود در مدلهای دستهبندی با مجموعه داده های مختلف شبیهسازی و اجرا شدند که در نهایت ۵ نمونه داده اولیه پیشنهاد نمودهایم.
در دنیای امروز، کامپیوتر و شبکه های کامپیوتری متصل به اینترنت نقش عمدهای در ارتباطات و انتقال اطلاعات ایفا می کند. در این بین افراد سودجو با دسترسی به اطلاعات مهم مراکز خاص یا اطلاعات افراد دیگر و با قصد اعمال نفوذ یا اعمال فشار و یا حتی به هم ریختن نظم سیستمها، به سیستم های کامپیوتری حمله می کنند. بنابراین لزوم حفظ امنیت اطلاعاتی و حفظ کارآیی در شبکه های کامپیوتری که با دنیای خارج ارتباط دارند، کاملا محسوس است.
مکانیزمهای امنیتی به ۲ گروه کلی محافظتی و مقابلهای تقسیمبندی میشوند. مکانیزمهای محافظتی سعی میکنند از اطلاعات و سیستم در مقابل حملات محافظت کنند. مکانیزمهای مقابلهای هم برای مقابله با حمله تدارک دیده شدهاند.[۱] سیستمهای تشخیص نفوذ مطابق تعریف مؤسسه ملی استانداردها و تکنولوژیهای آمریکا، فرایندی هستند که کار نظارت بر رویدادهایی که در شبکه و سیستم رخ میدهد و همچنین کار تحلیل رویدادهای مشکوک را برای بهدست آوردن نشانه نفوذ، بر عهده دارند.
هدف از این پایان نامه استفاده از روشهای مبتنی بر داده کاوی برای تشخیص نفوذ است زیرا حملات همواره بروز میشوند و سیستمهای تشخیص نفوذ ستنی نمیتوانند این حملات شناسایی کنند. وقتی نفوذ اتفاق میافتد مهمترین کار شناسایی است. رخداد مربوط به نفوذ در هر زمان مرتبط به الگویی ازاتفاقات است که در گذشته رخ داده است. این داده های تاریخی منبع بسیار مهمی از صفات هستند که نیاز هست تا بطور موثر علامت و نشانه های نفوذ در مجموعه داده ها مشخص شود. داده کاوی با کشف الگوهای مناسب از میان داده های قبلی به روند ساخت این مدل ها کمک شایانی می کند. در این روش مجموعه ای از قانونهای دستهبندی از داده های شبکه بدست میآید. این قانونها توانایی تعیین رفتار عادی از غیر عادی را دارا میباشند. این پایان نامه با بهره گرفتن از مجموعه داده DARPA مورد ارزیابی قرار گرفته است. هدف اصلی این پایان نامه معرفی بهترین الگوریتم با توجه به مجموعه داده ها است. که بتواند بسته های عادی را از غیر عادی تشخیص دهد. .نوآوری اصلی در پایان نامه، استفاده از الگوریتمهای مدل کاهل و مدل قانونمحور است که تاکنون برای سیستمهای تشخیصنفوذ استفاده نشده است. همچنین استفاده از تمام الگوریتمهای مجود در روشهای دستهبندی است که در نرم افزار WEKA و Rapidminer موجود است. و پیشنهاد ۵ نمونه داده که از داده اولیه استخراج شده و برای مدلهای مختلف و الگوریتمها بهترین جواب را میدهد. استخراج ۵ نمونه داده وقت بسیار زیادی به خود اختصاص داده وهمه الگوریتمهای مختلف موجود در مدلهای دستهبندی با مجموعه داده های مختلف شبیهسازی و اجرا شدند که در نهایت ۵ نمونه داده اولیه پیشنهاد نمودهایم.
در این بخش قصد داریم مهمترین الگوریتمها و مدلهای داده کاوی را بررسی کنیم. بسیاری از محصولات تجاری داده کاوی از مجموعه از این الگوریتم ها استفاده می کنند و معمولا هر کدام آنها در یک بخش خاص قدرت دارند و برای استفاده از یکی از آنها باید بررسی های لازم در جهت انتخاب متناسبترین محصول توسط گروه متخصص در نظر گرفته شود.نکته مهم دیگر این است که در بین این الگوریتم ها و مدل ها ، بهترین وجود ندارد و با توجه به داده ها و کارایی مورد نظر باید مدل انتخاب گردد.
هر شبکه عصبی شامل یک لایه ورودی[۲]میباشد که هر گره در این لایه معادل یکی از متغیرهای پیش بینی میباشد. گرههای موجود در لایه میانی به تعدادی گره در لایه نهان[۳]وصل میشوند. هر گره ورودی به همه گرههای لایه نهان وصل می شود.
گرههای موجود در لایه نهان میتوانند به گرههای یک لایه نهان دیگر وصل شوند یا میتوانند به لایه خروجی[۴]وصل شوند.
لایه خروجی شامل یک یا چند متغیر خروجی می باشد
هر یال که بین نود هایX,Y میباشد دارای یک وزن است که با Wx,y نمایش داده می شود. این وزن ها در محاسبات لایه های میانی استفاده میشوند و طرز استفاده آنها به این صورت است که هر نود در لایه های میانی (لایه های غیر از لایه اول) دارای چند ورودی از چند یال مختلف میباشد که همانطور که گفته شد هر کدام یک وزن خاص دارند.
هر نود لایه میانی میزان هر ورودی را در وزن یال مربوطه آن ضرب می کند و حاصل این ضربها را با هم جمع می کند و سپس یک تابع از پیش تعیین شده (تابع فعالسازی) روی این حاصل اعمال می کند و نتیجه را به عنوان خروجی به نودهای لایه بعد میدهد.
وزن یالها پارامترهای ناشناختهای هستند که توسط تابع آموزش [۵]و داده های آموزشی که به سیستم داده می شود تعیین میگردند.
تعداد گرهها و تعداد لایه های نهان و نحوه وصل شدن گرهها به یکدیگر معماری(توپولوژی) شبکه عصبی را مشخص می کند.کاربر یا نرم افزاری که شبکهعصبی را طراحی می کند باید تعداد گرهها ، تعداد لایه های نهان ، تابع فعالسازی و محدودیتهای مربوط به وزن یالها را مشخص کند[۳].
[۱]Neural Networks
[۲]Input Layer
[۳]Hidden Layer
[۴]Output Layer
[۵]Training method
فهرست
عنوان صفحه
فصل اول : مقدمه و کلیات تحقیق. ۱
۱-۱) تعریف سیستم تشخیص نفوذ : ۲
۲-۱) اما چه چیزهایی سیستم تشخیص نفوذ نیست؟ ۲
۳-۱ ) دسته بندی حملات : ۴
۴-۱) انواع دسته بندی سیستم های تشخیص نفوذ : ۴
۱-۴-۱) روش های تشخیص نفوذ. ۶
۱-۱-۴-۱) روش تشخیص امضاء : ۶
۲-۱-۴-۱) روش تشخیص بر اساس ناهنجاری : ۶
۳-۱-۴-۱) روش ترکیبی : ۷
۲-۴-۱) دسته بندی براساس ساختار سیستم حفاظتی. ۸
۱-۲-۴-۱) سیستم تشخیص نفوذ مبتنی بر میزبان : ۸
۲-۲-۴-۱) سیستم تشخیص نفوذ مبتنی بر شبکه : ۹
۳-۲-۴-۱) مدل ترکیبی: ۹
۳-۴-۱) دسته بندی از لحاظ ساختار پردازشی: ۱۰
۴-۴-۱) دسته بندی بر اساس نوع منابع داده: ۱۰
۵-۴-۱) دسته بندی براساس رفتار بعد از حمله: ۱۰
۶-۴-۱) دسته بندی بر اساس جنبه های زمانی. ۱۰
فصل دوم : ادبیات و پیشینه تحقیق. ۱۲
۱-۲) داده کاوی: مقدمه. ۱۳
۲-۲) داده کاوی: مفاهیم کلی ۱۳
۳-۲) روال داده کاوی ۱۶
۱-۳-۲) بیان مسأله و فرمول بندی فرضیه ۱۷
۲-۳-۲) گردآوری داده ۱۷
۳-۳-۲) انجام پیش پردازش ۱۸
۴-۳-۲) تشخیص و حذف داده های زائد ۱۸
۵-۳-۲) برآورد مدل (کاوش داده) ۱۹
۶-۳-۲) تعبیر مدل و استخراج نتایج ۱۹
۴-۲) آشنایی با مجموعه داده KDD : 20
۵-۲) ماشین های بردار پشتیبان. ۲۳
۱-۵-۲) دسته بندی کننده بردار پشتیبانی. ۲۴
۲-۵-۲) SVC با حاشیه انعطاف پذیر. ۳۰
۳-۵-۲) کرنل: ۳۳
۱-۳-۵-۲) انواع کرنل ها : ۳۵
۴-۵-۲) مقایسه ماشین های بردار پشتیبان با شبکه های عصبی. ۳۵
۳-۵-۲) نقاط ضعف ماشین های بردار پشتیبان. ۳۶
فصل سوم : روش تحقیق. ۳۹
۱-۳) بهینه سازی.. ۴۰
۲-۳) مقایسه ریشه یابی با بهینه سازی: ۴۰
۳-۳) انواع بهینه سازی: ۴۱
۴-۳) فراابتکاری.. ۴۲
۵-۳) انواع الگوریتمهای ابتکاری.. ۴۴
۱-۵-۳) الگوریتم ژنتیک.. ۴۶
۱-۱-۵-۳) مراحل انجام الگوریتم ژنتیک.. ۴۷
۲-۱-۵-۳) عملگرهای الگوریتم ژنتیک: ۴۷
۳-۱-۵-۳) شرایط خاتمه برای الگوریتم ژنتیک.. ۵۸
۲-۵-۳) الگوریتم رقابت استعماری (ICA) 58
۷-۲-۵-۳) مراحل الگوریتم رقابت استعماری.. ۶۹
۳-۵-۳) الگوریتم بهینه سازی توده ذرات (PSO ) 71
مراحل الگوریتم PSO.. 72
فصل چهارم : محاسبات و یافته های تحقیق. ۷۳
فصل پنجم: نتیجه گیری و پیشنهادات.. ۸۳
مراجع: ۸۵
فهرست جداول
عنوان صفحه
جدول ۲- ۱ دسته بندی رکورد های انتخابی بر اساس الگوریتم های اعمالی. ۲۲
جدول ۲-۲ بررسی ویژگی های رکوردهای موجود در KDD CUP 99. 88
جدول ۴-۱ نتایج حاصل از ترکیب الگوریتم های فراابتکاری با ماشین های بردار پشتیبان چندکلاسه ۷۶
سیستم تشخیص نفوذ[۱] (IDS) یک سیستم دفاعی است که فعالیت های خصمانه در یک شبکه کامپیوتری را پیدا می کند. به عبارت دیگر مهمترین مسئله در این سیستم ها این است که اغلب فعالیت هایی که ممکن است امنیت سیستم را به خطر بیندازد و یا کارهایی که منجر به شروع یک خرابکاری در سیستم بشود را تشخیص می دهد مانند شناسایی اولیه اطلاعات سیستم ها و یا فاز جمع آوری داده که منجر به آسیب رساندن به سیستم می شود مانند عملیات اسکن پورت های سیستم.
یک ویژگی مهم سیستم های تشخیص نفوذ توانایی آن ها در نمایش فعالیت های غیرنرمال در شبکه می باشد مانند تلاش کاربران برای ورود به محیط های غیر مجاز و اعلام خطر به مدیر سایت.
علاوه بر آن یک سیستم تشخیص نفوذ این توانایی را دارد که بتواند حملاتی که از داخل یک سازمان و یا خارج از سازمان به داخل آن می شود را تشخیص دهد.
برای درک بهتر سیستم های تشخیص نفوذ باید گفت که برخلاف لغات و اصطلاحات بکار رفته در تعاریف بالا هر چیزی را نمی توان در این دسته بندی قرار داد. به صورت منحصر به فرد ابزار های زیر یک سیستم تشخیص نفوذ نمی باشد:
۱-۲-۱ ) ابزارهایی که برای نگهداری گزارش روزانه یک سیستم بکار می رود به عنوان مثال تشخیص انواع آسیب پذیری هایی که منجر به از کار افتادن سیستم می شود. این ابزارها سیستم های مانیتور ترافیک شبکه می باشند.
۲-۲-۱ ) ابزارهایی که برای تشخیص آسیب پذیری های مربوط به باگ و عیب سیستم های عامل و سرویس های شبکه بکار می روند برای مثال Cyber Cop Scanner
۳-۲-۱ ) ابزارهایی که برای تشخیص نرم افزارهای مخرب مانند ویروس ها، اسب های تروجان، کرم ها و بمب های منطقی طراحی شده اند. اگر چه این موارد بسیار شبیه ویژگی های سیستم های تشخیص نفوذ می باشند یا به عبارت دیگر می توانند زمینه را برای یک نفوذ آماده کنند.
نکته : ویروس ها برنامه هایی هستند که مشابه ویروس های زیستی گسترش یافته و پس از وارد شدن به کامپیوتر اقدامات غیر منتظره ای انجام می دهند. برای اینکه یک برنامه به عنوان ویروس شناخته شود فقط کافیست در ساختار خود یک واحد تکثیر کننده داشته باشد تا بتوانند سایر برنامه های دیگررا آلوده کنند اما درواقع ویروس ها در ساختار خود دارای چهار فسمت اصلی می باشند:
واحد پنهان کننده : یک برنامه گمراه کننده که باعث می شود ویروس بتواند خود را در کامپیوتر پنهان کند
واحد تکثیر کننده : یک برنامه تکثیر کننده که بوسیله آن ویروس می تواند خود را تکثیر کرده و برنامه بیشتری را آلوده کند.
واحد فعال کننده : یک کلید فعال کننده که باعث می شود ویروس در زمان خاصی یا بعد از انجام عمل خاصی فعال شود.
واحد اجرایی :قسمت اجرایی ویروس که ممکن است فقط یک نمایش بدون خطر باشد و یا یک برنامه خطرناک که باعث وارد شدن صدمه به سیستم شود.
اسب های تروجان : بزرگترین تفاوت اسب های تروجان (تراوا) و یک ویروس این است که اسب های تراوا خودشان منتشر نمی شوند.
کرم ها : کرم های کامپیوتری برنامه های هستند که بطور مستقل تکثیر و اجرا و در سراسر ارتباطات شبکه منتشر میشوند.
تفاوت اصلی بین ویروس ها و کرم ها در روش تکثیر و پخش آنهاست. یک ویروس وابسته به یک فایل میزبان یا بخش راه انداز است در حالیکه یک کرم میتواند کاملا مستقل اجرا شود و از طریق ارتباطات شبکه منتشر گردد.
۴-۲-۱ ) فایروال ها
۵-۲-۱ ) سیستم های رمزنگاری اینترنتی مانند VPN، SSL، Kerberos و غیره[۲۸]
بطور کلی حملات را می توان به چهار دسته زیر تقسیم بندی کرد:
۱-۳-۱) وارسی[۲] : در این نوع از حملات شخص مهاجم برای جمع آوری اطلاعات و یا یافتن نقاط آسیب پذیر سیستم شروع به جمع آوری اطلاعات از سیستم یا شبکه می کند.
۲-۳-۱) حمله از کار انداختن سرویس[۳] : در این حمله مهاجم آنقدر منابع سیستم را با بهره گرفتن از ابزارهایی که دارد مشغول می کند که سیستم سرویس دهنده بدلیل اتمام منابع قادر به پاسخگویی به سرویس ها نمی باشد.
۳-۳-۱) حمله کاربر به ریشه[۴] : در این حمله مهاجم قصد دارد با دستیابی به نام کاربری یک کاربر مجاز در سیستم، نقاط آسیب پذیر را کشف کند.
۴-۳-۱) حمله کنترل از راه دور[۵] : در این حمله مهاجم از راه دور و از طریق شبکه بسته هایی را به سیستم های مورد نظر ارسال میکند تا بتواند نقاط آسیب پذیر سیستم را کشف کند [۵].
[۱] Intrusion Detection System
[۲] Probing
[۳] Denial of Service
[۴] User to Root
[۵] Remote to Local