نسل جوان ایران

فنی مهندسی کامپیوترنرم افزار نرم افزار

سیستم شناسایی مهاجمان برنامه‌های کاربردی تحت وب به وسیله‌ی ردگیری درخواست‌های HTTP مبتنی بر مدل مخفی مارکوف

ارسال کننده : جناب آقای رضا رحیمی
سطح فعالیت : مدیر کل
ایمیل : reza.rahimi663[@]gmail.com
تاریخ ارسال : ۳ شهریور ۱۳۹۹
دفعات بازدید : 117
زبان نوشتاری : فارسی
تعداد صفحه : 210
فرمت فایل : word
حجم فایل : 13.1mb

قیمت فایل : 18,000 تومان
خرید فایل

امتیاز مثبت : 6
امتیاز منفی : 0

دانلود پایان نامه و مقاله
محل سفارش تبلیغات شما

اتصال روزمره تعداد زیادی از مردم به اینترنت باعث شده‌ است تا برنامه‌های کاربردی تحت وب به یک هدف جذاب برای خراب‌کاران و نفوذ گران رایانه‌ای تبدیل گردد. بر اساس تحقیقاتی که تیم X-Force شرکت IBMدر سال ۲۰۱۰ انجام داده است، مشخص شده که برنامه‌های کاربردی تحت وب بیش از ۵۵٪ از آسیب‌پذیر‌ی‌های کشف شده تا امروز را به خود اختصاص داده‌اند. به عنوان مثال ممکن است یک سرویس وب مورد حمله واقع شود تا یک بد افزار مخرب به سرعت گسترش یابد و یا اعتبارنامه دسترسی کاربران را از سرویس‌های وب سرقت کنند. برای حفاظت از برنامه‌های کاربردی از این‌گونه فعالیت‌ها استفاده از یک سیستم تشخیص نفوذ ضروری می‌باشد. متأسفانه، حفاظت از برنامه های کاربردی تحت وب یک کار مشکل است چرا که آن‌ها به طور کلی بزرگ، پیچیده و به شدت سفارشی‌اند.سیستم‌های تشخیص نفوذ سنتی مبتنی بر امضا به دلیل ضعفشان در مقابل حملات جدید، به اندازه‌ی کافی حفاظت مناسبی را تضمین نمی‌کنند. از طرفی سیستم‌های مبتنی بر ناهنجاری هر چند این ضعف را پوشش دادند و جایگزین مناسبی برای سیستم‌های مبتنی بر امضاء‌ می‌باشند، اما هشدارهای اشتباه فراوانی تولید می‌کنند.

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

آزمایشات انجام شده روی درخواست‌های HTTPجمع‌آوری شده از سرور یک دانشگاه، نشان داده است که این سیستم با نرخ کشفی معادل 98.96% و نرخ مثبت کاذب 0.87% دارای کارایی بسیار مناسبی می‌باشد؛ همچنین توانسته 14.2%حملات را قبل از کامل شدن تراکنششان، پیش‌بینی کند.

 

کلمات کلیدی: درخواست‌های HTTP، تشخیص ناهنجاری، مدل مخفی مارکوف، شبکه‌های عصبی، تشخیص الگو، میزان‌سازی.

فهرست مطالب

عنوان صفحه

چکیده. 1

۱ طرح مسئله و اهداف 3

1-1 مقدمه. 4

1-2 طرح مسئله. 5

۱-۳ اهداف و محدوده 6

1-4 دستاوردها7

1-5 ساختار پایان‌نامه. 8

۲ مفاهیم پایه‌: امنیت در برنامه‌های کاربردی تحت وب، آسیب‌پذیری‌های متداول آن‌ها و نقش درخواست‌های HTTP 10

2-1 مقدمه. 11

2-2 برنامه های کاربردی تحت وب... 14

2-2-1 معماری وب... 14

2-2-2 تکنولوژی‌های برنامه‌های کاربردی تحت وب... 16

2-2-2-1 HTTP. 16

2-2-2-2 URL. 20

2-2-2-3 کوکی.. 20

۲-۲-۲-۴ HTTPS. 21

2-2-2-5 عملیات وب.. 21

2-2-2-6 روش‌های کد گذاری.. 23

2-3 امنیت برنامه های کاربردی تحت وب... 24

2-3-1 This site is secure. 24

2-3-2 مسئله‌ی اصلی امنیت: کاربران می‌توانند ورودی دلخواهی را ارسال کنند.. 26

2-4 مکانیسم‌های دفاعی.. 27

۲-۴-۱ مدیریت دسترسی کاربران.. 27

2-4-1-1 احراز هویت.. 28

2-4-1-2 مدیریت نشست.. 28

۲-۴-۱-۳ کنترل دسترسی.. 29

۲-۴-۲ کنترل ورودی کاربران.. 29

2-4-2-1 انواع ورودی‌ها30

2-4-2-2 راهکار های کنترل ورودی.. 31

2-4-3 کنترل مهاجمان.. 33

۲-۴-۳-۱ مدیریت خطا و استثناء. 33

2-4-3-2 نگهداری از فایل ثبت بازرسی.. 34

2-4-3-3 هشدار به مدیران.. 35

2-5 آسیب‌پذیری‌ها و حمله‌های متداول برنامه‌های کاربردی تحت وب... 36

2-5-1 ورودی‌های نامعتبر. 37

2-5-2 کنترل دسترسی شکسته شده. 38

2-5-3 مدیریت نشست... 38

2-5-3-1 Session hijacking. 39

2-5-4 XSS. 40

۲-۵-۵ تزریق.. 41

2-5-5-1 SQL Injection. 42

2-5-5-2 سرریز بافر. 43

۲-۵-۶ ارجاع ناامن و مستقیم به شی.. 44

۲-۵-۷ مدیریت خطا و استثناء. 45

2-5-8 نقص در کنترل دسترسی URL. 46

2-5-8-1 Forced browsing. 46

2-6 URL. 47

2-6-1 ساختمان URL. 47

2-6-2 ارسال پارامترها50

2-6-3 رمز نگاری URL. 51

۲-۶-۴ Meta-Characters. 52

۲-۶-۵ سوء استفاده از رمز های URL. 54

۲-۶-۵-۱ آسیب پذیری رمز گشایی دوباره و یا رمز گشایی زائد. 56

2-7 بحث و نتیجه‌گیری.. 56

3 تکنیک‌های تشخیص الگو: دسته‌بندی... 57

3-1 مقدمه. 58

3-2 رویکردهای تشخیص الگو. 59

3-3 تشخیص الگوی آماری.. 61

3-4 دسته‌بندی کننده‌ها64

۳-۵ شبکه‌های عصبی 64

3-5-1 ساخت یک شبکه عصبی.. 68

3-5-1-1 تعداد لایه‌ها و نرون‌ها69

3-5-1-2 توابع فعال سازی.. 72

3-5-2 MLP. 73

3-5-3 یادگیری.. 74

3-5-3-1 الگوریتم پس از انتشار خطا74

۳-۵-۳-۲ ملاحظات یادگیری.. 77

3-5-3-3 الگوریتم Particle Swarm Optimization برای تعیین اوزان اولیه. 78

3-5-4 دسته بندی چند کلاسی الگوها در شبکه های عصبی.. 81

3-5-4-1 سیستم با M شبکه‌ی عصبی با مدل سازی OAO.. 83

3-5-4-2 سیستم با یک شبکه‌ی عصبی آموزش دیده با روش OAA.. 84

3-6 مدل مخفی مارکوف... 85

3-6-1 مفاهیم.. 86

۳-۶-۲ پارامترها87

3-6-3 انواع مدل‌های مخفی مارکوف... 88

3-6-4فرضيات تئوري مدل مخفي مارکوف... 89

3-6-5 معیار درست نمایی.. 90

3-6-6سه مسئله اصلي.. 92

3-6-7 دسته بندی و تشخیص الگو. 93

۳-۷ ترکیب دسته بندی کننده‌ها94

3-7-1 طراحی و آموزش گروه‌های دسته بندی کننده. 97

۳-۷-۲ ترکیب کننده. 99

۴ کارهای مرتبط 101

4-1 سیستم‌های تشخیص نفوذ مبتنی بر ناهنجاری.. 102

4-1-1 تشخیص ناهنجاری.. 105

4-2 کارهای مرتبط و سیستم‌های طراحی شده. 106

۴-۲-۱ روش‌های آماری.. 107

۴-۲-۲ روش‌های مبتنی بر یادگیری ماشین.. 112

4-2-2-1 آنالیز دنبالهای مبتنی بر فراخوانی سیستم. 112

4-2-2-2 شبکه‌های بیزی.. 114

4-2-2-3 تحلیل مؤلفههای اصلی.. 115

4-2-2-4 مدل‌های مارکوف.. 116

۴-۲-۳ روش‌های مبتنی بر داده‌کاوی.. 120

4-2-3-1 تشخیص حمله مبتنی بر دستهبندی.. 120

4-3 معیارهای ارزیابی سیستم‌های تشخیص نفوذ. 123

4-3-1 منحنی ROC. 125

4-3-2 AUC. 127

۵ ADS-WEB، یک سیستم شناسایی مهاجمان وب: معرفی و ارزیابی... 128

5-1 پیش‌زمینه. 130

5-1-1 تشخیص ناهنجاری.. 130

5-1-2 دسته بندی چند کلاسی الگوها در مقابل تک کلاسی.. 134

5-1-2-1 دسته بندی چند کلاسی الگو ها135

5-1-2-2 دسته بندی تک کلاسی الگوها138

5-2 نمای کلی سیستم.. 139

5-3 HRC. 142

5-3-1 ویژگی‌ها142

5-3-1-1 طول درخواست.. 143

5-3-1-2 توزیع کاراکتری درخواست.. 143

5-3-1-3 حضور و عدم حضور یک پارامتر. 143

5-3-1-4 نظم پارامترها144

5-3-2 کلاس‌های الگو. 144

5-3-3 ساختار شبکه‌ی عصبی.. 145

5-3-4 بردار ویژگی.. 147

5-3-5 آموزش HRC. 150

5-3-6 ساختار HRC. 152

5-4 ADR. 153

5-4-1 HMM... 156

5-4-1-1 ارزیابی.. 157

5-4-1-2 آموزش... 159

5-4-1-3 پیش‌بینی.. 162

5-4-2 ساختار لایه‌ی دوّم ADS. 163

5-4-2-1 ADRj164

5-5 پیاده سازی، آزمایشات و ارزیابی.. 166

5-5-1 جمع آوری مجموعه‌ داده‌های آموزشی و تست... 166

۵-۵-۲ ارزیابی ADS. 170

۵-۵-۳ ارزیابی ADR. 172

۶ نتیجه گیری و کارهای آینده. 180

6-1 جمع‌بندی و نتیجه گیری.. 180

6-2 پیشنهادات و کارهای آتی.. 182

7 منابع 186

 

 

فهرست اشکال

شکل ‏1‑1: سهم برنامه‌های کاربردیتحت وب در آسیب‌پذیری‌های کشف شده‌5

شکل ‏2‑1: راه‌های نفوذ به برنامه‌های کاربردی تحت وب.. 13

شکل ‏2‑2: معماری سه لایه‌ای برنامه‌ی کاربردی تحت وب.. 15

شکل ‏2‑3: نمونه‌ای از یک درخواست HTTP با متد GET. 17

شکل ‏2‑4: قالبکلی URL. 20

شکل ‏2‑5: آسیب پذیری های رایج برنامه‌های کاربردی تحت وب.. 26

شکل ‏2‑6: صفحه ورود یک سایت... 28

شکل ‏2‑7: ارزیابی ورودی کاربر. 30

شکل ‏2‑8: خطای اداره نشده‌ای که به عنوان خروجی برنامه‌ی کاربردی به کاربر نمایش داده شده است.34

شکل ‏2‑9: نمونه فایل ثبت بازرسی.. 35

شکل ‏2‑10: مقدار نامعتبر در پارامتر نام کاربری.. 38

شکل ‏2‑11: الف: مهاجم در حال بررسی درخواست‌های HTTP به منظورشناسایی توکن نشست معتبر می‌باشد. ب: مهاجم با توکن نشست سرقت شده یک دسترسی غیرمجاز انجام داده است.39

شکل ‏2‑12: شناسایی حفره XSS. 40

شکل ‏2‑13: زنجیره‌ی یک حمله‌ی XSS. 41

شکل ‏2‑14: مدیریت نامناسب خطا46

شکل ‏2‑15: انواع URL. 48

شکل ‏2‑16:شکل‌های رمزی کاراکتر / در نمایش‌های مختلف... 55

شکل ‏3‑1: توسعه‌ی یک سیستم دسته‌بندی آماری: فاز یادگیری زیر خط چین و فاز تست روی آن. 61

شکل ‏3‑2: توزیع رویکردهای مختلف تشخیص الگو با توجه به مشخص بودن پارامترها و نحوی آموزش... 63

شکل ‏3‑3:پرسپترون چند لایه‌ای با بردار ورودی x و خروجی z. 65

شکل ‏3‑4: وزن اتصال بین نرون‌های دو لایه. 66

شکل ‏3‑5: روش هرس افزایشی: پیدا کردن تعداد مناسب نرون‌های مخفی.. 71

شکل ‏3‑6: هرس انتخابی.. 72

شکل ‏3‑7: تابع سیگموئید. 73

شکل ‏3‑8: دسته‌بندی دو کلاس از نقاط با سه نوع توزیع مختلف در صفحه. 74

شکل ‏3‑9: یک نرون مخفی خطاهای پس انتشار را از دو نرون‌ خروجی دریافت می‌کند. 76

شکل ‏3‑10: فرایند آموزش شبکه‌ی عصبی با PSO برای تعیین اوزان اولیه. 81

شکل ‏3‑11: یک شبکه‌ی عصبی با دسته‌بندی k کلاسی.. 82

شکل ‏3‑12: M شبکه‌ی عصبی باینری برای دسته‌بندی K کلاس الگو. 82

شکل ‏3‑13: سیستمی با چند شبکه‌ی عصبی چند کلاسه. 82

شکل ‏3‑14: مرزهای دسته‌بندی بهینه. 85

شکل ‏3‑15: گراف جهت‌دار یک مدل مخفی مارکوف پایه‌ای: اندیس‌ها بیان‌گر زمان می‌باشند. 86

شکل ‏3‑16: فرایند تولید مشاهدات در یک زنجیره‌ی مارکوف دو حالته. 87

شکل ‏3‑17: سه ساختار براي مدل HMM.. 89

شکل ‏3‑18: دسته‌بندی با سه HMM.. 94

شکل ‏3‑19: دسته‌بندی تک کلاسه. 94

شکل ‏3‑20: معماری موازی دسته‌بندی کننده‌ها96

شکل ‏3‑21:معماری آبشاری دسته‌بندی کننده‌ها96

شکل ‏3‑22: نتایج حاصل از ترکیب دسته‌بندی کننده‌ها97

شکل ‏3‑23: سیکل طراحی یک دسته‌بندی کننده و چندین دسته‌بندی کننده98

شکل ‏3‑24: انتخاب دسته بندی کننده‌ها99

شکل ‏4‑1: مدل عمومی از سیستم‌های تشخیص الگو. 103

شکل‏4‑2: ساختار عمومی IDS هایمبتنی بر ناهنجاری.. 106

شکل ‏4‑3: انواع روش‌های تشخیص ناهنجاری و برخی کارهای بررسی شده107

شکل ‏4‑4: فلوچارتی از اعمال بلادرنگ NIDS. 109

شکل ‏4‑5: توزیع نرخ مثبت و منفی کاذب.. 124

شکل ‏4‑6: منحنی ROC.. 125

شکل ‏4‑7: مقایسه‌ی منحنی‌های مختلف ROC و تعاریف مقدار آستانه روی منحنی.. 126

شکل ‏4‑8: معانی AUC برای ROC های مختلف... 127

شکل ‏5‑1: نمونه‌ای از ناهنجاری‌ها در دو مجموعه‌ی دوبعدی.. 130

شکل ‏5‑2: دسته‌بندی الگو با و بدون در نظر گرفته زمان. 134

شکل ‏5‑3: ترکیب دسته‌بندی کننده‌ها134

شکل ‏5‑4: مسئلهتشخیصنفوذبادوکلاس... 135

شکل ‏5‑5: مسئلهتشخیصنفوذبادوکلاس... 136

شکل ‏5‑6: جزئیاتیدرموردنقاطنزدیکبهمرزدوکلاس... 137

شکل ‏5‑7: توزیع احتمالات پیشین برای مسئله یک بعدی دو کلاسه. 138

شکل ‏5‑8: نمایش مسئله تشخیص نفوذ با یک کلاس... 139

شکل ‏5‑9: دو مرزهای تصمیم‌گیری تولید شده توسط دو دسته‌بندی کننده‌ی مجزا139

شکل ‏5‑10: ساختار یک کاربرد تحت وب.. 140

شکل ‏5‑11: نمای کلی ADS-WEB.. 141

شکل ‏5‑12: ارتباط بین رفتار نرمال و غیرنرمال الگوها145

شکل ‏5‑13: ناحیه‌ی خاکستری.. 145

شکل ‏5‑14: ساختار شبکه‌ی عصبی ماژول‌های HRC.. 147

شکل ‏5‑15: DFA استخراج ویژگی توزیع کاراکتری.. 149

شکل ‏5‑16: DFA استخراج ویژگی نظم پارامترها149

شکل ‏5‑17: ماژول استخراج ویژگی‌ها150

شکل ‏5‑18: فرآیند ساخت مجموعه‌ی آموزشی HRC.. 151

شکل ‏5‑19: ساختار HRC.. 152

شکل ‏5‑20: DFA تشخیص نوع درخواست HTTP. 153

شکل ‏5‑21: سنسور تشخیص الگو. 154

شکل ‏5‑22: پیش‌بینی حمله. 154

شکل ‏5‑23: مقادیر آستانه و اشتراک بین سه ناحیه. 155

شکل ‏5‑24: مدل مخفی مارکوف ADR.. 156

شکل ‏5‑25: محاسبه‌ی بازگشتی متغیر پیشرو. 158

شکل ‏5‑26: جمع‌آوری دنباله‌های آموزشی.. 159

شکل ‏5‑27: محدود‌ه‌ی میزان‌سازی.. 160

شکل ‏5‑28: ساختار الگوریتم میزان سازی.. 161

شکل ‏5‑29: نمودار مسیر محرک‌های بزرگ.. 162

شکل ‏5‑30: انتخاب حالت بعدی بر اساس مشاهدات و حالت‌های گذشته. 163

شکل ‏5‑31: لایه‌ی دوم ADR.. 164

شکل ‏5‑32: یک ماژول ADR.. 165

شکل ‏5‑33: نمایش یک رکورد مجموعه‌ درخواست‌های HTTP. 166

شکل ‏5‑34: فرآیند آماده‌سازی مجموعه‌های نرمال و واقعی.. 167

شکل ‏5‑35: فرآیند تولید حمله. 169

شکل ‏5‑36 : منحنی یادگیری سه شبکه‌ی عصبی نرمال، نامعلوم و حمله. 170

شکل ‏5‑37: منحنی یادگیری شبکه‌ی عصبی HRC.. 171

شکل ‏5‑38: نمودار بهترین اجرای الگوریتم آموزش HMM.. 172

شکل ‏5‑39: تعیین مقادیر آستانه‌ی و

امروزه اینترنت نقش مهمی را در ایجاد و پیشبرد راه‌های کسب و کار جدید ایفا می‌کند. نیاز های کسب و کار و راهکارهای درآمدزایی که با انگیزه های دولتی و تجاری در سرتاسر جهان توسعه یافته‌اند، سبب پیچیدگی شبکه‌های اطلاعاتی شده‌اند. چنین شبکه‌هایی شامل مجموعه‌ای از تکنولوژی‌ها مانند سیستم‌های ذخیره‌سازی توزیع شده، تکنیک‌های رمزنگاری و احراز هویت، صدا و تصویر روی IP، دسترسی از راه دور و بی‌سیم و سرویس‌های وب می‌باشد. علاوه بر این شبکه‌های دانشگاهی و سازمانی بیشتر در دسترس قرار گرفته‌اند. به عنوان مثال، بسیاری از کسب‌ و کارها اجازه‌ی دسترسی به سرویس‌های موجود بر روی شبکه های محلیشان را می‌دهند و به مشتریان این امکان را می‌دهد تا توسط تراکنش‌های تجاری با شبکه‌هایشان تعامل کنند [1]. این نقاط دسترسی، شبکه‌های امروزی را نسبت به نفوذ و حملات آسیب‌پذیرتر کرده است. دامنه‌ی جرم و جنایت فضای مجازی فراتر از هک کلیشه‌ای شد و پیوستن کارکنان ناراضی به گروه هکرها، شرکت‌های فاسد و حتی سازمان‌های تروریستی باعث بحرانی‌تر شدن این موضوع شده‌اند. جای تعجب نیست که با آسیب پذیری نرم افزارها و پروتکل‌های امروزی و افزایش پیچیدگی حملات امروزی، حملات مثبتی بر شبکه گسترش یابند. نتیجه بررسی که توسط شرکت VanDyk[2] در سال 2003 انجام شد، نشان می‌دهد که حدود 66 درصد شرکت‌ها، نفوذ به سیستم را به عنوان بزرگ‌ترین تهدید تجاری خود می‌شناسند. در طی این بررسی حدود 86 درصد پاسخ‌دهندگان از دیوارهای آتش استفاده می‌کردند، که این امر حاکی از کافی نبودن دیواره آتش برای فراهم کردن سطح امنیتی مناسب می‌باشد. چنین گستردگی در آسیب پذیری نرم افزارها، باعث ناامن شدن محیط‌های محاسباتی و شبکه‌ای شده است و در نتیجه سیستم‌های تشخیص و جلوگیری از نفوذ به عنوان یک زمینه سیستم‌های تشخیص و جلوگیری نفوذ به عنوان یک زمینه‌ی پراهمیت علمی در حال تکامل معرفی شده است. در واقع سیستم‌های تشخیص نفوذ به عنوان مکمل دیواره های آتش در زمینه‌ی امنیت کامپیوتری می‌باشند که به ترتیب انجام وظایف شناسایی و ممانعت را بر عهده دارند.

در این میان یکی از محصولات اینترنت که بیش از هر محصول دیگر مورد استقبال قرار گرفته است، برنامه‌های کاربردی تحت وب[1]می‌باشند که در زمینه‌های مختلف ارتباطی، علمی، پزشکی، کسب‌و‌کار و سرویس‌های عمومی گسترش یافتند. برنامه‌های کاربردی تحت وب نیز خارج از این قاعده نبوده‌اند و حتی به دلیل ساختاری که دارند، بیشتر تحت تأثیر حمله‌ها و نفوذهای غیرمجاز قرار می‌گیرند. آقای Robertson و همکاران [3] مدعی‌اند که تعداد زیادی از برنامه‌های کاربردی توسط افراد کم تجربه به زمینه‌ای امنیت توسعه یافته‌اند، که باعث شده است آسیب‌پذیری‌های برنامه‌های کاربردی ۲۵٪ از کل حفره‌های امنیتی لیست CVE[4] از سال ۱۹۹۹ تا ۲۰۰۵ را تشکیل دهند.

گسترش برنامه‌های کاربردی تحت وب باعث شده‌ است که موضوع حفاظت شبکه‌های کامپیوتری به یک چالش تبدیل شود. شکل ‏1‑1نتایج تحقیقات اخیر تیم X-Force را نشان می‌دهد که بیان می‌کند بیش از ۵۵٪ از آسیب‌پذیری‌های کشف شده در نیمسال اول ۲۰۱۰ مربوط به برنامه‌های کاربردی تحت وب می‌باشد [5].

شکل ‏1‑1: سهم برنامه‌های کاربردی تحت وب در آسیب‌پذیری‌های کشف شده‌ [5].

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

0-1 طرح مسئله

ابتدا به دو موضوع زیر توجه کنید:

1- معمولاً یک حمله به صورت یک عمل منفرد انجام نمی‌پذیرد [6-8, 1]، بلکه به دنباله رفتارهایی که در گذشته اتفاق افتاده بستگی دارد. بنابراین فرآیند تشخیص هجوم یا نفوذ به صورت موردی فقط بر روی یک رویداد انجام نمی‌شود؛ در واقع این فرآیند یک مسئله‌ی سری زمانی است که در آن دنباله رویدادهایی که در طول زمان اتفاق می‌افتاده‌اند، الگوی یک حمله را شکل می‌دهند. مدل‌سازی نفوذ یک مدل‌سازی مبتنی بر زمان فعالیت‌ها است که یک نفوذ را فراهم می‌آورند. مهاجم حمله‌ی خودش را با اعمال مقدماتی شروع کرده و به فعالیت‌های خود ادامه می‌دهند تا به یک دسترسی غیرمجاز و عمل مخرب دست یابد. هر گونه ت***** که در طول جریان حمله توسط هر شخصی صورت گیرد، تهدید شناخته می‌شود.

2- هر چند اکثر سیستم‌های تشخیص نفوذ مبتنی بر ناهنجاری گذشته [9-11]، ضعف سیستم‌های مبتنی بر امضاء را برطرف کردند (تشخیص حمله‌های جدید) اما یک مشکل اساسی دارند و آن نیز بالا بودن نرخ مثبت کاذب می‌باشد. این سیستم‌ها با شناسایی رفتار نرمال، ناهنجاری‌ها را تشخیص می‌دهند ولی در مواجهه با الگوهایی که نزدیک به ناهنجاری قرار می‌گیرند (چه الگوی نرمال و چه حمله) دچار سردرگمی می‌شوند. از آن‌جا که ناهنجاری همیشه یک رفتار مخرب نیست [11] از این‌رو باید روندی در پیش گرفت که حتی بین ناهنجاری که به حمله ختم می‌شود و رفتارهای ناهنجار دیگر تفاوت قائل شود. ما قصد داریم چارچوبی در این سیستم‌ها تعبیه کنیم که آن‌ها را از این حالت خارج کرده تا بتوانند با بنا کردن مرزی انعطاف‌پذیر بین رفتار‌های نرمال و حمله، به بهترین شکل ناهنجاری‌های حمله‌ای را تشخیص دهند.

با توجه به این دو موضوع، می‌توان مسئله را بدین صورت تعریف کرد: ارائه‌ی یک سیستم تشخیص نفوذ مبتنی بر ناهنجاری که با پیگیری رفتارهای ناهنجار و مشکوک، فقط حمله‌ها را تشخیص ‌دهد نه هر رفتار ناهنجاری را.

 

1 Web Applications

برای این فایل تا کنون نظری ارسال نشده است

برای ارسال نظر باید عضو سایت باشید

تعداد کاراکتر مجاز:

برچسب های مرتبط


فهرست کتابخانه نسل جوان ایران

نویسندگان برتر و فعال نسل جوان ایران

تاییدیه های سایت


درگاه بانک ملت

شبکه های اجتماعی نسل جوان ایران


فن آوری های روز دنیا


آرشیو فن آوری های روز دنیا

جدیدترین اخبار سایت


پایگاه خبری نسل جوان ایران