تشخیص فازی حمله های مخرب به برنامه های تحت وب مبتنی بر مدلهای مخفی مارکوف گروهی

نوع مقاله: مقاله پژوهشی

چکیده

چکیده: در این مقاله برای تشخیص درخواستهای HTTP که با هدف خرابکاری یا نفـوذ بـه برنامـه هـای تحـت وب ارسـال میشوند، سیستم تشخیص نفوذی ارائه میشود که با نظارت بر آنها، با داشتن نرخ کشف حملۀ بالا، به پایینترین نرخ مثبت کاذب دست یابد. به این منظور هر ویژگی استخراج شده از یک درخواست HTTP بهوسیلۀ تعدادی HMM ،تحت عنوان یک گروه دستهبندیکننده، مدلسازی میشود. سپس با ادغام خروجیهای حاصـل از HMMهـای درون یـک گروه، مقدار احتمالی تولید میشود که نشاندهندة میزان نرمال بودن ویژگی مربوطه میباشد. این سیستم از استنتاج فازی برای برقراری مرز تصمیمگیری انعطافپذیر بین درخواستهای HTTP نرمال و غیرنرمال استفاده میکند. بـ ه این منظور، ابتدا مجموعهها و قوانین فازی ماژول تصمیمگیری به صورت دستی و بـر اسـاس برنا مـۀ کـار بردی و ارزش امنیتی هر ویژگی شکل میگیرند؛ سپس خروجی احتمالی هر یک از گروههای HMM با توجه به مجموعههای فازی تولید شده، فازی میشود. این مقادیر فازی توسط موتور استنتاج فازی بهکار گرفته میشود و به خروجی که حاکی از نرمال و یا غیرنرمال بودن درخواست HTTP میباشد، تبدیل میگردد. آزمایشها نشان میدهد که ایـن در تشخیص درخواستهایی که نزدیک به مرز تصمیمگیری قرار گرفتـه انـد، از دقـت خـوبی برخـوردار اسـت و بـ رای مجموعۀ آزمایشی 550 درخواست HTTP با نرخ کشف حملۀ 100 ،٪دارای نرخ مثبت کاذب 79.0 ٪میباشد.

کلیدواژه‌ها


1 -مقدمه
امـروزه اینترنــت بـهعنــوان یکـی از بهتــرین
اختراعهـای بشـر، تـ أثیر شایسـته ای در زنـدگی
روزمرة انسانها گذاشته و در اکثـر زمینـه هـای
اجتماعی، علمـی و ... گسـترش یافتـه اسـت . قـرار
گــرفتن اینترنــت در چنــین جایگــاه ارزشــمندی
مشــکلاتی را نیــز بــه همــراه داشــته اســت کــه
مهمترین آنها دسترسـی غیرمجـاز بـه اطلاعـات
مهم میباشد. در ایـن میـان یکـی از محصـولات
اینترنت که بیش از هر محصـول دیگـر ی مـورد
استقبال قرار گرفته است، برنامـه هـای کـاربردی
1 تحت وب
مـی باشـ د کـه در زمینـه هـای مختلـف
ارتبـــاطی، علمـــی، پزشـــکی، کســـب و کـــار و
ســرویسهــای عمــومی گســترش یافتــ ه اســت.
برنامههای کاربردی تحت وب نیز خـارج از ایـن
قاعده نبودهانـد و حتـی بـه دلیـ ل سـاختاری کـه
دارند، بیشـتر تحـت تـ أثیر حملـه هـا و نفوذهـای
غیرمجاز قرار مـی گیرنـد [2 ،[از ایـن رو در ایـن
مقاله روشی برای تشخیص حملههای برنامههای
کاربردی تحت وب ارائه میگردد.
تشخیص نفوذ، یک فرآیند نظارت بـر حـوادث
اتفاق افتاده در یک سیستم کامپیوتری و یـا یـک
شبکۀ کامپیوتری میباشد که هدف آن تشـخیص
نشانههایی مبنی بر نفـوذ غیرمجـاز مـی باشـد و
سیسـتم تشـخیص نفـوذ نیـز نـرم افـزاری بـرای
پیادهسازی ایـن فرآینـد مـی باشـد . سیسـتم هـای
تشخیص نفوذ از نظر عملیاتی و تکنیکهای مورد

1 - Web Applications
2 استفاده به دو دستۀ اصـلی مبتنـی بـر امضـاء
و
3 مبتنـی بـر بـینظمـی
تقسـیم مـیشـوند. هـدف
سیسـتمهـای تشـخیص نفـوذ مبتنـی برامضـاء،
کشف حملاتی میباشد که درگذشـته رخ داده انـد
و هــر چنــد آنهــا از نظــر نــرخ خطــا نســبت بــه
سیستمهای تشخیص نفـوذ مبتنـی بـر بـی نظمـی
بهتر عمل میکنند، امـا در زمینـ ۀ کشـف حمـلات
جدید
4
دارای ضعف میباشند که این نقطه ضـعف
در سیستمهای مبتنی بر بینظمی تـا حـد زیـادی
برطـرف شـده اسـت. هـدف اصـلی در ایـن کـار
توسعۀ یک سیستم تشخیص نفوذ با دقـت بـالا و
حــداقل خطــا مــی باشــد کــه بــ ا نظــارت بــر
درخواستهـای HTTP و تشـخیص بـی نظمـی در
آنهــا، بــه کشــف حملــه هــای علیــه برنامــههــای
کاربردی تحت وب میپـردازد . روش پیشـنهادی
براساس سـاختار سیسـتم هـای تشـخیص نفـوذ
مبتنی بر بینظمی پیکربندی شده است و از مـدل
مخفی مارکوف و استنتاج فازی برای حل مسـئله
تشخیص بینظمی استفاده میکند.
دو وظیفۀ مهم در تشـخیص بـ ینظمـی، مـدل
سـازی و دسـتهبنـدی الگـوهـا و تصـمیمگیـری
میباشد کـه اگـر بـه خـوبی انجـام شـو ند، آنگـاه
میتوان عملکرد بهتری را در تشخیص بینظمـی
مشــاهده نمــود . سیســتم پیشــنهادی دارای دو
راهکار مهم میباشد که باعث میشـوند وظـایف
یاد شده بهخوبی انجام شـوند و در نتیجـه دقـت

2- Signature
3- Anomaly
4- Zero Days Attacks
های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله
71
تشـخیص حمـلات سیسـتم افـزایش یابـد . اولـین
راهکـار سیسـتم، اسـتفاده از دسـتهبنـدیکننــدة
1 چندگانه
برای مدلسازی هـر ویژگـی اسـتخراج
شده از یک درخواست HTTP میباشد، به طوری
که با ادغام خروجیهـای بـ ه دسـت آمـده از هـر
دستهبندیکننده، میتوان خطـای ناشـی از تعـداد
محدودی از دستهبنـدی کننـده هـا را توسـط ر أی
اکثریــت نادیــده گرفــت . راهکــار مهــم دیگــر،
بـهکـارگیری مـرزی نـرم و انعطـافپـذیر بـرای
تفکیک درخواستهای HTTP نرمـال و غیرنرمـال
میباشد. در اکثر کارهای گذشـته، از یـک مقـدار
آستانه برای تفکیک درخواستهای HTTP نرمـال
و غیرنرمال استفاده شده است که این امر بـرای
تفکیــک درخواســتهــایی کــه در نزدیکــی مــرز
تصمیمگیری قرار دارند، دارای ضعف مـی باشـد .
اگر درخواستهای HTTP نرمال و غیرنرمـال بـه
وضوح از یکدیگر قابل شناسایی باشند، سیسـتم
تشخیص نفوذ میتواند با دقت بالاتری عملکنـد .
در این روش برای تعریـف مـرزی مناسـب بـین
الگوهـای نرمـال و غیرنرمـال از اسـتنتاج فـازی
استفاده شده است. با توجـه بـه دو راهکـار یـاد
شده، سیستم تشخیص نفـوذ پیشـنهادی، ضـمن
داشتن نرخ کشف قابل قبـول، دارای پـایین تـرین
نرخ مثبت کاذب میباشد.
بنابراین ابتدا در بخش 2 ،بعضی از فعالیتها
و تلاشهایی که در راستای این موضـوع انجـام
شــدهانــد، بررســی مــی شــوند و بخــش 3 بــه

1- Multiple Classifier
روشهــای کــاهش نــرخ خطــا و افــزایش دقــت
تشخیص حمله به برنامههای کاربردی تحـت وب
میپردازد. در بخش 4 ،سیستم پیشـنهادی شـرح
داده شــده و بخــش 5 ،آن را مــورد ارزیــابی و
آزمــایش قــرار مــی دهــد. در نهایــت بحــث و
نتیجهگیری در قسمت 6 بیان شده است.
2 -کارهای مرتبط
در زمینـــۀ تشـــخیص نفـــوذ فعالیـــت هـــای
ارزشمندی صورت پذیرفتـه اسـت . درمیـان ایـ ن
فعالیتها استفاده از ابزار مدل سازی قدرتمنـدی
به نام مدل مخفی مارکوف رایج میباشد. از ایـن
پس در این کار بهجای مدل مخفـی مـارکوف بـه
2 طور اختصار از
HMM استفاده میشـود . HMM
ابزار مناسبی برای مدل سازی رفتارهای نرمـال
میباشد و بر اساس آن مـی تـوان بـه شناسـایی
نویزها و رفتارهای غیرنرمال پرداخت. این ابزار
در فعالیتهای دیگری چـون تشـخیص حرکـت و
تشخیص گفتار نیز بهکار گرفته شده است. کرونا
و همکاران [5 [چارچوب جدیدی را ارائه نمودنـد
کــه در آن پــرس وجــوهــای ارســال شــده بــه
برنامههـای کـاربردی تحـت وب، بـا اسـتفاده از
HMM مورد تحلیل قرار میگیرند و توجه خاصی
به وجود نویز در دادههای آموزشی دارد. آقـای
یونگ ژونک لی [6 [راهکاری فـازی بـرای HMM
بـهکـار بـرده اسـت کـه درآن سیسـتم بـه طـور
انعطافپـذیری قابلیـت وفـق پـذیری بـا تغییـرات
الگوها را دارد، در نتیجه در شـناخت حملـه هـای

2- Hidden Markov Models
ی ـ مهندس در طراحـی ات ـ اوری اطلاع ـ ه فن ـ مجل
72
جدید بهبود یافته است. دایو ژانـگ همونـگ [10[
برای شناسـایی بـی نظمـی هـا در فراخـوانی هـای
سیستمی برنامههای سیسـتمی، شـمای فـاز ی را
برای سیستم تشخیص نفوذ تعریف کـرد ه اسـت
که در آن بـه جـای اسـتفاده از شـرایط قطعـی و
کلاسیک از منطق فـازی اسـتفاده مـی کنـد . آقـای
آجیـت آبراهـام و همکـاران [13 [از تکنیـکهـای
محاسباتی نرم به ویژه منطق فازی و شبکههـای
عصبی به منظور ساخت یـک سیسـتم تشـخیص
نفوذ قدرتمند و انعطافپذیر استفاده کردهاند. این
سیســتم مبتنــی بــر مــدل ســازی چندگانــه بــا
اندازهگیریهای مختلف میباشـد و در نهایـت از
منطق فازی برای تصـمیم گیـری نهـایی اسـتفاده
کردهاست. آقای کروگـل [9 [یـک چـارچوب چنـد
مدلی برای تشخیص حملـه هـا علیـه برن امـه هـای
کــاربردی تحــت وب معرفــی کــرده اســت کــه
پرسوجوهای دریافتی را هم از نظر ویژگیهـای
مکانی و هـم از نظـر ویژگـی هـای زمـانی مـور د
تحلیل قرار میدهـد . در میـان مـد ل سـازی هـای
مختلفی که در آن ارائه گردیده است، HMM نتایج
بهتری را از خود بهجای گذاشت.
استوز تاپیادور [11 [روشی مبتنی بر نظارت بـر
درخواستهای HTTP دریافتی ارائه کردهاست که
از طریق یک مدل مارکوفی که شامل مجموعـه ای
از حالات و گذر بین این حالات مـی باشـد، سـعی
در تشخیص حمله به سرورهای وب را دارد و با
توجـه بــه مشخصـات پروتکــل HTTP در مــورد
نرمــال یــا حملــه بــودن یــک درخواســت HTTP
تصمیمگیری میکند.
3 -افزایش دقت تشخیص
همانطور که گفته شـد، هـدف اصـلی در ایـن
کار کاهش نرخ خطا میباشد. خطا میتواند شامل
حملهای باشد کـه سیسـتم تشـخیص نفـوذ آن را
بـهعنـوان درخواسـت HTTP نرمـال مـیشناسـد
(منفی کاذب)
1
یا درخواسـت HTTPی نرمـالی کـه
سیستم آن را با برچسب حمله همـراه مـی سـازد
(مثبت کاذ
2
. قبل از این که چگونگی افـزایش دقـت
سیستم تشخیص نفوذ مـورد بحـث قـرار گیـرد ،
ابتدا باید به دو موضوع مرتبط با خطا و دقت در
تشخیص اشاره شود.
معمولاً در یک سیستم تشخیص نفوذ، بـرای هـر
درخواست HTTP و یا هر ویژگی استخراج شـده
از آن فقط یک HMM آموزش مـی بینـد و فقـط از
همان مدل بهمنظور دستهبنـدی درخواسـت هـای
HTTP استفاده میشود. این امر باعـث مـی شـود
نتیجۀ مورد نظـر تحـت تـ أثیر خطاهـای آن مـدل
قـرار گیـرد. ایـن خطاهـا ممکـن اسـت بـه دلیـل
نامناسب بودن مجموعـه داده هـای آموزشـی یـا
استفاده از الگوریتمهای آموزشی نامناسب و یـا
پیکربندی نامناسب HMM بهوجود آیند.
موضــوع، اســتفاده از یــک مقــدار آســتانه
بهعنوان مرز بین درخواستهای HTTP نرمـال و
غیرنرمال میباشد. مقدار آستانه در فاز آموزش
و بهصورت آزمون و خطـا بـه دسـت مـی آیـد و
برای درخواستهای HTTP کـه نزدیـک بـه مـرز
دستهبندی قرار دارند، به خوبی عمل نمـی کنـد و

1- False Negative
2- False Positive
های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله
73
باعث افزایش خطای سیستم میشود. همانطـور
که در شـکل (1 (مشـاهده مـی کنیـد نقـاطی از دو
دستۀ نرمال و غیرنرمال که به ترتیب بـا نقطـه و
ضربدر مشـخص شـده انـد ، توسـط یـک خـط از
یکدیگر جدا شدهاند که این خط مرز تصمیمگیری
نامیده میشود. در این میان نقاطی که در نزدیکی
مرز تصمیمگیـری و در ناحیـه ای بـه نـام ناحیـ ۀ
خاکســتری قــرار گرفتــهانــد، کاندیــدهای اصــلی
خطاها میباشند، بهطـوری کـه حتـی کـوچکترین
تغییر در الگوهای نرمال سبب افزایش نرخ مثبـت
کاذب میشود. این وضیعت دارای ریسک بـالایی
مـی باشـد ؛ زیـرا بـا حجـم بسـیار بـالای ترافیـک
درخواستهـای HTTP ممکـن اسـت تعـداد زنـگ
خطرهـای اشـتباه افـزایش یابـد . از طرفـ ی دیگـر
1 حملات ضعیفی
کـه در نزدیکـی ایـن مـرز قـرار
دارنـد ممکـن اسـت بـه عنـوان درخواسـت HTTP
نرمال شناخته شوند.
شکل (1 :(دستهبندی دو الگـو نرمـال و غیـر نرمـال : نقـاط
نزدیک به مرز تصمیمگیـری کـه در ناحیـه ای بـین دو خـط
بریده شده قرار دارند (ناحیۀ خاکستری)، کاندیدهای اصـلی
خطاهای تشخیص میباشند.

1- Fake attack
در ادامه دو تکنیک استفاده شده در ایـن کـار
که باعث افزایش دقت و کاهش خطـای تشـخیص
بینظمی در درخواستهای HTTP میشود، بیـان
میگردد که عبارتند از سیستمهـا ی دسـته بنـدی
کننده چندگانه و مرز نرم.

3 -1 -سیستمهای دستهبندی کنندة چندگانه
2 سیستمهای دستهبندی کننده چندگانه (MCS(
در مسـائل تشـخیص الگـو بـه طـور گسـتردهای
مورد استفاده قرار گرفتهاند، به طوری که نسـبت
به سیستمهای تکدسته بندی کننده دقت بیشتری
را از خود نشان دادهاند. دلایل این امر را میتوان
در [4،3 [مشاهده نمود. یک MCS مـی تواننـد یـک
3 گـــروه دســـتهبنـــدیکننـــده،
یـــک سیســـتم
دستهبندیکنندة مرکب، یـک سیسـتم هـای خبـر ة
چندگانـــه و ... باشـــد. هـــر چنـــد یـــک گـــروه
دستهبندیکننده دارای دقت بیشتری نسبت به یک
دستهبندیکننده در دستهبندی میباشد، امـا بایـد
در نظر داشت که این افزایش دقت باعث افـزایش
پیچیدگی سیستم نیز میگردد. بنابراین باید بـین
افزایش پیچیدگی و افـزایش دقـت تعـادل برقـرار
نمود تا سیسـتمی دقیـق و نـه چنـدان پیچیـده ای
حاصل شود.
به طور کلی یک MCS توسـط مجموعـه ای از
دســتهبنــدیکننــدههــای متمــایز، تصــمیماتی را
استخراج میکند و با ترکیب آن ها به دستهبنـدی
دقیقتری دست مییابد. بر اساس [12 [حداقل به

2- Multiple Classifier System
3- Classifier ensemble
ی ـ مهندس در طراحـی ات ـ اوری اطلاع ـ ه فن ـ مجل
74
یکی از دلایل ذیل بهجای یک دستهبنـدی کننـده از
گروهی از دستهبندیکنندهها استفاده میشود:
1 -محاسـباتی: در خیلـی از مـوارد آمـوزش
بهینــۀ یــک دســتهبنــدیکننــده، یــک مســئله NP
میباشد. از اینرو اکثر الگوریتمهای یادگیری از
جستجوی تصـادفی اسـتفاده مـی کننـد و در پـی
یافتن یک حد مطلوب محلـی مـی باشـند . ایـن حـد
مطلوب محلی بـه نقطـه شـروع فراینـد یـادگیری
بستگی دارد. بنـابراین اگـر فراینـد یـادگیری هـر
دستهبندیکننـده از نقـاط متمـایزی شـروع ک نـد،
میتوان با ترکیبی از دستهبندیکنندهها به تقریبی
نزدیک به یک دستهبندی کنندة بهینه دست یافت.
2 .آمــــــاری: اگــــــر از مجموعــــــهای از
دستهبندیکنندهها روی یـک مجموعـ ۀ آموزشـی
استفاده کنـیم و خروجـی همـ ۀ آن هـا را بـا هـم
ترکیب کنیم (ماننـد میـانگین خروجـی هـا ) آنگـاه
خطــــر ناشــــی از اشــــتباه و ضــــ عف یــــک
دستهبندیکننده کاهش می یابد.
3 .بازنمایی:
1
گاهی آموزش و استفاده از یک
دستهبندیکننده که برای حل یـک مسـئله بسـیار
مناسب و دقیق میباشد، پیچیده و گران است. از
اینرو بهکارگیری گروهی از دستهبندیکنندههای
سـاده کـه مـیتـوان بـا ترکیـب آن هـا بـه دقـت
دلخواهی دست یافت، گزینۀ مناسبتری برای حـل
آن مسئله باشد.
همانطور که در شکل (2 (مشـاهده مـی کنیـد،
در این کار از چندین HMM بهعنـوان یـک گـروه

1- Representational
i دستهبندی کننده استفاده مـی شـود و ورودی
x
به هر یک از HMMهای درون این گـروه ارسـال
HMM ،n شــامل H={HMM j
خواهــد شــد. {
j HMM میباشد که هـر
خروجـی Sij را تولیـد
میکند. سپس با ترکیب خروجیهـای هـر یـک از
HMMها توسط یک ترکیبکننده، خروجـی نهـایی
j S تولید می
شود.
2 دو نوع استراتژیهای ترکیب متداول ادغام
و
انتخاب میباشند که در ادامه راهکار ادغام که در
اینکار مورد استفاده واقع شـده اسـت، توضـیح
داده خواهد شد.

xi به هر HMM تزریق شده و
شکل (2 :(الگوی MCS .ورودی
خروجی آن ها توسط یک ترکیب کننده به خروجی مـورد نظـر
تبدیل میشود
ادغام: در این روش فرض شده است کـه هـر
عضو گروه دارای دانشـی در مـورد کـل فضـای
ویژگـی مـی باشـد . خروجـی هـای حاصـل از هـر
دستهبندیکننده که در یک گروه دستهبندیکننـده
قــرار دارد، بــرای تولیــد یــک خروجــی ادغــام
میشـوند . تعـداد زیـادی از توابـع ادغـام وجـود
دارند که هر کدام طرفداران و منتقـدانی دارد . در

2- Fusion
های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله
75
اینجا قـوانین بزرگتـرین، کـوچکترین ، میـانگین و
میانگین هندسی نشان داده شده است:
* قانون بزرگترین: { }max
Si  Sij
* قانون کوچکترین: { }min
Si  Sij
قانون میانگین: 


N
j
i ij S
N
S
1
* 1

N قانون میانگین هندسی:
N
j
Si Sij
1
1
*
[ ]


قوانین ایستای بالا، حتی با وجود سادگیشان
در تشـخیص الگـو بسـیار مـ ؤثر واقـع شـده انـد.
هرچند قوانین ترکیب توام با روشهای آموزشی
نتایج بهتری را ارائه میدهند؛ اما به دو دلیل زیر
از قوانین ایستا استفاده میشود: سرعت قـوانین
ایستا در محاسبات و پیچیدگی ساخت یک ترکیب
کننده آموزشی. در اینکـار از قـانو ن بزرگتـرین
استفاده شده است.
3.2 .مرز نرم
1

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

1- Soft boundary
مقدار آسـتانه مـی باشـد . در مقابـل مـرز نـرم را
میتـوان توسـط قـوانین و مجموعـه هـای فـازی
نمایش داد. یکی از تکنیکهای محاسبات نـرم در
تشخیص بینظمی منطق فـازی مـی باشـد کـه در
[10 [به آن پرداخته شده است. تشخیص بینظمی
مبتنی بر مرز نرم، یا بویژه مبتنی بر مجموعههـا
و قوانین فازی، بنا بـه دلایـل زیـر نتـایج بهتـری
ارائه میدهد:
الف. از آنجایی که نرمال یا غیرنرمـال بـودن،
مفهوم قطعی نمیباشد، تعریف یـک مـرز سـخت
2 باعث مـی شـود کـه تمـایز تیـزی
بـین نرمـال و
غیرنرمال بودن ایجاد شود. بنابراین طبیعی است
که باید از مجموعههای فازی برای تعریـف مـرز
نرم استفاده کرد [16،15 .[
در منطق فازی، میزان نرمالبودن توسط درجه
ی normalcy و همچنــین میــزان غیــر نرمــالبــودن
توسط درجۀ abnormalcy مشخص میشود.
ب. سیســتم تشــیخص بــی نظمــی مبتنــی بــر
استنتاج فازی، میتواند ورودیهـای دریـافتی از
چندین منبع را ترکیب کند که این امر سبب بهبود
کارایی تشخیص میشود [15 .[

4 .سیستم تشخیص نفوذ پیشنهادی
شمای کلـی از ایـن سیسـتم را مـی توانیـد در
شکل 3 مشاهده نمایید. بهطور کلی، سیستمهـای
تشــخیص بــینظمــی مبتنــی بــر الگــوریتم هــای
یـادگیری ماشـین در دو فــاز یـادگیری و تســت
(عملیاتی) توسعه داده میشوند و این کار نیز خارج

2- Sharp distinction
ی ـ مهندس در طراحـی ات ـ اوری اطلاع ـ ه فن ـ مجل
76
از این قاعده نمیباشد. در فاز یـادگیری، مـدل هـا و
ماژولهای سیستم با توجه به دادههای آموزشی که
در اینکار درخواستهای HTTP نرمال مـی باشـند،
پیکربندی میشوند. در فاز تسـت، سیسـتم سـاخته
شـده بـا توجـه بـه دادههـای عملیـاتی کـه شــامل
درخواستهای HTTP نرمال و غیرنرمال میباشـد،
ارزیـابی مـیشـود. ایـن سیسـتم بـرای مدلسـازی
دنبالهای از صفات و مقادیر نسبت داده شده به هـر
صفت، که توسط برنامۀ کاربردی تحت وب دریافت
میشود، از مدلهای مخفی مارکوف استفاده میکند.
برای هر برنامۀ کاربردی تحت وب در این سیسـتم
یک ماژول ساخته میشود که شامل چندین گـروه
HMM میباشد.
هـر گـروه HMM بـرای مدلسـازی هـر ویژگـی
استخراج شده از درخواسـت هـای HTTP ،آمـوزش
داده میشود. مقدار احتمالی حاصـل از HMMهـای
درون یک گروه HMM ترکیب شده و خروجی نهایی
مورد نظر شکل میگیـرد . سـپس بـا فـازی سـازی
خروجــی هــر گــروه HMM ،فراینــد اســتنتاج و
تصمیمگیری آماده اجرا میشود. در فرایند استنتاج،
موتور استنتاج با بهکارگیری قوانین و مجموعههای
فازی که با توجه به برنامه کاربردی تحت وب شکل
میگیرند، نرمال و غیرنرمال بودن درخواست HTTP
را مشخص مـی کنـد . در ادامـه سیسـتم پیشـنهادی
بهطور کامل شرح داده میشود.

4-1 استخراج ویژگیها و ارزش هر ویژگی
این کار، روی دو ویژگی مهم درخواستهـای
HTTP تمرکز دارد که عبارتند از:
1 .دنباله صفات کـه دارای ترتیـب مشخصـی
میباشد.
2 .مقدار نسبت داده شده به هر صفت.


شکل (3 :(شمای کلی از سیستم پیشنهادی. ابتدا تجزیه کننـده ویژگـی هـای مـورد نظـر را از URI ارسـال شـده
استخراج کرده و مقادیر هر صفت، ساده و به گروههای HMM مربوطه ارسال میشود. HMMهای هر گروه، مقـدار
احتمالی نرمال بودن را ارزیابی می کنند. سپس با ادغام این مقادیر، خروجی هر گـروه HMM شـکل مـی گیـرد . در
نهایت خروجیها توسط ماژول تصمیمگیری بهکار گرفته میشوند تا رأی نهایی مبنی بر نرمال یا غیرنرمـال بـودن
URI مورد نظر صادر شود.
های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله
77
در اینکار از HMM بهعنوان ابـزار مدلسـازی
اســتفاده شــده اســت کــه وظیفــ ۀ آن مدلســازی
ویژگـیهـای اسـتخراج شـده از هـر درخواسـت
HTTP میباشد. فرض کنیـد پـرس وجـویی ماننـد
،دارد وجـــود name=Mohammad&userID=21718
آنگــاه ایــن پــرس وجــو دارای دنبالــ ۀ صــفات
<userID,name <مـی باشـد کـه بایـد توسـط مـدل
مخفی مارکوف تحلیل شود.
از طرفی مقدار هر یک از این صفات نیز بایـد
برای ارزیابی به مـدل مخ فـی مـارکوف مربوطـه
ارسال شود. برای درک بهتر مسئله بـیش از هـر
چیز ابتدا در مورد مدل دادهای استفاده شـده در
این کار مختصری شرح داده میشود.


شکل (4 :(ساختار درخواست HTTP .هر درخواست HTTP شامل یک مسیر و یک پرسوجو میباشد و هر پرسوجو شامل پارامترهای
میباشد که به صورت لیستی از از زوجهای صفت و مقدار در آن ظاهر میشود.

مــدل دادهای: ورودی سیســتم پیشــنهادی،
مجموعهای از URIهای دریافتشده توسط سرور
وبی مـی باشـد کـه برنامـ ۀ کـاربردی تحـت وب
مورد نظر را میزبانی میکند که میتـوان آنهـا را
URI یـک. نشانداد U={U1,U2,…,Um} بهصورت
مانند Ui شامل مسیر مربوط به منبع مـورد نظـر
(pathi ،(مسیر انتخـابی بـه یـک مؤلفـ ۀ اطلاعـاتی
1 ( و یک رشته پـرس وجـو i )info
(qi (مـی باشـد . از
میان قسـمت هـای ذکـر شـده رشـته پـرس وجـو
بیشتر تحت تأثیر حملات قرار میگیـرد . شـکل 4 ،
درخواست HTTP را نشان میدهد که در گزارش
ثبت وقایع یک سرور وب قـرار دارد . همـان طـور
که در شکل (4 (مشاهده میکنید، رشته پرسوجو
بعد از کاراکتر "?" قرار میگیرد که شامل لیسـت

1- query
2 مرتبی از زوجهای صفت
3 و مقدار
میباشـد کـه
توسط کاراکتر "&" از یکدیگر تفکیک شدهاند. این
لیســت در واقــع پــارامتر هــای ارســالشــده بــه
برنامهکاربردی مـورد نظـر مـی باشـد . درنتیجـه
پــــرسوجــــو را مــــیتــــوان بــــه صــــورت
در کــه، داد نشــان q={(a1,v1),(a2,v2),…(an,vn)}
آن A ϵ aj مـی باشـد و A مجموعـه همـ ۀ صـفات
مربوط به برنامۀ کاربردی تحت وب مورد نظـر
و vi یک مقدار رشتهای میباشد. نکتۀ مهـم دیگـر
این است که هر پرسوجو شـامل مجموعـه ای از
پارامترها با ترتیـب مشخصـی مـی باشـد، یعنـی
{ak ,…,از طرفی هر برنامه کـاربردی نیـز aj={Sai
پرسوجوهای مشخصی را می پذیرد. درخواست

2- attribute
3- value
ی ـ مهندس در طراحـی ات ـ اوری اطلاع ـ ه فن ـ مجل
78
HTTP نشان داده شـده در شـکل (4 (دارای زیـر
مجموعــهای از صــفات مــی باشــد کــه بــا نظــم
مشخصی در پرسوجو قرار گرفتهاند: {a2,a1 {
اگر از نگاهی بالاتر به برنامۀ کاربردی تحت
وب بنگرید، میبینید که هر برنامۀ کاربردی تحت
وب دارای تعــداد مشخصــی از درخواســتهــای
HTTP میباشد. از طرفی هـر درخواسـ ت HTTP
نیز شامل صفاتی با تعداد و نظم مشخصی است
که هـر یـک ارزش امنیتـی خـاص خـود را دارد .
برای مثـال در پـرس وجـوی بـالا صـفت UserID
نسـبت بـه صـفت Name ارزش امنیتـی بـالاتری
دارد. البته این امر به برنامه کـاربردی تحـت وب
مورد نظر بستگی دارد. هر یک از این ویژگیها با
توجـه بـه ارزشـی کـه دارنـد، نقـش خـود را در
فرآیند تصمیمگیری ایفا میکنند. مقدار این ارزش
با توجه به برنامه کاربردی مورد نظـر مشـخص
میشود. در نهایت ویژگیهای استخراج شـده از
درخواست های HTTP باید بهطور سادهتـری در
اختیار ماژول مدلسازی قرار گیرند. برای این امر
باید بین کـاراکتر هـای الفبـا -عـددی و غیر الفبـا -
عددی تفاوت قائل شـد . بـه همـین منظـور تمـامی
کاراکترهای الفبایی به کـاراکتر A و کاراکترهـای
عــددی بــه کــاراکتر N تبــدیل مــیشــوند و
کاراکترهای دیگر دست نخورده بـاقی مـی ماننـد .
بــــرای مثــــال پــــرس وجــــوی بــــالا بــــه
تبـــدیل name=AAAAAAAA&userID=NNNNN
میشود که این کار در ماژول پـیش پـردازش گـر
انجام میگیرد.

4-2 -ماژول مدلسازی
برای هر برنامۀ کاربردی که روی سرور وب
قرار دارد یک ماژول ساخته میشود. این ماژول
شـامل مـاژولهـای مدلسـازی و تصـمیمگیـری
میباشد. در ماژول مدلسازی بـرای هـر ویژگـی
قابــل مدلســازی از یــک گــروه HMM اســتفاده
میشود که هـر HMM داخـل ایـن گـروه در فـاز
یادگیری برای مدلسازی ویژگی مربوطه آموزش
داده مـی شـود. سـپس خروجـی هـر یـک از ایـن
HMMها با استفاده از یـک تکنیـک ترکیـب ماننـد
ادغام، به خروجی که نتیجه نهـایی گـروه HMM
میباشد، تبدیل میشود. در ضـمن بایـد بـه ایـن
نکته توجه کرد که تکنیکهـای دسـته بنـدی کننـده
چندگانه پیچیده و گران هستند و باید با توجه به
ارزشــی کــه هــر ویژگــی دارد، پیچیــدگی گــروه
HMM مربوط به آن را کنترل کـرد . بـرای مثـال
تعداد HMMهایی که در گروه مربـوط بـه مقـدار
صـفت UserID قـرار مـیگیـرد بیشـتر از تعــداد
HMMهای گروه مربوط بـه مقـدار صـفت name
میباشد.
ساخت گروه HMM :در اینجا دو مسـئله از
سه مسئله HMM بررسی میشـود : یکـی مسـئله
یادگیری (در طول فاز یادگیری) و دیگری مسئله
ارزیابی میباشد. در اینکـار از الگـوریتم -Baum
Welch که در [8 [آمده است برای آموزش HMM
استفاده میشود. کارایی HMM بـه پارامترهـایی
چون تعداد حالات، حالت ابتدایی، ماتریس توزیـع
سیمبل و ماتریس گذرحالت وابسته میباشـد . از
آنجایی که ارزیابی پارامترهای HMM به بهترین
های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله
79
نحو در واقع یک هنر است تا یـک دانـش، از یـک
گروه HMM استفاده مـی شـود تـا کمبـود دانـش
جبران شود. در این کار یک گروه از تعداد حالت
مســاوی بــرای هــر HMM درون یــک مجموعــه
استفاده میشود. این تعداد برابر با میانگین طول
دنبالههای آموزشی مـی باشـد (اسـتفاده از گـرد
کردن به سمت عدد صـحیح بزرگتـر ). طـول یـک
دنباله توسط تعداد سیمبل مختلـف درون دنبالـه
مشخص میشود. برای مثال در دنباله {c,b,c,b,a{
ســه ســیمبل مختلــف دیــده مــی شــود کــه c,b,a
میباشـد . در نتیجـه حـالا ت، متنـ اظر بـا عناصـر
درون دنبالۀ تحلیل شده مـی باشـد . هـم مـاتریس
گذر حالت و هم ماتریس توزیع سیمبلها در ابتدا
بهصورت تصادفی مقـداردهی اولیـه مـی شـوند .
سیستم ساخته شده شامل تعـداد زیـادی HMM
میباشد و برای مدلسازی ساختار ماتریسها از
1 دانش قبلی
استفاده میشود که البته ممکن اسـت
به زمان و تلاش زیادی نیاز باشد.
ترکیـب خروجـی هـای HMM :راهحـل هـای
مشخصی برای ترکیب خروجیهای HMM درون
یـک مجموعـه وجـود دارد. بـه ازای یـک دنبالـه
ورودی مفــروض S ،خروجــی iامــین HMM ،
نامیده میشود که بهصورت زیر بیان میشود:
P(s|mi) = P(mi
|s) P(s) / p(mi)
2 بـرای همـه مـدلهـا از یـک احتمـال پیشـین
یکسان استفاده میشود:
[1,k] i ϵ , = c P( mi
)


1- apriori knowledge
2-apriori probability
که k تعداد کـل HMM هـای درون یـک گـروه
HMM میباشد. بهراحتی میتوان دید که وقتی از
قانون ترکیب بزرگترین استفاده میشود یعنی :
Output = max { P(s|mi) } , i ϵ [1,k]
max { p( [1,k] با متناسب خروجی که mi
|s) } ,
ϵ iمـیباشـد (جملـه (s(p یـک ثابـت مـیباشـد).
بنابراین با استفاده از قانون بزرگترین، میتـوان
مدلی را انتخاب نمود که بهترین توصـیف ممکـن
را از دنبالههای تحلیل شـده بـه منظـور محاسـبه
احتمال دنباله دارد. این امر در واقع دلیـل اصـلی
استفاده از گروه HMM میباشد؛ به عبارت دیگر
برای مدلسـازی بهتـر کـل مجموعـه دنبالـه هـای
3 آموزشــی از تنــوع
چنــدین HMM بهــره بــرد ه
میشود.

4-3 -ماژول تصمیمگیری
ورودیهــــای مــــاژول تصــــمیم گیــــری،
خروجیهای گروههـای HMM اسـتفاده شـده در
ماژول مدلسازی میباشـد . هـر خروجـی، مقـدار
احتمالی مـی باشـد کـه میـزان نرمـال بـودن یـک
درخواست HTTP را با توجه بـه ویژگـی هـای آن
مشخص میکند. این ماژول با استفاده از قـوانین
فازی، خروجی را استنتاج میکنـد کـه نرمـال یـا
غیرنرمال بـودن آن درخواسـت HTTP را نشـان
میدهد. شکل (3 (این ماژول را نشان میدهد کـه
دارای ســه مرحلــ ۀ فــازی ســازی، اســتنتاج و
غیرفازی سازی میباشـد . در ادامـه ایـن مـاژول
شرح داده میشود.

3- Diversity
ی ـ مهندس در طراحـی ات ـ اوری اطلاع ـ ه فن ـ مجل
80

4-3-1 -ساخت مجموعههای فازی
مجموعههای فازی در این سیسـتم بـا توجـه
بــهبرنامــه کــاربردی تحــت وب و بــه صــورت
غیرعلمی و از روی مشاهدات سـاخته مـی شـود .
هـر ویژگـی اسـتخراج شـده از درخواسـتهـای
HTTP بــا توجــه بــه ارزش امنیتــی کــه دارد،
مجموعه فازی های مربوط به خود را دارد. برای
مثال فرض کنید درخواست HTTP بهصورت ذیل
وجود داشته باشد:
.display.aspx?name=mohamamd&userID=2345
سه ویژگی قابل مدلسازی در این درخواسـت
مشاهده میشود که هر کدام ارزش خـاص خـود
را دارد کـــه عبارتنـــد از دنبالـــۀ صـــفات
{userID,name ،{مقدار صفات، userID و name که
ارزش امنیتی هر یـک بـه تربیبـی کـه گف تـه شـد ،
کاهش مییابد. برای مثـال ارزش ویژگـی دنبالـه
صفات از مقدار صفت userID بیشتر است. برای
ویژگی دنبالۀ صفات چهار مجموعه فازی وجـود
دارد که عبارتسـت از low very ،low ،high و very
high کـه نشـاندهنـدة احتمـال حاصـل از گـروه
HMM دنبالۀ صفات میباشد. برای ویژگی مقدار
صفت userID سه مجموعـه low ،medium و high
وجود دارد کـه احتمـال حاصـل از گـروه HMM
مربوط به مقدار صفت userID را نشان مـی دهـد .
شــکل 5 نمــایش گرافیکــی از توابــع عضــویت
مجموعههای فازی دو ویژگی ذکر شده را نشـان
میدهد. بههمین ترتیب مجموعههای فـازی دیگـر
برای هر ویژگی با توجه بـه ارزش امنیتـی شـان
ساخته میشوند.

4-3-2 ساخت قوانین فازی
هر برنامۀ کاربردی تحـت وب، قـوانین فـازی
مربوط به خود را دارد که این قوانین با توجه به
ویژگیهای استخراج شده و ارزش امنیتی هر یک
ساخته میشـوند . بـرای نمونـه در مثـالی کـه در
قسمت قبلی ذکر شد، برای یک درخواست HTTP ،
اگــر احتمــال مناســبی بــرای userID و name بــه
دست آید، اما مقدار احتمال به دست آمـده بـرای
دنباله صفات نامناسب باشـد ، آنگـاه درخواسـت
HTTP ،غیرنرمال میباشد. یا اگر مقـدار احتمـال
به دست آمده برای دنباله صفات و userID کـافی
باشد و مقدار احتمالی به دست آمده بـرای name


شکل (5 :(نمایش گرافیکی توابع عضویت مجموعههـای فـازی
شکل A توابع عضویت سه مجموعۀ فازی ویژگی مقدار صـفت
userID و شکل B توابع عضویت چهار مجموعۀ فازی ویژگـی
ترتیب صفات را نشان میدهد، محور P مبین احتمال خروجـی
یک گروه HMM میباشد.
های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله
81
نامناسـب باشـد، درخواسـت HTTP بـه صـورت
نرمال برچسب زده میشود. سپس بـا توجـه بـه
این فرضیات قوانین مورد نیاز ساخته مـی شـود .
برای مثال:
low THEN URI IS IF attrSeq IS o
abnormal.
IS medium IF attrSeq IS high AND userID o
AND name IS low THEN URI IS normal.

استنتاج فرایند- 3-4-3
در مرحلــۀ فــازیســازی مقــادیر احتمــالی
کلاسـیک ورودی بـه مقـادیر فـازی کـه معمـولا
مجموعههای فازی میباشند تبدیل مـی شـود . دو
وظیفۀ مهمی که در این مرحلـه انجـام مـی شـود،
تبدیل مقادیر احتمالی کلاسیک به مقادیر فازی به
فـرم مجموعـه هـای فـازی و بـه کـارگیر ی توابـع
عضــویت بــر ای محاســبه درجــ ۀ درســتی هــر
مجموعه فازی انطباق یافته میباشـد . در مرحلـ ۀ
غیرفازیسازی، مقادیر فازی بـه مقـادیر حقیقـی
مورد نیاز تبدیل میشود که میتواند یکـی از دو
مقــدار نرمــال و غیرنرمــال باشــد. تکنیــکهــای
غیرفـــازیســـاز زیـــادی وجـــود دارد، ماننـــد
غیرفازیساز ماکزیمم، غیرفازیساز مرکز ثقل و
غیرفـازیسـاز میـانگین مراکـز. در ایـن کـار از
غیرفازیساز مـ اکزیمم اسـتفاده شـده اسـت . در
مرحلۀ استنتاج فازی، قوانین فازی ایجاد شده که
در پایگاه قوانین فازی قرار میگیرند، برای تولید
خروجی، بر روی ورودیهایی که از قبل ارزیابی
شدهاند، بهکار گرفته میشوند. بدین منظـور بعـد
از اینکه هر مقدمه ارزیابی گردید، توسـط AND
و OR ترکیب شده و بهترتیب کمترین و بیشترین
درجـه، بـه عنـوان ارزیـابی بخـش مقدمـه تلقـی
میشود.

5 -آزمایشها و ارزیابی سیستم پیشنهادی
برای ارزیـابی سیسـتم پیشـنهادی از دوازده
برنامۀ کاربردی اسـتفا ده شـده اسـت کـه تعـداد
چهار برنامه از آن ها مربوط به عملیات ثبتنام و
ورود به سیستم میباشد و مابقی، سرویسهـای
عمــومی ماننــد نمــایش، جســتجو و .... را ارائــه
میدهند. این برنامههای کاربردی در سروری بـا
پردازنده i7 Core Intel ،حافظهاصلی 6 گیگا بایتی،
حافظۀ نهان 6 مگابـایتی، سیسـتم عامـل وینـدوز
سرور 2008 و IIS نسخه 6 میزبـانی مـی گـردد .
مجموعه پرسوجوهای مورد نیاز، از جدول ثبت
وقایع سرور مورد نظر جمعآوری میگردد. ایـن
مجموعه شامل هشـتاد هـزار درخواسـت HTTP
نرمال میباشد که از دانشجویان سه دانشگاه در
دورة یک ماهه جمعآوریشده است. حدود چهـل
درصد از این درخواستها مربوط به چهار برنامه
کاربردی ابتدایی و ما بقی مربوط به برنامههـای
کاربردی دیگر میباشد. سیستم تشـخیص نفـوذ
پیشنهادی برای هر برنامـه کـاربردی دارای یـک
مـاژول مـیباشـد کـه هـر مـاژول بـا توجـه بـه
ویژگــیهــای اســتخراج شــده از درخواســت های
HTTP ارسال شده به برنامۀ کاربردی مورد نظر
دارای چندین گروه HMM میباشـد و هـر گـروه
HMM با توجه به ارزش امنیتی ویژگی استخراج
شـده دارای تعــداد مشخصـی HMM مــیباشــد.
بـــهعنـــوان مثـــال، بـــرای برنامـــه کـــاربردی
ی ـ مهندس در طراحـی ات ـ اوری اطلاع ـ ه فن ـ مجل
82
aspx.display ،یک ماژول بـه نـام display سـاخته
مـیشـود. ایـن مـاژول دارای سـه گـروه HMM
میباشد که مربوط به ویژگیهای دنباله صـفات،
مقــدار صــفت name و مقــدار صــفت UserID
میباشد. گروه HMM مربـوط بـه مقـدار صـفت
UserID دارای هشــت HMM مــیباشــد و گــروه
HMM مربوط به مقدار صفت Name دارای چهار
HMM میباشد. برای راحتـی کـار تعـداد حـالات
HMMهـای درون یـک گـروه، مسـاوی در نظــر
گرفته میشود. مجموعـه دادة آموزشـی بـه پـنج
قسـمت تقسـیم مـی شـود و هـر مجموعـه HMM
توسط یک قسمت از آن ها آموزش داده و توسط
قسمتهای دیگر ارزیابی میشود. برای ارزیـابی
سیســتم پیشــنهادی بــه درخواســت هــای HTTP
غیرنرمال و حملـه ای نیـز نیـاز مـی باشـد . بـرای
جمــعآوری مجموعــه درخواســتهــای HTTP
غیرنرمال از حملههـا و کـد هـای مخـرب انتشـار
Code حملـه 15 ،XSS حملـه 15 ،[19] در یافتـه
Injection و 15 حمله Injection SQL انتخاب شده
و بــه همــراه 500 درخواســت HTTP نرمــال،
مجموعۀ آزمایشی را تشیکل میدهند.
بدون توجه به اینکه در یک سیستم تشـخیص
نفوذ از چه الگوریتمی استفاده میشود، میتـوان
آنرا بهصورت یک جعبۀ سیاه مدل کرد کـه یـک
شیء را از یک منبـع خاصـی دریافـت مـی کنـد و
مشخص میکند که آیا حملهای رخ داده اسـت یـا
خیر. منبع آن شیء میتواند یک شبکه یا هر چیز
دیگری باشد. اولـین چیـزی کـه در ارزیـا بی یـک
سیستم تشخیص نفوذ مهم میباشد این است، که
چقدر از این اشیاء به صـورت درسـت برچسـب
خـوردهانــد و چقــدر از آنهــا نادرســت بــهطــور
رسمیتر، حملهها معمولاً بهصورت کلاس مثبـت
و اشیاء نرمال بهصـورت کـلاس منفـی شـن اخته
میشوند؛ در نتیجه میتـوان چهـار تعریـف مهـم
ذیل را بهعنوان ملاکی برای ارزیابی سیستمهای
تشخیص نفوذ دانست:
1 .مثبت صحیح: شامل حملهای میباشـد کـه
توسط سیستم تشخیص نفود بـه درسـتی کشـف
شده است. در واقع نمونهای از یک کـلاس مثبـت
میباشد که درست برچسب خورده است.
2 .مثبت کاذب: شامل شیء نرمالی مـی باشـد
که سیستم تشخیص نفود آنرا بهطور اشتباه بـه
عنوان یک حمله شناسایی کرده است.
3 .منفــی صــحیح: شــیء نرمـالی اســت کــه
بـه درسـتی برچسـب خـورده و در کـلاس منفـی
دستهبندی شده است.
4 .منفــی کــاذب: حملــهای اســت کــه توســط
سیستم تشخیص نفود کشف نشده اسـت و آنرا
جــز کــلاس منفــی قــرار داده اســت ؛ بنــابراین
بهنادرستی برچسب خورده است.
با توجه به تعاریف بـالا مـی تـوان از جمـلات
ارزیابی ذیل بهمنظـور سـنجش کـارایی سیسـتم
پیشنهادی استفاده نمود:

= نرخ مثبت کاذب


نرخ کشف= 1- نرخ منفی کاذب

تعداد اشیاء منفی که به نادرستی دستهبندی شدهاند
تعداد کل اشیاء کلاس منفی
های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله
83
= نرخ منفی کاذب

بنابراین ابتدا به ارزیابی نرخ کشـف و سـپس
به ارزیابی نرخ مثبت کاذب با داشتن حداکثر نرخ
کشف پرداخته مـی شـود . نتـایج ایـن ارزیـابی را
مــیتوانیــد در شــکل (6 (و جــدول (1 (مشــاهده
نمایید. در نهایت چندین ماژول تصمیمگیـری بـا
قــوانین و مجموعــههــای فــازی مختلــف مــورد
ارزیابی قرار میگیرد که نتایج آن در جـدول (1(
نشان داده شده است.
برای ارزیابی نرخ کشف دو سیسـتم یکـی بـا
یک HMM و دیگری با یک گروه HMM بـرای هـر
ویژگی در هر ماژول مدلسـازی مـورد آزمـایش
قرار میگیرند. همانطور که در شکل 6 میبینیـد،
با توجه به بیشترین مقـدار آسـتانه، سیسـتم بـا
مجموعه HMM ،با کشـف 44 حملـه از 45 حملـ ۀ
مجموعۀ آزمایشی نسبت به سیستم با یک HMM
که موفق بـه کشـف 39 حملـه شـد، ROC بهتـری
دارد؛ اما در بین 500 درخواست HTTP نرمال، 7
درخواســت در سیســتم اول و 10 درخواســت
درسیستم دوم به اشتباه بهعنوان حمله شناسایی
شدهاند. در نتیجه بهازای بیشترین مقدار آسـتانه
هر چند نرخ کشف بسیار مناسب مـی باشـد، امـا
نرخ مثبت کاذب در هر دو سیسم نامناسب بـوده
و باعث کاهش دقت سیستم شده است.
جدول (1 :(نتایج ارزیابی سیستم پیشنهادی با مجموعهها و قوانین فازی مختلف در هر مـاژول تصـمیم گیـری : سیسـتم اول بـا
کشف 38 حمله بهطور صحیح و 61 حمله بهطور نادرست، دارای بدترین نتیجه و سیستمی که در سطر چهـارم قـرار دارد بـا
کشف 44 حملۀ صحیح و 10 حملۀ نادرست دارای بهترین نتیجه میباشد. میتوان بهسادگی مشاهده نمود که با افزایش دقـت
مجموعهها و قوانین فازی، نرخ مثبت کاذب بهطور قابل توجهی کاهش یافتـه و درخواسـت هـای غیرنرمـال بیشـتری کشـف
میشود.

ماژول تصمیمگیری login
مجموعه فازی| قانون فازی
نرخ مثبت کاذب نرخ کشف
9 | 5 ٪84.5 ٪12
13 | 8 ٪93.4 ٪6.5
18 | 11 ٪95.6 ٪3.4
26 | 16 ٪97.8 ٪9.1


البته با افـزایش تعـداد HMMهـای درون یـک
گروه HMM ،میتـوان بـه منحنـی بهتـری د سـت
یافت که این موضوع را میتوان در [5 [مشـاهده
نمود. دادههای نمـایش داده شـده در جـدول (2(
نتــایج ارزیــابی دو سیســتم ؛ یکــی بــا مــاژول
تصــمیمگیــری فــازی و دیگــری بــا مــاژول
تصمیمگیری کلاسیک (مقـدار آسـتانه ) را نشـان
میدهد که در هر دو از گروههای HMM استفاده
شـده اسـت. هـر دو سیسـتم طـوری پیکربنــدی
شدهاند که دارای بالاترین نرخ کشف باشند. یعنی
تعداد اشیاء مثبتی که به نادرستی دستهبندی شدهاند
تعداد کل اشیاء کلاس مثبت
ی ـ مهندس در طراحـی ات ـ اوری اطلاع ـ ه فن ـ مجل
84
در سیسـتم بـا مـاژول تصـمیمگیـری کلاسـیک،
سختگیرانه تـرین مقـدار آسـتانه انتخـاب شـده
است. مجموعۀ آموزشی شـامل 505 درخواسـت
نرمــال و 45 درخواســت غیرنرمــال مــی باشــد.
سیستم با ماژول تصمیمگیری فازی 45 حمله را
بهدرستی شناسـایی نمـود و فقـط 4 درخواسـت
نرمال را به اشتباه بهعنوان حمله برچسب زد؛ اما
سیســتم دیگــر بــا شناســایی تمــامی حملــه هــا،
16درخواست نرمال را بهطور نادرست تشخیص
داد در نتیجه نرخ مثبت کاذب مربوط به سیستمی
که، از ماژول تصمیمگیری فازی استفاده میکند،
نسـبت بــه سیســتمی بــا مــاژول تصــمیم گیــری
کلاسیک، کمتر میباشد.


جدول (2 :(مقایسۀ دو سیستم با ماژولهای تصمیمگیری مختلف: در ستون اول سیستم با ماژول تصمیمگیری کلاسـیک (مقـدار
آستانه ای) مورد ارزیابی قرار گرفته است و در ستون دوم سیستمی با ماژول تصمیمگیری فازی. همانطور که مشاهده مـی کنیـد
سیستم با ماژول تصمیمگیری فازی با کمترین نرخ مثبت کاذب و حداکثر نرخ کشف دارای نتایج بهتری میباشد.
با ماژول تصمیمگیری فازی
با ماژول تصمیمگیری
کلاسیک
سیستم تشخیص نفوذ
45 45 تعداد حملههای کشف شده
4 16 تعداد درخواستهای نرمال حمله شناخته شده
100 ٪100 ٪نرخ کشف
کاذب مثبت نرخ٪ 3.16 ٪0.79


البتـه بایـد درنظـر داشـت کـه اگـر قـوانین و
مجوعههـای فـازی بـه خـوبی تعریـف و انتخـاب
نشوند، ممکن است نتایج بسـیار ضـعیف تـری از
خود بهجای گذارند. در نهایت، سیستم پیشنهادی
با 4 ماژول تصـمیم گیـری فـازی مخ تلـف مـورد
ارزیــابی قــرار مــی گیــرد کــه در هــر مــاژول
مجموعهها و قوانین فازی مختلفی اسـتفاده شـده
است. به این منظور سیسـتم تشـخیص نفـوذ بـه
برنامهکاربردی login محدود شده است. میتوان
در جدول 2 مشاهده کرد که مجموعهها و قوانین
فازی مـا ژول تصـمیم گیـری مربـوط بـه برنامـ ۀ
کـاربردی login بـه ترتیـب کامـلتـر و دقیـقتـر
میشوند. البته این تکامل، بدون افزایش پیچیدگی
در ماژول تصـمیم گیـری، مجموعـه هـا و قـوانین
فازی امکانپذیر نمیباشد.
نتیجۀ این پیچیدگی کاهش سـرعت سیسـتم و
استفادة بیشتر از منابع میباشد. همان طـور کـه
در جدول (1 (مشاهده میکنید، سیستم با مـاژول
تصمیمگیری که شامل 26 قانون و 16 مجموعـ ۀ
فازی میباشد، بهتر عمل میکند.


های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله
85


شکل (6 :(منحنی RUC برای دو سیستم، یکی با یک HMM و دیگری با چند HMM در هر گروه: در هر دو سیستم ماژول تصـمیم گیـری
مقدار آستانه بهکار گرفته شده است. بهازای بیشترین مقدار آستانه، سیستم با مجموعـه HMM بـا کشـف 44 حملـه از 45 حملـ ۀ مجموعـ ۀ
آزمایشی نسبت به دیگر سیستم که 39 حمله را شناسایی کرده است، دارای ROC بهتری میباشد؛ اما به دلیل بالا بودن نرخ مثبـت کـاذب در
هر دو سیستم، دقت تشخیص نامناسبی برای آن ها رقم خورده است.

6 -نتیجهگیری
در این مقاله یک سیستم تشخیص نفوذ بـرای
کشف حملههای مخرب علیه برنامههای کاربردی
تحت وب معرفی شده است که بهجای استفاده از
یک HMM ،از چندین HMM به عنـوان یـک گـروه
HMM جهــت بــه کــارگیری تکنیــک MCS بــرای
مدلســـازی ویژگـــیهـــای اســـتخراج شـــده از
پرسوجوهای ارسال شده به سرور وب استفاده
میکند؛ بهطوری که با ادغام خروجیهای حاصل
از HMMهــای یــک گــروه، بــهدقــت بیشــتری در
مدلســـازی و تخمـــین میـــزان نرمـــال بـــودن
ویژگیهای مزبور دست یابد. از سوی دیگر ایـن
سیستم بهجای استفاده از یک مقدار آستانه جهت
تصمیمگیری نرمال یا حمله بودن یک درخواست
HTTP ،بـا تولیـد مجموعـه هـا و قـوانین فـازی و
بهکارگیری استنتاج فـازی ، بـه پـایین تـرین نـرخ
مثبت کاذب دست یافتهاسـت . بـرای ا یـن منظـور
خروجـی حاصـل از هـر گـروه HMM کـه دارای
ارزش امنیتی خاص خود مـی باشـند ، بـه مقـادیر
فازی تبدیل میشوند. سپس موتـور اسـتنتاج بـا
دریافــت آن مقــادیر فــازی و بــا اســتفاده از
مجموعهها و قوانین فازی که بهطور دستی ایجاد
شدهاند، نرمال و یا حمله بـودن یـک درخواسـت
HTTP را مشخص میکند. بـا بـه کـار بـردن ایـن
راهکارها، سیستم پیشنهادی در کشف حملههـای
جدید به عملکرد مناسبی دست مییابد و از طرفی
با درخواسـت هـای نرمـ الی کـه نزدیـک بـه مـرز
تصمیمگیری میباشند، بـه طـور انعطـاف پـذیری
ی ـ مهندس در طراحـی ات ـ اوری اطلاع ـ ه فن ـ مجل
86
برخورد میکند و نرخ مثبت کاذب را تا حد قابـل
قبولی کاهش میدهـد . طـی آزمـایش هـای انجـام
شده در این کار، سیستم پیشنهادی با نرخ مثبـت
کــاذب قابــل قبــول 79/00/0 و کشــف تمــامی
حملههای موجود در مجموعۀ آموزشی نسبت به
سیسـتم تشـخیص نفـوذی کـه از مقـدار آسـتانه
جهت تصمیمگیری استفاده کرده (بـا نـرخ مثبـت
کاذب16/3 ،(٪بهبود یافته است.
بـه عنـوان کـار آینـده، مـاژول تصـمیم گیـری را
میتوان طوری پیکربنـدی نمـود کـه مجموعـه هـا و
قوانین فازی نسبت به عملکرد سیسـتم تحـت تـ أثیر
قـرار گیرنـد و بـا سـ ازماندهی خودکـار و یـا نیمـه
خودکار مجدد آنها، بتـوان بـه نتـایج بهتـری دسـت
یافت. در واقع ماژول تصمیمگیری ای شـکل گیـرد
که دارای قابلیت یادگیری باشد.

1. Rfc2616, “hypertext transfer protocol,” http/١.١, pp. 29-30. 2. R. Auger et al, “Web security threat classification,” Web Application Security Consortium, 2004. 3. I. Corona, G. Giacinto, C.Mazzariello, F. Roli, and C. Sansone, “Information fusion for computer security: State of the art and open issues,” Information Fusion, Vol. 10, Issue 4, pp. 274–284, 2009. 4. R. Perdisci, D. Ariu, P. Fogla, G. Giacinto, and W. Lee, “Mcpad: A multiple classifier system for accurate payload-based anomaly detection,” Computer Networks, The International Journal of Computer and Telecommunications Networking, Vol. 53, Issue 3, pp. 864–881, 2009. 5. I. Corona, D. Ariu,and G. Giacinto, “HMM-Web: a framework for the detection of attacks against Web applications,” IEEE international conference on Communications, Dresden, Germany, 2009. 6. Yong zhong Li, Yang Ge, Xu Jing, and Zhao Bo, “A New Intrusion Detection Method Based on Fuzzy HMM,” ICIEA, IEEE Conference on, 3rd, pp. 36-39, 2008. 7. L.E. Baum, and J.A. Egon, “An inequality with applications to statistical estimation for probabilistic function of a markov process and to a model for ecology,” Bullettin American Metereology Society, Vol. 73, No. 3, pp. 360-363, 1967. 8. L.R. Rabiner, “A tutorial on hidden markov models and selected applications in speech recognition,” Proceedings of the IEEE, Vol. 77, Issue 2, pp. 257-286, 1989. 9. C. Kruegel, G. Vigna, and W. Robertson, “A multi-model approach to the detection of web-based attacks,” Computer Networks, Vol. 48, Issue 5, pp. 717–738, 2005. 10. Dau Xuan Hoang, and Minh Ngoc Nguyen, “A program-based anomaly intrusion detection scheme using multiple detection engines and fuzzy inference,” Journal of Network and Computer Applications, Vol. 32, Issue 6, November 2009. 11. Estevez Tapiador, Garcia Teodoro, and Diaz Verdejo, “Detection of Web-based Attacks through Markovian Protocol Parsing”, 10th IEEE Symposium on Computers and Communications, pp. 457-462, 2005. 12. R.O. Duda, P.E. Hart, and D.G. Stork, “Pattern Classification,” Wiley, pp. 10-40, 2000. 13. Ajith Abraham, Ravi Jain, “Soft Computing Models for Network Intrusion Detection Systems”, Classification and Clustering for Knowledge Discovery Studies in Computational Intelligence, Vol. 4, pp. 191-207, 2005. 14. Ghmm: General hidden markov model library, http://ghmm.org/, pp. 82. های مخفی مارکوف گروهی های تحت وب مبتنی بر مدل های مخرب به برنامه تشخیص فازی حمله 87 15. J.E. Dickerson, J. Juslin, O. Koukousoula, and J.A. Dickerson, “Fuzzy Intrusion Detection,” IFSA World Congress and 20th NAFIPS International Conference on, Vol. 3, pp. 1506-1510, Vancouver, Canada, 2001. 16. J. Gomez, F. Gonzalez, and D. Dasgupta, “An Immuno-Fuzzy Approach to Anomaly Detection,” Fuzzy Systems, 12th IEEE International Conference on, Vol. 2, pp. 1219-1224, 2003. 17. L.A. Zadeh, “Fuzzy sets,” in the Information and Control Journal, Vol. 8, page 338, 1965. 18. E. Cox, “Fuzzy fundamentals”, Spectrum, IEEE, Vol. 29, No. 10, page 58, 1992. 19. milw0rm, Web application and HTTP attacks published database, www.milw0rm.com