دانلود پروژه امنیت در وب و شناخت هکرها وحملات آنها (docx) 1 صفحه
دسته بندی : تحقیق
نوع فایل : Word (.docx) ( قابل ویرایش و آماده پرینت )
تعداد صفحات: 1 صفحه
قسمتی از متن Word (.docx) :
-367030300990
واحد شهرکرد
پروژه کارشناسی رشته مهندسی کامپیوتر
گرایش نرم افزار
عنوان:
امنیت در وب و شناخت هکرها وحملات آنها
استاد مربوطه:
دانشجو:
شماره دانشجویی:
خرداد 1399
پیشگفتار:
امنيت،مبحثي كاملا پيچيده ولي با اصولي ساده است.در بسياري از مواقع همين سادگي اصول هستند كه ما را دچارگمراهي مي كنند و دورنماي فعاليت هاي ما را از لحاظ سهولت و اطمينان در سايه اي از ابهام فرومي برند. بايد گفت كه امنيت يك پردازش چند لايه است .
عبارتهای «امنیت شبکه» و «امنیت اطلاعات» اغلب به جای یگدیگر مورد استفاده قرار می گیرند. امنیت شبکه به طور کلی برای فراهم کردن امکان حفاظت از مرزهای یک سازمان در برابر نفوذگران (مانند هکرها) به کار می رود. با این حال، امنیت اطلاعات به صراحت بر روی محافظت از منابع اطلاعاتی در برابر حمله ویروسها یا اشتباهات ساده توسط افراد درون سازمان متمرکز شده است و برای این منظور از تکنیکهای جلوگیری از از دست رفتن دادهها ، راههای مختلف شناسایی نفوذ به سیستم ، شناسایی انواع نفوذگران ، و جلوگیری کردن ازنفوذ افراد بیگانه به انواع سیستم ها بهره می برد.
تقدیم به:
خدایی که آفرید
جهان را، انسان را، عقل را، علم را، معرفت را، عشق را
و به کسانی که عشقشان را در وجودم دمید.
تقدیروتشکر:
سپاس وستایش مر خدای را جل و جلاله که آثار قدرت او بر چهره روز روشن، تابان است و انوار حکمت او در دل شب تار، درفشان. آفریدگاری که خویشتن را به ما شناساند و درهای علم را بر ما گشود و عمری و فرصتی عطا فرمود تا بدان، بنده ضعیف خویش را در طریق علم و معرفت بیازماید.
چکیده:
قبل ازاختراع رایانه امنیت اطلاعات به صورت فیزیکی با قفل و گاو صندوق انجام می شد. با اختراع رایانه روشهای احراز اصالت و استفاده از محاسبات رایانه ای برای دسترسی به اطلاعات مطرح شدند. با شبکه ای شدن رایانه ها نیاز به روش های جدیدی ازقبیل حفظ تمامیت داده ، محرمانگی داده وغیره مورد توجه قرار گرفتند.
امنیت درشبکه را ازدودیدگاه می توان بررسی کرد. دیدگاه اول به بررسی امنیت شبکه از نظر تجهیزاتی می پردازد ودیدگاه دوم امنیت در مدیریت شبکه است که درآن برقراری امنیت لازم درمدیریت چندشبکه توزیع شده مطرح می شود.
سیستم های توزیع شده،شبکه ای از رایانه هایی است که درآن فرض شده همه سیستم ها به طور مهم متصل اند ودرآن اشتراک نتایج ، قابلیت اعتماد وتوزیع فرایند برای اجرا درسطح شبکه لحاظ شده است . مهمترین مشکل امنیتی که درسیستم های توزیع شده وجوددارد دسترسی به منابع است.
فهرست مطالب
عنوان ................................................................................................................................................صفحه
مقدمه........................................................................................................................................................1
فصل اول:اصول امنيت
1-1- امنيت به عنوان يك زيربنا ............................................................................................................5
1-2- امنيت فراتر از يك كلمه رمز.........................................................................................................5
1-3- امنيت به عنوان يك محدوديت......................................................................................................6
1-4- تهاجم DDOS چيست؟...............................................................................................................7
1-5- تهاجمات مصرف منبع....................................................................................................................7
1-6- كالبدشكافي يك تهاجم سيل SYN .............................................................................................9
1-7- محكم كردن پيكربنديهاي ديوار آتش...........................................................................................10
1-8- ايجاد يك IDS ...........................................................................................................................10
1-9- اجراي يك مرور كننده Scanner آسيب پذيري........................................................................11
1-10- ايجاد سرورهاي پراكسي.............................................................................................................11
1-11- پيكربندي كردن فداكارانه ميزبانها...............................................................................................11
1-12- افزايش مديريت ميزبان و شبكه..................................................................................................11
1-13- گسترش بيشتر تكنولوژي هاي امنيت.........................................................................................11
1-14- گردآوري اطلاعات.....................................................................................................................12
1-15- راههاي مختلف جهت مسيردهي................................................................................................12
1-16- مقايسه قابليت هاي امنيت سرور وب.........................................................................................12
1-16-1- تصديق ....................................................................................................................13
1-16-2- گواهي نامه ها و امضاهاي ديجيتالي.........................................................................14
1-16-3- به كارگيري برنامه هاي كاربردي CGI...................................................................14
فصل دوم:آشنایی باعملکردهکرها
2-1- هک چیست؟..............................................................................................................................16
2-2- هدف هک ...................................................................................................................................16
2-2-1- اعلام سواد و تسلط بر فن آوری اطلاعات.................................................................17
2-2-2- اعلان ضعف امنیت شبکه کامپیوتری..........................................................................17
2-2-3- انتقام شخصی یا گروهی............................................................................................17
2-2-4- بدون دلیل..................................................................................................................17
2-2-5- دستیابی به اموال مجازی افراد یا شرکتها.....................................................................18
2-3- پیشینه جنبش نفوذگری وظهور نفوذگران با کلاه های رنگارنگ !................................................18
2-3-1- هکرهای کلاه سفید...................................................................................................20
2-3-2- هکرهای کلاه سیاه......................................................................................................21
2-3-3- هکرهای کلاهخاکستری..............................................................................................21
2-3-4- هکرهای کلاه صورتی.................................................................................................21
2-4- خلاصه اي بر تاريخچه ي هك كردن...........................................................................................22
2-4-1- سيستم هك كردن تلفن...............................................................................................23
2-4-2- سيستم هك كردن كامپيوتر.........................................................................................23
2-5- سرویس های امنیتی درشبکه ها....................................................................................................25
2-6- انگیزه های نفوذگری وحمله به شبکه .........................................................................................27
2-7- سطوح مهارت نفوذگران...............................................................................................................28
2-8- شيوههاي هکرها جهت حمله به وب سايتها.............................................................................28
2-8-1-SQL Injection.............................................................................................................28
2-8-2- Cross-Site Scripting...............................................................................................29
2-8-3- Directory Traversal Attacks...............................................................................30
2-8-4- Parameter Manipulation......................................................................................30
2-8-5- Cookie manipulation.............................................................................................30
2-8-6- HTML Header manipulation.............................................................................31
2-8-7- HTML Form Field manipulation...................................................................31
2-8-8- تغییر آدرس.......................................................................................................................31
2-8-9- حمله به تعیین هویت........................................................................................................32
2-8-10- سوء استفادههاي شناخته شده ........................................................................................32
2-8-11- شمارش دایرکتوری .......................................................................................................32
2-9- مهندسی اجتماعی.........................................................................................................................32
2-10- نقاط دخول.................................................................................................................................33
2-11- زیر ساخت شبکه........................................................................................................................34
2-12- برنامههاي مورد استفاده در اینترنت............................................................................................34
2-13- پوشش دهی................................................................................................................................35
2-13-1- پوشش دهی چیست؟...............................................................................................36
2-13-2- چرا پوشش دهی ضروری است؟.............................................................................37
2-13-3- پوشش دهی اینترنت.................................................................................................38
فصل سوم :شیوه های هکرها برای نفوذ به شبکه
3-1- روشهای معمول حمله به کامپیوترها .........................................................................................42
3-1-1- برنامههای اسب تروا ..................................................................................................42
3-1-2- درهای پشتی...............................................................................................................43
3-1-3- اسبهای تروا درسطح برنامه های کاربردی..................................................................43
3-1-4- اسکریپتهای Cross-Site ........................................................................................45
3-1-5- ایمیلهای جعلی ..........................................................................................................44
3-1-6- پسوندهای مخفی فایل ...............................................................................................47
3-1-7- شنود بسته های اطلاعات (استراق سمع)....................................................................48
3-1-7-1- ابزارDsniff.............................................................................................49
3-1-8- حملات pharmingچیست؟...................................................................................49
3-1-9- حمله به سیستم عامل..................................................................................................52
3-1-10- درهم شکستن برنامه کاربردی یا سیستم عامل ازطریق سرریزکردن پشته ...............53
3-1-10-1-پشته چیست؟...........................................................................................53
3-1-10-2- Exploit Code................................................................................55
3-1-10-3- پیداکردن نقاط آسیب پذیر .....................................................................55
3-1-10-4- سازماندهی وآرایش بافر پیش ازسرریز شدن..........................................56
3-1-11- حمله برعلیه کلمات عبور ......................................................................................57
3-1-11-1- حدس زدن کلمات عبور پیش فرض سیستم ها.....................................58
3-1-11-2- حدس کلمه عبور و ورود به سیستم از طریق چندخط برنامه نویسی.....58
3-1-12- حمله به کوکی های موقت ......................................................................................59
3-1-13- هک کردن VPN......................................................................................................59
3-1-13-1- چرا IP Sec خیلی ویژه و خاص می باشد؟.........................................64
3-1-13-2- بعضی تجزیه و تحلیل های تخصصی IP Sec.......................................65
3-1-13-3- نمایش هک کردن: راز امنیت شبکه و راه حل ها...................................66
فصل چهارم:جلوگیری ازنفوذهکرها
4-1- مبارزه با اسبهای تروا و درهای پشتی......................................................................................... 68
4-1-1- استفاده از ویروس یاب های مطمئن وقوی................................................................68
4-1-2- عدم استفاده از جستجو کننده تک منظوره اسب های تروا.........................................68
4-1-3- نسبت به هر نرم افزاری که تهیه می کنید مطمئن باشید..............................................68
4-1-4-آموزش کاربران بسیارحیاتی است................................................................................69
4-2- مقابله ابتدایی باحمله به پشته ازطریق سیستم IDS ....................................................................69
4-2-1- مقابله با انواع حملات مبتنی بر سرریزی پشته یا بافر.................................................69
4-2-2- مقابله درسطح مسئول سیستم وگروه امنیتی................................................................70
4-2-3- مقابله با سرریزشدن پشته درسطح برنامه نویسی........................................................71
4-3- روشهای مقابله با ابزارهای شکننده کلمه عبور.............................................................................71
4-3-1- تكنیكهای انتخاب كلمه عبور......................................................................................73
4-3-2- استاندارد ISO ۱۷۷۹۹ .............................................................................................73
4-4- مقابله با استراق سمع (مقابله با اسنیفرها) ....................................................................................75
نتیجه گیری.............................................................................................................................................77
منابع........................................................................................................................................................80
مقدمه :
استفاده از شبکههاي کامپيوتری در ساليان اخير روندی تصاعدی پيدا کرده است. شبکههاي کامپيوتری، زير ساخت مناسب برای سازمانها و موسسات را در رابطه با تکنولوژی اطلاعات فراهم مينمايند.مقوله تکنولوژی اطلاعات به همان اندازه که جذاب وموثر است، در صورت عدم رعايت اصول امنيت به همان ميزان و يا شايد بيشتر، نگران کننده و مسئله آفرين خواهد بود. اغلب سازمانهاي دولتی و خصوصی در کشور، دارای وب سايت اختصاصی خود در اينترنت ميباشند. سازمانها برای ارائه وب سايت، يا خود امکانات مربوطه را فراهم نموده و با نصب تجهيزات سخت افزاری و تهيه پهنای باند لازم،اقدام به عرضه سايت خوددر اينترنت نمودهاندياازامکانات مربوط به شرکتهاي ارائه دهنده خدمات ميزبانی استفاده مينمايند.بدون ترديدسرويس دهنده وب يکی از مهمترين نرم افزارهای موجود در دنيای اينترنت محسوب ميگردد. کاربرانی که به سايت يک سازمان يا موسسه متصل و درخواست اطلاعاتی را مينمايند،خواسته آنان درنهايت دراختيار سرويس دهنده وب گذاشته ميشود. سرويس دهنده وب، اولين نقطه وروداطلاعات و آخرين نقطه خروج اطلاعات از يک سايت است. نصب و پيکربندی مناسب چنين نرم افزار مهمی، بسيار حائز اهميت بوده و تدابير امنيتی خاصی را طلب مينمايد.
تكنولوژي اينترنت تنهابه منزل ومحل كارماهدايت نشده است ودر بيشتر جنبه هاي زندگي ما وجود دارد،بشكه هاي بي سيم ودست يابي به دستگاهها،حضور اينترنت را در همه جا فعال كرده است. بسياري ازاين دستگاهها به طورمأيوسانه اي امنيت ضعيف وسستي دارندكه باعث مي شود كانديداي ايده آل براي يك هكرباشند. اين موضوع وقتي اَسَف بارتر است كه سيستمهاي داراي امنيت ضعيف، سيستمهايي را كه داراي امنيت جامعي هستند را با سوار كردن تهاجمات روي آنها به مخاطره مي اندازند. حتي برنامه ها و سيستمهايي كه داراي امنيت صوتي هستند از هجوم يا خطر مصون نيستند. افزايش تقاضاي نرم افزار و كاهش سريع در چرخه هاي توسعه بدين معني است كه نسخه جديد نرم افزارهاي نصب شده روي ماشينها يك گام جلوتر است..انجام هك تا حدودي بر مبناي كسب علم و دانش استوار است يك اشتياق براي ارضاي يك حس ذاتي كنجكاوي فني. با اين ديد، به بسياري از هكرها در مورد فعاليتهايشان حق داده مي شود. بدين معني كه آنها رخنه ها و كاستي هاي امنيت را آشكار ميكنند.
فصل اول:
اصول امنيت
امنيت دردنياي مجازي اينترنت پيچيده تر از دنياي واقعي است كه ما در آن زندگي مي كنيم شعارها، و كلاهبرداريهاي تجاري معمّا را پيچيده تر مي كند اما به عقيده متخصصّان دنياي اينترنت روز به روز خطرناكتر مي شود چگونه اين اتفاق مي افتد؟چگونه راه حل هاي همه سويه نتوانسته مشكلات ابتداي را حل نمايد جواب ساده نيست؟ چرا كه مشكلات بسيار پيچيده است ايجاد و نگهداري امنيت مشكل مي باشد امنيت پيچيده است،مشكل اين است كه دنياي ارتباط مستقيم حول يك سيستم از پروتكل ها و قواعد بنا نهاده شده است اما متأسفانه اين قواعد كامل و دائم پيروي نمي شوند، تركيب سيستم هاي كامپيوتري امروزي ونرم افزارها غالباً برنامه هايي را ايجاد مي كند كه به واسطه خط مشي هاي عملي اينترنت به صورت پيش بيني نشده اي عمل مي كند. لذا يك پتانسيل زياد براي شلوغ كاري حجيم نياز مي باشد هم چنين بدست آوردن و نگهداري سطح مناسبي از امنيت نيازمند منابع مي باشد و افرادي با مهارتهاي فني و تجاري متعادل نياز مي باشد زمان، انرژي، پول نياز دارد امنيت ارزان نيست مفهوم امنيت مي تواند به عنوان يك هدف تغيير پذير دائمي به نظر برسد كه اين تهديدات را در برگرفته و مشابه يك فرايند زندگي با تغييرات وفق داده مي شود، در دنياي تجارت الكترونيكي افرادي كه از حفاظت هاي امنيت سود مي برند. بيشتر كساني هستند كه فراپند را به همراه امنيت در ذهنشان شروع كرده اند، چگونه امنيت را بايد در كانون شروع قرار داد چه نقش هايي بايستي بازي كرد و چگونه آن را به دست آوريم و بودجه پروژه را تعيين كنيم از آنجا كه مسئوليت دفاع از يك سايت در حال ايجاد با يك سايت تجارت نيكي را داريم نقش هايي را كه بايستي بازي كرد و فرآيندي كه وضعيت سايت را بهبود بخشد كاوش خواهيم كرد. [7]
1-1- امنيت به عنوان يك زيربنا:
راحت ترين موفق ترين وبهترين راه براي ايجاد امنيت يايك محيط امن،شروع امنيت در ذهن مي باشد اين بدان معني است كه اعمال اصول ايمني سازي به عنوان يك زير بنا در سرتاسر پروژه در نظر گرفته شود اصول اوليه امنيت عبارتند از داري ، صحت و قابليت دسترسي جهت موفقيت پروژه بايد اين اصول در تمام مراحل بكار گرفته شود. [7]
1-2- امنيت فراتر از يك كلمه رمز:
بايد امنيت در سازمان فراتر از يك كلمه رمز يا يك گروه امنيت باشد امنيت بايستي در فكر و ذهن تك تك افرادبوده و جلودار عمليات روزانه باشد در داخل شركت اعضاي گروه امنيت با گروههاي ديگر به عنوان همكار و مشاور كار مي كنند آنها بايد قابل نزديك شدن باقي بمانند و همانند پليس شبكه به نظر نرسند، هنگامي كه تمامي افراد متوجه عوامل اختلال در سايت و يا در معرض خطر قرار دادن مشتريان باشند امنيت به بهترين نحو كار خواهد كرد كليد رسيدن به اين سطح از آگاهي، آموزش است.
آموزش ابزاري است كه با بكارگيري آن مي توان مهاجميني را كه به واسطه ارتباط نامناسب طراحي ضعيف فرايندها و خونسردي و بي مسئوليتي افراد قصد سوء استفاده دارند را خلع سلاح كرد برخي هجوم ها كه هكرها آن را مهندسي اجتماعي مي نامند .بهترين راه براي مقابله با اين حملات آموزش كاركنان در مورد سياست هاي مرتبط با امنيت و پوشيدگي مشتري ميباشد. هنگام اعمال نمودن تغييرات سياست ها نيازمند تذكر دهنده تازه كننده ها و روز آوريهاي متناوب مي باشد جهت دست آوري و دست يابي به موفقيت و نگهداري درازمدت آن بايستي بالاترين سطح مديريت و سياست ها و اجزاي آن را پشتيباني كرد. چنانكه تيم امنيت مستلزم پشتيباني مديريت است هر فردي نيازمند اين مي باشد كه احساس كندگروه امنيت قابل نزديك شدن مي باشد و هراسي از گزارش چيزهاي مشكوك نداشته باشد كارمندان بايستي دقيقابدانند كه يا چه كسي بايد تماس داشته و زماني كه مشغول صميمت با گروه امنيت هستند به جاي سوء ظن يا احترام رفتار شود. [7]
1-3- امنيت به عنوان يك محدوديت:
بزرگترين دغدغه اي كه تيم هاي امنيت با آن روبرو هستند اين است كه يا چه ديدي به آنها نگاه مي شوددرخيلي ازسازمانهاسابقه تيم امنيت يانقش هاي نگهبانان امنيت فيزپكي در هم پيچيده شده است. بسياري از تيم هاي امنيت توسط هم قطران خود به عنوان پليسان شبكه يا نگهبانان كامپيوتر نظاره مي شوند. نقش اعضاي تيم امنيت اغلب كار يا تيم منابع انساني مي باشد يك مشكل ايجاد مي شود اين علل باعث خرابي فرايند امنيت مي شود يا دور كردن كارمندان ديگر، تيم امنيت به سختي مي تواند وظايفش را انجام دهد. با اعضاي تيم كمتر و كمتر همكاري مي شود و نخواهند توانست با گروههاي ديگر ارتباط مناسبي برقرار سازند.
دليل آنست كه تصاوير اشتباهي است كه به كارمندان ديگر نشان داده شده است تصوير اين است كه امنيت يك محدوديت است اغلب پس از بكارگيري كنترل ها با نرم افزار مونيتور پنگ براي مديريت بهتر است استفاده از منابع شبكه يا كارايي در ساعات كاري در صورتي كه تكنولوژي ها هيچ گناهي ندارند اغلب آن ها بعنوان روش «برادر بزرگ» مي شناسند در اين صورت از خطرات بازي نقش «پليس شبكه» مصون خواهيد بود اگر كاربرد دچار اشتباه شده و در دام يك تهاجم مفهومي بيفتد و كلمه عبورش را به ديگران بدهد، او را خواسته و از او توضيح بخواهد، نه اينكه او را تنبيه و كيفر بدهد.[7]
1-4- تهاجم DDOS چيست؟
براي درك يك حمله DDOS و پيامدهاي آن ابتدا نياز داريم تا اصول حملات DDOS را بشناسيم شناخت DDOS به سمت DDOS و پي بردن به تفاوت اين دو بسيار مهم است باعث شگفتي نيست كه يك تهاجم DDOS براي تضمين اين كه يك سرويس كه معمولاً زيربناي محاسباتي دارد تأثير منفي داشته باشد با دقت هدف گيري نموده اين نوع از تهاجم باعث توقف سيستم مقصد نمي شود معمولاً يك حمله موفق DDOS كيفيت ارائه سرويس را طوري تنزّل مي دهد كه هميشه در دسترس نباشد موضوع اصلي اين است كه هدف يك حمله DDOS يك هك سرور است البته در همه موارد اين طور نيست هدف اصلي يك هجوم DDOS تنزل سرويس است خواه اين سرويس توسط يك سرور ميزباني شده باشد يا توسط كل ساختار شبكه! [4]
1-5- تهاجمات مصرف منبع:
منابع محاسباتي به خاطر طبيعت شان خيلي محدود هستند. هر چند ما آرزو داريم اين طور نباشند مديران شبكه گرداگرد جهان از اين كه زيرسازي شبكه آن ها فاقد پهناي باند شبكه، سيكل هاي CPU ، ARM ، و محل ذخيره سازي ثانويه است نالان هستند هميشه نبود اين منابع باعث تنزل سرويسي كه زيرساخت محاسباتي داشته و به ايستگاه هاي كاري ارائه مي شود مي گردد. اين حقيقت كه منابع محدود است يك نقصان است يكي از عادي ترين گونه هاي هجوم DDOS هدفگيري پهناي باند شبكه است خصوصاً ارتباطات اينترنت و دستگاههاي پشتيباني شده يك هدف آغازين براي اين نوع تهاجم است به اين علت كه پهناي باند پديداري آن ها روي سرتاسر اينترنت محدود شود تجارتهاي كوچك در موقعيت مناسب براي تهاجمات مصرف پهناي باند قرار دارند و پهناي باند اضافي براي اينترنت در نظر ميگيرند تا بتوانند بطور سريع به درخواست هاي مشتريانشان سرويس دهند در چنين حاليت يك تهاجم مصرف پهناي باند مي تواند يك شركت را به زانو درآورد. [4]
تهاجمات مصرف منبع معمولا خارج از شبكه محلي توليد مي شود و اين تهاجمات به شكل تعداد زيادي بسته هاي اطلاعاتي كه به سمت هدف هدايت شده ظاهر مي شود. اين تكنيك معمولاً به نام سيل شناخته مي شود يك شبكه هدف گيري شده وقتي مي تواند سيل زده شود كه يك مهاجم پهناي باندقابل دسترسي بيشتري داشته باشداين حالت براي سايت هاي تجارت الكترونيكي كمتر اتفاق مي افتد چون در بيشتر حالات كانال وسيع تر و بزرگ تر از مهاجمانشان دارند از طرف ديگر دسترسي به پهناي باندارتباط،خطوط پرسرعت اينترنت رابه خانه هاي كاربران دراقصي نقاط جهان برده همانطور كه كاربران خانگي(مودم هاي آنالوگ)خود را با(مودم كابلي) و خطوط DSL جاي گزين مي كنند احتمال وقوع اين نوع تهاجم زياد است. راه ديگر مصرف پهناي باند، استفاده از شبكه هايي كه بطور صحيح و اصولي پيكربندي نشده در اين حال ارسال ترافيك به سمت هدف امكانپذير مي باشد اگر شبكه هاي كافي در دام اين نوع رفتار بيفتد شبكه مورد هدف به آساني دچار سيل زدگي مي شود اين نوع تهاجمات تقويت ناميده مي شود. در سرويس Attacks DDOS داراي معني وسيعي است لذا به سبب شرايط محيطي كه ظهور آن را احاطه كرده است تهاجمات DDOS را از حد گذرانده يك مثال كلاسيك از اين سناريو ويروس مليسا است كه يا چنان سرعتي تكثير مي شود كه منابع شبكه را مصرف نموده است و نتيجه آن يك DOS است به طور خلاصه تعداد زيادي از حملات DOS در اينترنت است.[5]
1-6- كالبدشكافي يك تهاجم سيل SYN :
يك تهاجم سيل SYN از طريق دست كاري در مكانيزم هاي شروع يك ارتباط TCP تأثير خود را مي گذارد جريانهاي ارتباطي ايجاد شده توسط پروتكل TCP برخلاف UDP جهت داده شده توسط ارتباط Connection-Oriented مي باشد اين بدان معني است كه قبل از اينكه دو كامپيوتر مبدأ و مقصد بتوانند تبادل اطلاعات كنندمي بايست يك نشست ايجاد شده باشد توسط روش three – way-hand shake كه درآن هرمرحله فقط وقتي آغاز مي شود كه مرحله قبل كامل شده باشد نشست ايجاد مي شود. مراحلي كه در TCP يا استفاده از روش فوق بين دو ماشين(ايستگاه كاري و سرور)نشست ايجاد مي كند عبارتنداز يك SYN از ايستگاه كاري به سرور فرستاده مي شود. يك بسته SYN از يك پورت ايستگاه كاري به يك پورت خاص ردي سرور كه منتظر تماسهاي ايستگاه كاري است ارسال ميشود يك ISN نيز به همراه بسته فرستاده مي شود TCP يك پروتكل قابل اعتماد است و نتيجتاً يك مكانيزم براي بازيابي ارسالات ناموفق وبراي كمك به بازسازي بسته اطلاعات نياز مي باشد ISN كمك مي كند كه بسته ها با ترتيب درست دريافت شود يك SYN/ACK از سرور به ايستگاه كاري ارسال مي شود.
سرور يا پس فرستادن ISN ايستگاه كاري به اضافه يك، به ايستگاه كاري پاسخ مي دهد سيگنال ACK SYN (AcknowIedge) ايستگاه هاي كاري را تصديق مي نمايد يك SYN مربوط به سرور به ايستگاه كاري نشان مي دهد كه سرور قادر است يك نشست با ايستگاه كاري ايجاد نمايد SYN ارسالي از سرور به ايستگاه كاري داراي ISN خود سرور است كه با ISN ايستگاه كاري متفاوت است.
يك ACK از ايستگاه كاري به سرور پس فرستاده مي شود. ايستگاه كاري با يك ACK كه شامل ISN سرور به اضافه يك ميباشد بهSYN/ACK ميرود پاسخ مي دهد حالا ايستگاه كاري و سرور يك ارتباط TCP برقرار مي سازند. در طي برقراري عادي يك نشست TCP مراحله سه گانه انجام مي شود يك حمله سيل SYN يا شروع ارتباط TCP و ارسال يك SYN به سرور مورد نظر بوجود ميآيد مهم ترين اختلاف بين اين SYN و اصل آن كه از طرف يك كاربرد مشروع ارسال مي شود اين است كه آدرس مبدأ در اين تهاجم حمل شده است به خاطر طبيعت IPV4 پس از آنكه يك بسته دستكاري و جعلي شده ميزبان مبدأ را ترك و شروع به تعيين ميسر كرد چك كردن آن بسيار مشكل است و لذا IPV6 تكنيك مطلوبي است كه توسط هكرها به كار مي رود. [4]
1-7- محكم كردن پيكربنديهاي ديوار آتش:
تمامي سرورهايي كه به اينترنت دسترسي دارند بايستي در DMZ ها قرار گيرند ايجاد كنترل شديد، تغييرات براي ويرايش هاي قاعده دار و اطمينان اينكه كمترين تعداد پورت ها و پروتكل ها از ميان ديوار آتش اجازه عبور دارد امري است حياتي و مهم، به عنوان مثال فيلترسازي خروجي پاسخ اكوهاي CMP توسط ديوار آتش و هم چنين بسته هاي برچسب زماني پاسخ برچسب زماني درخواست اطلاعات پاسخ اطلاعات و زمان انقضاء را در نظر بگيريد معمولاً سايت ها مي بايست با در دسترس قرار دادن پورت Tep شماره 80 شروع كنند و سپس توسعه و گسترش را ادامه دهند هر گونه توانايي دفاع، براي ديوار آتش محلي بافر كردن فرآيند ارتباط TCP يا آشكارسازي فعاليت آزار دهنده را فعال كنند. گزارش گيري و منحرف نمودن اطلاعات به سمت Sysloget را فعال سازيد.[4]
1-8- ايجاد يك IDS :
ايجاد يك IDS كه به طور كامل طراحي شده باشد اين قدرت را به مديران مي دهد كه برخي مكالمات را آشكار سازند IDS مي بايست هم براي ميزبان و هم براي شبكه اجرا شود.[5]
1-9- اجراي يك مرور كننده Scanner آسيب پذيري:
يك همراه لازم براي IDS مروركننده آسيب پذيري است كه گزارشهايي را مربوط به آسيب پذيرهاي موجود روي ميزبانها و دستگاههاي شبكه ارائه مي كند لازم است كه يك مرورگر آسيب پذيري IDS توسط جديدترين فهرست آسيب پذيرها روزآمد شود.[5]
1-10- ايجاد سرورهاي پراكسي:
پيكربندي نمودن ترافيك ورودي و خروجي شبكه از طريق عبور از يك پراكسي، مي تواند ظهور تهاجمات DDOS را كم نمايد. سرورهاي پراكسي هم چنين مي تواند محقق سازد كه در آينده مندرج اطلاعات مفيدي بعد از وقوع يك حمله در اختيار خواهيد داشت.[5]
1-11- پيكربندي كردن فداكارانه ميزبانها:
ايجاد ميزبانها با هدف گمراه كردن هجوم ها يا جمع آوري اطلاعات در مورد پتانسيل مهاجمان يك مبحث جنجالي است و بسياري از فاكتورها قبل از اجراي آن بايستي در نظر گرفته شود.[5]
1-12- افزايش مديريت ميزبان و شبكه:
توسط مونيتور نمودن استفاده از يك منبع در شبكه و ميزبانها تأثيرات DDOS ممكن است هنگام مقايسه با عمليات عادي پديدار شود خيلي از برنامه هاي مديريت مي تواند اطلاعات جامع راجع به نرم افزار و سرويس هاي كه روي ميزبانها در حال اجرا است ارائه كند.[5]
1-13- گسترش بيشتر تكنولوژي هاي امنيت:
برخي از تكنولوژي ها براي محافظت در برابر DDOS و رفتارهاي مرتبط با آنها توسعه يافته است تكنولوژيهايي نظير IPVG ، امنيت (IPSEC) IP و DNS ايمن Secure PNS)) امكان حفاظت بيشتري را در اختيار قرار مي دهد.[5]
1-14- گردآوري اطلاعات:
تماس با يك ISP از ISP بايد خواست كه براي سايت و پتانسيل تهديد زومبي هاي شبكه روال هاي شگفت آوري را تنظيم نمايد. به كار بردن فيلترهاي بيشتر براي متجاوزين![5]
1-15- راههاي مختلف جهت مسيردهي:
گزينه هاي مسيردهي را كه براي ورود ترافيك قابل دسترسي است تغيير داده شود.
سعي كنيد حمله متوقف شود يا استفاده از ابزارهاي موجود نظير zombie zapper ممكن است بتوان به زومبي ها فرمان داد تا حمله را متوقف نمايد. تغيير آدرس IP مورد هدف، انجام اين كار تاكتيك مناسب براي خيلي سايت ها ؟؟ اگر يك Daemon كه مشغول اجرا روي زومبي ها است يا نام ميزبانها پيكربندي شده باشد نه آدرس IP ها، ممكن است اين تاكتيك بي فايده شود.[5]
1-16- مقايسه قابليت هاي امنيت سرور وب:
هر چند ديوارهاي آتش، نرم افزارهاي ضد ويروس و يك سيستم عامل مطلوب براي طراحي يك سايت ايمن مهم مي باشد اما هيچكدام از اين ها بانداز قابليت هاي امنيت خود سرور وب اهميت ندارد. يك سرور وب شالوده و بنيان يك سايت تجارت الكترونيكي محسوب مي شود كه هر برنامه كاربردي با آن كار مي كند مبلغي كه ميخواهد هزينه كنيد و Piucitform ي كه مي خواهيد سرور وب روي آن اجرا شود. مشخص نماييد آنگاه يه موقعيت مقايسه قابليتهاي امنيت كه توسط سرورهاي مختلف ارائه مي شود، ميرسيد.
اگر يك سرور وب تمامي قابليت هايي را كه به دنبال آن هستيد داراست آنگاه اين مورد مهم تر از عناويني است كه قبلاً شرح داده شد، اگر يك سرور سايت شما را ايمن نگه مي دارد و باعث يك سيستم پايدار است ديگر جاي هيچگونه خاستي نيست حداقل هزينه يك سرور با قيمت از دست دادن اطلاعات بابازسازي يك سايت مختل شده مقايسه مي گردد،درموردبررسي سرورهاي مختلف مي بايست به برخي از خصوصيات توجه داشته باشيد مواردي چون تصديق كنترل استفاده از پروتكل مبادلات الكترونيكي ايمن تنظيم حقوق و مجوزها و استفاده از برنامه هاي كاربردي CGI .[6]
1-16-1- تصديق :
تصديق يك امرحياتي براي امنيت اينترنت و سايت هاي اينترنتي ميباشد و عموماً توسط سيستم عاملي كه سروروب روي آن اجرا ميشود ارائه مي گرددچندروش موجود براي انجام تصديق عبارتند از:
كلمات عبور لايه سوكت هاي ايمني SSL گواهي نامه ها و امضاهاي ديجيتالي كارت هاي هوشمند Cookie ها.
اين تصديق ها عبارتند از:
بي نام
مقدماتي يا متن محض
مقدماتي يا رمزكاري SSL
مطالبه/ پاسخ ويندوز
كاربران بي نام بسيار شبيه به يك شناسه ميهمان عمل مي كند و هر كاربري اجازه دسترسي مي دهد اين روش براي مشاهده كنندگان سايت براي دسترسي به اطلاعات عمومي نظير صفحات وبي كه محصولات موجود براي فروش را نشان مي دهد.[6]
1-16-2- گواهي نامه ها و امضاهاي ديجيتالي:
روش ديگر تصديق گواهي نامه ها و امضاهاي ديجيتالي است اين روش ها براي اثبات فايل ها و پيام ها از طرف كاربر يا سازمان ارسال شده تغيير نكرده است به كار مي رود، در واقع امضاء ديجيتالي يك خلاصه رمز شده از متني كه ارسال مي شود مي باشد.[6]
1-16-3- به كارگيري برنامه هاي كاربردي CGI:
پشتيباني از CGI خصيصه عمومي ديگري از سرورهاي وب ميباشد. CGI رابطي است براي دسترسي به اطلاعات بانك هاي اطلاعاتي كه از طريق سرويس هاي HTTP روي اينترنت به كار مي رود CGI براي ارسال يك درخواست به يك برنامه كاربردي به كار مي رود پس اطلاعات به شكل يك سند HTML به كاربر فرستاده شود، كاربرد CGI داراي برخي اشكالات مي باشد.
پورت ها، سرويس ها و اجزاء بلا استفاده را غير فعال كنيد: اسكريپت ها و فايل هاي غير لازم را پاك كنيد.[6]
فصل دوم:
آشنایی باعملکرد هکرها
2-1- هک چیست؟
هکرها افراد عادی هستند که با داشتن هوش زیاد و تا حدی دانش كامپيوتر ميتوانند در کامپیوتر نفوذ نموده و باعث شود که بخشی از مدیریت کامپیوتر را به دست بگیرند.
هر شبکه اینترنتی و هر سیستم کامپیوتری در درون خود دارای ضعفهایی است که هکرها و نفوذگران با توسل بدان به کامپیوتر دست ميیابند البته ممکن است این نفوذ در داخل شبکه کامپیوتری میزبان یک وب سایت یا وبلاگ باشد. در این صورت هک به وب سایت نفوذ مينماید.
عبارت هکر داراي دو تعریف است. از دیدگاه برنامه نویس، هکر کسی است که میتواند کدي را بنویسد که راه حلی سریع و ساده براي مشکلی بزرگ ارائه دهد. این کد باید کارآمد و موثر باشد. از دیدگاه دیگران، هکر کسی است که امنیت موجود در سیستمهاي اطلاعاتی خودکار یا یک شبکه را بشکند. این نوع از هکرها (که Cracker نیز نامیده میشوند) معمولاً بدنبال اهداف نادرست و خرابکارانه میباشند،ولی ممکن است این کار را بخاطر سود رسانی انجام دهد.ولی به هرحال این افرادوارد سیستمها میشوند.
Novice (مبتدي) فردي است که ميخواهد هکر شود، ولی تواناییهاي فنی لازم را ندارد. معمولا، مبتدي به وبسایتی که توسط هکر ساخته شده میرود و برنامه اي را اجرا میکند که به شبکه یا سیستم کامپیوترحمله میکند.بااینکه حمله مبتدیان به سادگی شناسایی و دفاع میشود، ولی میتواند باعث افشاي اطلاعاتی شود که هکر براي حملات جديدتر به شبکه نیاز دارد.[4]
2-2- هدف هک :
جواب این سوال قطعی نیست از لحاظ جامعه شناسی نفوذگر در تمام ادوار تاریخ وجود داشته است، اما درسیستمهاي شبکه نفوذ ميتواند چند علت اصلی داشته باشد.
2-2-1- اعلام سواد و تسلط بر فن آوری اطلاعات:
این نوع نفوذ کمتر با تخریب و تهدید نفوذگر همراه است فراموش نکنید برای نفوذ در سیستمهاي شبکه، باید فرد دارای سواد پایهای در حد کافی باشد. برخی از افراد برای به رخ کشیدن سواد و توانمندی خود در شبکههاي نفوذ نموده و با به جا گذاشتن یک ردپایی خود برای اثبات نفوذ سعی ميکنند که سواد خود را به همه اعلان کنند.
2-2-2- اعلان ضعف امنیت شبکه کامپیوتری:
این نوع نفوذ هم با تخریب و تهدید کم انجام ميشود. تنها نفوذگر سعی ميکند نقاط ضعف امنیت شبکه را به مدیریت اعلان نماید و در برخی موارد هم به مدیریت اعلام ميشود، که نفوذگر حاضر به همکاری در رفع نقص و تقویت امنیت شبکه است.
2-2-3- انتقام شخصی یا گروهی:
این نوع نفوذ به طور حتم خطرناک و دردسرساز است در اینگونه حملهها نفوذگر سعی ميکند سیستم را تا حد امکان نابود و خسارات جبران ناپذیری را انجام دهد، برخورد سخت با رقبا یکی از این انگیزه نفوذگران با نیت انتقام است در برخی موارد هم برخی از وب سایتها و شبکههاي منافع ملی، گروهی یا فردی افراد را به مخاطره مياندازد و در مقابل نفوذ گر سعی در نابودی مورد اشاره دارد.
2-2-4- بدون دلیل:
حتماً نباید هر کاری دلیل داشته باشد، برخی نیز برای خودنمایی یا سرگرمی و گاهی هم از سر بیکاری دست به نفوذ و تخریب شبکه ميکنند این نوع نفوذ به دلیل اینکه کور و بدون دلیل است ممکن است خطرآفرین باشد، امادر مواردی بیشتر به یک شوخی تمام ميشود.
2-2-5- دستیابی به اموال مجازی افراد یا شرکتها:
این امر ممکن است یکی از قویترین دلایل انجام هک باشد. البته این نوع از نفوذ بیشتر از روش دزدی هویت صورت ميگیرد. فرد نفوذگر سعی ميکنند با دستیابی به شناسه کاربری قربانی، رمز عبور و پسورد وی، مدیریت بخشی از اموال مجازی فرد یا شرکت از قبیل وبلاگ، صندوق پست الکترونیکی، کارت اعتباری، عضویت باشگاه، عضویت وب سایت یا هر مورد که ميتواند وی را به اموال مجازی شخص قربانی نزدیک کند، دست ميزند.
در ایران و در بین هکرهای تازه کار که هدفهایی مانند انتقام، اعلام سواد، اعلان ضعف شبکه، کمتر وجود دارد. هکر سعی ميکند تنها به دست دستیابی به مدیریت یک وبلاگ یا صندوق پست الکترونیکی نفوذ را انجام دهد. این گونه نفوذهای ساده و با بهره گیری از ضعفهای امنیتی کاربران در ایران رایج است.[3]
2-3- پیشینه جنبش نفوذگری وظهور نفوذگران با کلاه های رنگارنگ !
باگسترش فرهنگ استفاده از کامپیوتر وراهیابی آن به ادارات ومنازل، این ابزار ازحالت آکادمیک و تحقیقاتی بدرآمد ومبدل به پاره ای از نیازهای معمول زندگی شد.
ابداع واژه نفوذگر به دهه شصت میلادی دردانشگاه MIT بازمی گردد. در آن زمان «نفوذگر» یا هکر بدین گونه تعبیرمی شد:
«Hacker یا نفوذگر کسی است که از سرکشی کردن به جزئیات سیستم های قابل برنامه ریزی ونفوذ ورسوخ در آن لذت می برد ومصمم به شکست دادن توانایی محاسباتی ماشین درمقابل هوش وذکاوت بشری خویش است. فردی که با سماجت وبه گونه ای لجوجانه شیفته برنامه نویسی است. نفوذگر، بدخواه نیست وصدمه نمی زند.»درآن دوران این افراد نه تنها بدنام ومورد غضب ونفرت نبودند بلکه ازآنها به نیکی و احترام یاد می شد.[1]
دراواخردهه هشتاد جنبش نفوذگری درشبکه به سوی فعالیت های ضدامنیتی ، ضدانسانی و مالیخولیایی گرایش پیدا کرد. درآن زمان در رسانه های خبری از واژه «نفوذگر» یاد می شد، در ذهن مخاطبین ، تصویر یک دزد کامپیوتری یا یک مخرب نابکار تجسم می یافت ؛ برخی از آنها سعی کردند نفوذگر را انسانی مثبت ونخبه بنامند که درجبهه مقابل Cracker قرار می گیرد . بدین ترتیب واژه Cracker نیز معنا یافت:
Cracker موجود بی ارزش وبیماری است که بافراگیری برخی از مهارتهای نفوذگری به کارهای بی ارزشی همانند دزدیدن User ID & Password دیگران ، مزاحمت وعملیات غیرقانونی وضداخلاقی می پردازد وباشکستن حریم امنیت یک سیستم اهداف غیرشرافتمندانه خود را دنبال می کند.
هکرهای واقعی سعی کردند برسرواژه هکر کلاه های رنگی بگذارند!!! اینجا بود که هکرهای رنگی هم به جمع بشریت پیوستند:
گروه هکرها یا نفوذگران کلاه سفید: نفوذگران خوب!
گروه نفوذگران کلاه سیاه: نفوذگران بدومخرب !
گروه نفوذگران کلاه خاکستری: نفوذگران کمی خوب، اندکی مخرب!
گروه نفوذگران کلاه صورتی : نفوذگران لوس، بی مزه وبی خاصیت!
ازبین این کلاه های رنگی ، دورنگ سیاه وسفید تقریبا معنای جا افتاده ومورد وفاق دارد:
2-3-1- هکرهای کلاه سفید:
نفوذگر کلاه سفید، انسان نخبه ای است که نه تنهامضر نیست بلکه باعث سازندگی وپویایی سیستم ها شده وباشکستن حریم امنیتی سیستم (به گونه ای که خرابی به بارنیاید)معایب آن سیستم را درمواجهه با اخلالگران بیمار یا مغرض آشکار می نماید. ازاین رو مورد احترامند ومعمولا دارای مدارج بالای علمی وتجربی هستند!!! اینان نفوذگران اصولگرا هستند وتخطی از مرامنامه زیربرای آنها به قیمت سیاه شدن کلاهشان تمام می شود:
کلاه سفید هرگز به یک سیستم صدمه نمی زند.
کلاه سفید هرگز به شبکه های دولتی یا امنیتی که مشغول انجام وظیفه ملی هستند نفوذ نمی کند.
کلاه سفید هرگز به فایل های یک سیستم دستبرد نمی زند وسعی درانتقال آنها ندارد.
کلاه سفید هرگز اثری از خود درسیستمی که بدان نفوذ کرده باقی نمی گذارد.
کلاه سفید هرگز درمورد دانش ومهارتهای نفوذگری خود به کسی اطلاعات نمی دهد.
کلاه سفید هیچگاه برروی شبکه اینترنت درمورد جزئیات نفوذگری خود اطلاعاتی مبادله نمی کند.
کلاه سفید برای باردوم به سیستمی که یکباررخنه کرده است نفوذ نمی کند.
ممارست ، پشتکار وشکیبایی اصول اساسی عملیات یک نفوذگرکلاه سفیداست.
کلاه سفید باید به اندازه دیگران خلاقیت داشته باشد وحداقل یکبار روشی نو ارائه کند!
بااین مرزبندی های رنگی ، نفوذگران کلاه سیاه نیز همسنگ با Cracker ها شدند.[1]
2-3-2- هکرهای کلاه سیاه:
هکرهای کلاه سیاه به آن دسته از هکرها اطلاق میشود که کارهای مخرب میکنند و سایتها را تخریب کرده یا اطلاعاتی را میدزدند و بنابر قوانین جرایم رایانهای مجرم شناخته میشوند. نام دیگر این گروه Cracker است. کراکرها خرابکارترین نوع هکرها هستند. این گروه به طور کاملا پنهانی دست به عملیات خراب کارانه میزنند. کلاه سیاهها اولین چیزی که به فکرشان میرسد نفوذ به سیستم قربانی است کلاه سیاهها همه ویروس نویسند و با ارسال ویروس نوشته شده خود بر روی سیستم قربانی به آن سیستم نفوذ پیدا میکند در واقع یک جاسوس بر روی سیستم قربانی میفرستند. همیشه هویت اصلی این گروه پنهان است.[8]
2-3-3- هکرهای کلاهخاکستری:
هدف هکرهای کلاه خاکستری استفاده از اطلاعات سایر کامپیوترها به هرمقصودی است ولی صدمهای به کامپیوتر وارد نمیکند. نام دیگر این گروه Whacker میباشد هدف اصلی واکر استفاده از اطلاعات سایر کامپیوترها به مقصود مختلف میباشد. این گروه کدهای ورود به سیستمهای امنیتی را پیدا کرده و به داخل آن نفوذ میکنند اما سرقت و خراب کاری جز کارهای کلاه خاکستری نیست. بلکه اطلاعات را در اختیار عموم مردم قرار میدهند. [8]
2-3-4- هکرهای کلاه صورتی:
نام دیگر این گروه Booter میباشد. هکرهای کلاه صورتی سواد برنامهنویسی ندارند وفقط به منظور جلب توجه دیگران و با نرمافزارهای دیگران دست به هک کردن میزنند. در جامعه هکر ها تعداد این نوع هکر ها زیاد است.
کلاه صورتی ها اغلب جوانان عصبانی و جسوری هستند که از نرم افزارهای دیگران استفاده میکنند و خود سواد برنامه نویسی ندارند.ولی در بعضی مواقع همین هکرهای کم سواد میتوانند خطرهای جدی برای امنیت باشند.این افراد با ایجاد ترافیک در دسترسی پايگاههای وب از طریق اتصالات بدون مکث باعث از کار افتادن پایگاه میشوند. اغلب این افراد نمیدانند چه میکنند!!![8]
2-4- خلاصه اي بر تاريخچه ي هك كردن:
آغاز هك كردن فعاليتي است مربوط به سال 1940 و 1950 كه بر اثر اين كار افرادي سعي در استراق سمع مكالمات پليس و سيستم نظامي حكومت داشتند. اين عمل براي پيدا كردن آگاهي از اتفاقات رخ داده در آن زمان در كشور انجام مي شد. اين عمل براي بدست آوردن طالاعات مهم از بين اطلاعات بي ارزش براي اطلاع از وضع موجود و در مرحلهي بعد سهيم كردن شبكه هاي راديويي و اطلاع رساني آن به كل مردم بود.[4]
هك كردن و تكنولوژي بسيار زود در 60 سال اخير به هم پيوند خوردند.
عنوان هك شدن و هك كردن با عنوان هك كردن كامپيوتر در ابتدا براي تخليه اطلاعاتي كامپيوترهاي MIT برگزيده شده در چند سال بعد اين سيستم با استفاده از تكنولوژي هوش مصنوعي (AI) كار هكرها را پيچيده و سخت كرد.
سال 1960 با راه اندازي آرپانت به عنوان شبكه ي گسترده اولين تشكل مجزاي گروه هك كننده ها شكل گرفت كه پايه ي كار هك كردن را در آمريكا پايه ريزي كردند. در اين هنگام تنها والدين فرصت براي هكرهاي توسط شبكه هاي داده شده تا درجهت سود شبكه كار كنند و بتوانند همكاري مسالمت آميزي داشته باشند.[4]
2-4-1- سيستم هك كردن تلفن:
با بردن اسم «جان دراپر» هم معني خوبي براي هك كردن تلفن خواهيد يافت! او با اطلاع از طول موج سيستم صوتي تلفن كه 2600Hz بود توانست روشي براي استراق سمع پيدا كند.
در سال 1970 «ايستووزنيك» و «استيوجابز» با «دراپر» همكاري كردند و «جعبه ي آبي» را براي استراق سمع تلفن هاي مختلف ساختند.
جعبه ي مذكور توانايي به خاطر سپردن فركانس تمامي مكامات را دارا بود تا در آينده نيز نتواند به آن مكالمات گوش دهد. اين دستگاه توانايي مسيريابي و دنبال آمدن به سمت فركانس مورد نظر را دارا بود.
قسمتي از مقصود سازنده ي ماهر «جعبه ي آبي» براي استراق سمع و قمستي براي استفاده هاي مجاني از تلفن ديگران براي كار خود بود و با اين كار «جان دراپر» در دام قانون افتاد و در سال 1970 به زندان فرستاده شد كه در آنجا مشغول تكميل كار خود است.[5]
2-4-2- سيستم هك كردن كامپيوتر:
اولين روش هك كردن به ايجاداولين ساختار شبكه در سال 1950 بر مي گردد. در هم گير شدن آرپانت در سال 1969 و NSFNet سيستم هاي تحت شبكه زياد شدند. اولين شبكه بين دانشگاههاي «كاليفرنيا» در ايالت لس آنجلس ، «استن فورد» «وسانتا باربارا» و دانشگاني از «اتوا» ايجاد شد.
براي هك كردن اين سيستم هابايدحداقل يك هكردريكي از 4 نقطه اصلي شبكه قرار مي گرفت و چون اين سيستم ها معمولاً در دانشگاه تجمع داشتند اين كار تقريباً سخت بود.
با گسترش شبكه و ايجاد اينترنت سيستم هك كردن نيز پيشرفت كرد به طوري كه افرادي با آموزش تيمي خاص وجمع آوري افراد خبره دركارهك كردن براي انجام اين كار كوشش مي كردند. در اين حال دانشگاههاي چون «استن فورد» با استفاده از سيستم هوش مصنوعي اين روند را مخاطره انداخت.[4]
در اين زمان شركت DEC كه سازنده ي ميني كامپيوتر در آن زمان بود با پيشنهاد خود مبني بر ساخت و توليد سري كامپيوترهاي شخصي براي تهيه دانشگاهها با نرخ پائين نظر دانشگاه «استن فورد»را جلب نمود و براي گسترش سيستم شبكه اقدام نمود.
آرپانت به عنوان يك شبكه از كامپيوترهاي DEC فعاليت خود را آغاز كرد.
در اين هنگام تشكلي به نام BBS براي تجمع و گردآوري اطلاعات هكرهاي حرفه اي بنا شد و بر اساس اين كار هر هك كننده اي بايد براي شناسايي به عنوان هكر در اين كلوپ ثبت نام مي كرد.
تاسال 1981 كه IBM كامپيوترهاي شخصي كوچك متشكل از CPU و سخت افزار و حافظه را طراحي نكرده بود تمامي سيستمها همچنان در انحصار دانشگاهها و سيستم هاي دولتي بودند . با آمدن كامپيوترهاي شخصي IBM به بازار كم كم آرپانت تبديل به اينترنت شد، تعداد اعضاي BBS زياد و جرائم اينترنتي رو به گسترش نهاد.
گروه هكرهاي حرفه اي كم كم از هم جدا شدند و هر كدام تشكيل يك گروه هكر جديد را دادند. فقط در يك فقره، كرم طراحي شده به دست روبرت موريس باعث آلودگي 6 هزار سيستم در كل آمريكا شد.آمراهاكم كم وحشتناك ووحشتناكتر مي شد به صورتيكه 95% شركتها دست كم مورد حمله ي 500 گونه برنامه ي خطرناك و 20 تا 30 درصد نيز به طور كلي از طرف اين حمله ها اطلاعتشان به سرقت رفته است.
بسياري از سيستم هاي شركت هاي بزرگ به تجهيزات مختلف مجهز شدند تا در جلوگيري از هك شدن موفق باشند ولي برنامه هاي هكرها به سيستم هاي بي دفاع كاربران نهايي نيز حمله مي كند.[4]
2-5- سرویس های امنیتی درشبکه ها:
تهدیدهای بالقوه برای امنیت شبکه های کامپیوتری بصورت عمده عبارتنداز:
فاش شدن غیرمجاز اطلاعات درنتیجه استراق سمع داده ها یا پیامهای در حال مبادله روی شبکه .
قطع ارتباط واختلال درشبکه به واسطه یک اقدام خرابکارانه .
تغییرودستکاری غیرمجاز اطلاعات یا یک پیغام ارسال شده.
مفاهیم واصطلاحات زیربعنوان سرویس های امنیتی شبکه عبارتنداز:
الف) محرمانه ماندن اطلاعات
ب) احراز هویت:
قبل ازآنکه محتوای یک پیام اهمیت داشته باشد باید مطمئن شوید که پیام حقیقتا ازشخصی که تصور می کنید رسیده است.
ج) سلامت داده ها :
یعنی دست نخوردگی وعدم تغییرپیام و اطمینان از آنکه داده ها با اطلاعات مخرب مثل یک ویروس کامپیوتری آلوده نشده اند.
د) کنترل دسترسی:
یعنی بتوان دسترسی افرادی غیرمجاز به شبکه را بادقت کنترل کرد.
هـ) دردسترس بودن:
بایدتمام امکانات شبکه بدون دردسر وزحمت در اختیار آنهایی که مجاز به استفاده ازشبکه هستند، باشد.[1]
زمانی که یکی از سرویس های امنیتی پنج گانه فوق نقض شود به سیستم «حمله » شده است. یک شبکه کامپیوتری درمعرض چهارنوع حمله قراردارد:
حمله از وقفه : بدین معنا که حمله کننده باعث شود شبکه مختل شده ومبادله اطلاعات امکان پذیر نباشد.
حمله ازنوع استراق سمع: بدین معنا که حمله کننده به نحوی توانسته اطلاعات درحال تبادل روی شبکه را گوش داده وبهره برداری نماید.
حمله ازنوع دستکاری داده ها : یعنی حمله کننده توانسته به نحوی اطلاعاتی که روی شبکه مبادله می شوند را تغییردهد.
حمله ازنوع افزودن اطلاعات: یعنی حمله کننده اطلاعاتی را که درحال تبادل روی شبکه است تغییرنمی دهد بلکه اطلاعات دیگری به اطلاعات اضافه می کند.[1]
2-6- انگیزه های نفوذگری وحمله به شبکه :
امروزه شبکه اینترنت ازیک مقوله تکنولوژیک خارج شده وبه یک پدیده اجتماعی مبدل گشته است. اجتماع بزرگ کاربران اینترنت که درسطح دنیا پراکنده اند یک فرهنگ جدید را خلق کرده اند.
باتوجه به نوپاشدن شبکه اینترنت که عملا پس از ابداع وفراگیرشدن وب دردهه نود به یک پدیده جهانی مبدل شده است نمی توان انتظارداشت که یک فرهنگ صحیح وغنی برآن حاکم شده باشد.
بهر تقدیر هرگاه تفکر واندیشه یک نفوذگر درراستای انگیزه های نامتعادل وغیرانسانی قراربگیرد، خطری جدی شبکه ها وبه تبع آن انسان ها را تهدید خواهد کرد. این انگیزه ها را می توان درموارد ذیل برشمرد:
انگیزه های رقابتی ناسالم ، انتقام جویی وضربه زدن به رقیب
اهداف سیاسی
اهداف تروریستی وکسب اخبار جهت اعمال خرابکارانه وموذیانه
اهداف دولتی
کسب نامشروع ثروت ازطریق جابجا کردن مستقیم پول واعتبار ازحسابهای بانکی ودزدیدن شماره کارتهای اعتباری
تفریح یا اندازه گیری ضریب توانایی فردی یا کنجکاوی
دزدیدن دانشی که برای تهیه آن بایستی صرف هزینه کرد.
آزار رسانی وکسب شهرت ازطریق مردم آزاری
جاسوسی وکسب اطلاع از وضعیت نظامی وسیاسی یک کشور ویا منطقه
رقابت ناسالم درعرصه تجارت واقتصاد
این گروه نفوذگران کلاه سیاه ، دشمنان خارجی برای شبکه محسوب می شوند، بدین معنا که معمولا ازبیرون شبکه اقدام به نفوذ وحمله می نمایند.[1]
2-7- سطوح مهارت نفوذگران:
نفوذگران کنونی ازلحاظ سطح مهارت ودانش فنی درگروه های مختلفی رده بندی می شوند:
گروه اول ، نفوذگران بی تجربه ، جوان وماجراجویی هستند که اصطلاح کودک بیشتر برازنده آنهاست تا نفوذگری! آنها را در محیط های گپ اینترنتی به وفور می یابید. این گروه بیش ازهمه ادعا دارند ، درمورد کارهای بی ارزش خود داستان می سازند.
گروه دوم ، نفوذگرانی هستند که براساس ذوق وعلاقه شخصی بایک سیستم عامل وبرخی از اصول فنی اینترنت آشنا شده اند ودرسطح معلومات متوسطی هستند.
گروه سوم ، نفوذگران خبره وهوشمندی هستند که کمتر هیاهومی کنند درحالی که پیچیده ترین تکنیک ها وتاکتیک های نفوذ وحمله را ابداع می نمایند.[1]
2-8- شيوههاي هکرها جهت حمله به وب سايتها
2-8-1- SQL Injection:
يک هکر دستورات SQL Queryرا توسط يک برنامه تحت وب، به يک بانک اطلاعاتي مستقر در سرور اصلي وب سايت هدف ميفرستد. اين عمليات به دو روش انجام ميشود: دستورات SQL از طريق صفحات وب وارد ميگردند يا SQL Queries خود را در قالب پارامترهاي مورد نياز وارد ميکنند. اين بدين معناست که هکر توانسته است، دستورات و SQL Queries را در سرور وب سايت اجرا کند. در واقع تزریق کد پایگاه داده، یک نوع اسکریپت نویسی است که با اضافه کردن آن به سایت مورد نظر ميتوان به پوشههاي آن سایت نفوذ پیدا کرد و حتی نام کاربری و پسورد آن سایت را نیز به دست آورد. استفاده از این نوع اسکریپت نویسی، روشی است که اغلب بر روی سایتهایی که با ASP نوشته ميشوند، کارکرد دارد اما قبل از پیدایش زبان برنامه نویسی ASPاغلب هکرها این نوع کد نویسی را بیشتر برای سایتهایی که با HTML نوشته شده بود استفاده ميکردند، چون ضعف در این نوع زبان برنامه نویسی زیاد بوده و هکرها به راحتی ميتوانستند از آنها استفاده کنند. اما بعد از پیدایش ASP که زبان برنامه نویسی قوی بوده و امنیت در آن زیاد شده است کدهایی که بر روی HTML کارکرد داشت نتوانستند بر روی ASP هم جواب بدهد به همین دلیل زبان SQL injection نیز پیشرفت کرد.[3]
2-8-2- Cross-Site Scripting:
در اين روش هکر اطلاعات مخرب را در يک صفحه پويا جاي ميدهد. وب سايتهايي که تنها داراي صفحات ايستا يا Static هستند قابليت کنترل فعاليت کاربر را دارند چرا که صفحات ايستا صفحاتي "فقط خواندني" ميباشند و اجازه هيچ فعل و انفعالي را به کاربر نميدهند. از اين رو هکر فقط امکان مشاهده صفحات را دارد بدون اينکه بتواند خرابي در آنها ايجاد کند.
از آنجائي که صفحات پويا امکان ايجاد تغييرات را براي کاربر فراهم ميکنند، بنابراين يک هکر ميتواند محتوي پرخطري را در وب سايت جاي دهد، بدون آنکه برنامه تحت وب توانائي تشخيص اين اطلاعات از اطلاعات بي ضرر و يا واقعي را داشته باشد.
نکتهايي که در آسيب پذيري CSSها وجود دارد، اين است که يک هکر ميتواند سرور اصلي را مجبور به ارسال صفحه وب با محتواي مخرب براي يک کاربر بيگناه کند. بنابراين هکر ميتواند اطلاعات ثبت شده توسط کاربر را به سرور ديگري ارسال کند.[3]
2-8-3- Directory Traversal Attacks:
اين نوع حمله را /.. (dot dot Slash) نيز مينامند. با استفاده از اين نوع حمله، با دستکاري برنامههاي تحت وب، امکان دسترسي به فايلها و ديگر منابعي که بصورت معمول دسترسي به آنها امکان پذير نميباشد فراهم ميشود. اين نوع از حمله با تغيير پارامترها، برنامه تحت وب را وادار به دسترسي به فايلهاي اصلي ميکند. به عنوان مثال فرض کنيد به جاي مقدار اصلي يک پارامتر، مسير يک فايل خاص وارد شود. قرار دادن /.. در ابتداي پارامتر برنامه را مجبور به دسترسي به فايلهاي Parent ميکند.
با قراردادن يکسري /.. و سپس قراردادن نامهاي متعددي از فايلهاي مختلف در انتهاي پارامتر، فايلهاي مختلفي قابل دسترس خواهد بود.[3]
2-8-4- Parameter Manipulation:
اين نوع حمله، اطلاعات ارسالي بين يک Browser و برنامه تحت وب را دستکاري ميکند. دستکاري پارامترها از طرق ذيل انجام ميگردد:
2-8-5- Cookie manipulation:
جايگاه اصلي نگهداري اطلاعات کاربر که از طريق HTTP وارد گرديده است Cookieها هستند. تماميCookieها در ايستگاه کاري قابل تغيير بوده و سپس بنا به درخواست يک URL، امکان ارسال تماميCookieها به سرور ديگري امکان پذير ميگردد. بنابراين هکر ميتواند بسادگي اطلاعات مستقر در Cookieها را دستکاري کند.[3]
2-8-6- HTML Header manipulation:
HTTP Headerها شامل کنترل اطلاعات ارسالي از يکWeb Client به يک Web Server در حين درخواستهاي HTTP ميباشند، سپس اين اطلاعات از Web Server به Web Client در حين پاسخگويي HTTP ارسال ميگردد. تا زماني که درخواستهاي HTTP Header توسط کاربر ايجاد شده است، يک هکر بسادگي امکان ويرايش آنها را دارد.[3]
2-8-7- HTML Form Field manipulation :
فيلدهاي يک فرم، شامل Check Box، Radio Buttonهاي انتخاب شده، فيلدهاي متني پر شده يا هرگونه عملکردي که توسط کاربر در يک صفحه وب انجام ميگردد راHTML Form Field مينامند. اين اطلاعات پس از تکميل شدن به سرور ارسال ميگردند. به علاوه فيلدهاي پنهاني نيز وجود دارند که از ديد کاربر دور بوده و به همراه ديگر فيلدها به سرور ارسال ميگردند. يک هکر فعال ميتواند فيلدهاي يک فرم را به منظور ارسال هرگونه اطلاعاتي دستکاري کند. يک مثال ساده از اين نوع دستکاري اين است که هکر با يک کليک راست ساده و انتخاب گزينه View Source ميتواند تغييرات لازم را انجام داده، آن را ذخيره کند و مجددا صفحه را در پويشگر اجرا کند.[3]
2-8-8- تغییر آدرس:
فرمهاي HTML که در بالا به آنها اشاره شد، طي فرآيندي ثبت ميگردند که نياز به نمايش اطلاعات معين به کاربر را دارد، قبل از آنکه اين اطلاعات در يک صفحه تازه نمايش داده شود URL اين صفحه حاوي اطلاعات کامل نام فيلدها و مقدار مربوطه آنها ميباشد، که به راحتي قابل دستکاري خواهد بود.[3]
2-8-9- حمله به تعیین هویت:
هکرها با جستجو براي بدست آوردن شناسههاي معتبر به دنبال ورود به سرورها از طريق يک برنامه تحت وب ميباشند. در چنين حملاتي يک بانک اطلاعاتي شامل اطلاعات کاربري، نام کاربر و رمز عبور که جهت به حداکثر رساندن امنيت در شناسايي کاربر ايجاد شده است، به وسيلهاي براي دسترسي هکرها مبدل ميشود.[3]
2-8-10- سوء استفادههاي شناخته شده :
بسياري ازهکرهابصورت گروهي با ورود به فورومها عمليات نفوذ را آمادهسازي ميکنند تا عمليات آتي هک را راحتتر کنند، البته اين روشها و فورومها تنها براي اين گروه از هکرها شناخته شده ميباشد.[3]
2-8-11- شمارش دایرکتوری :
هکرها با آناليز ساختار داخلي فولدرهاي يک وب سايت، به دنبال فولدرهاي پنهان ميباشند. شايان ذکر است که امکان دارد اين فولدرها داراي اطلاعات مربوط به مديريت سايت باشد، که يک هکر به محض شناسايي آنها به سوء استفاده خواهد پرداخت.[3]
2-9- مهندسی اجتماعی:
یکی از سختترین کارها، دفاع در مقابل حملات گفته شده است، که در واقع سوء استفاده از ادب و سادگی دیگران براي دسترسی به منابع ایمن است. براي مثال، فردي ممکن است تماس بگیرد و بگوید که درحال تعمیریکی از سیستمهاي شماست و نیاز به رمز براي ورود به سیستم دارد تا از اتمام تعمیرات مطمئن شود. فرد دیگري ممکن است به طرف دري که با کارت ایمنی باز ميشود دویده و از شما بخواهد تا در را باز نگهدارید تا او نیز وارد شود.
روشهاي زیادي براي مهندسی اجتماعی وجود دارد که توسط بهترین برنامههاي امنیتی نیز قابل پیش بینی نیستند.یکی از بهترین راه حلها براي جایگزینی مهندسی اجتماعی، آموزش کاربران است. آموزش به کاربران شما این امکان را ميدهد تا بدانند کدام اطلاعات را هرگز نباید در اختیار فرد دیگري قرار دهند، و عملکردهایی را به آنها نشان ميدهد تا اطلاعات حساس را بهتر مدیریت کنند.[3]
2-10- نقاط دخول:
نقاط دخول به قسمتهایی اطلاق ميشود که نقطه دسترسی براي اطلاعات شرکت ميباشند. برخی از این نقاط معین است، ولی برخی نه. براي مثال، ممکن است لازم بدانید که براي محافظت شبکه داخلی در برابر هکرها باید از یک فایروال استفاده کنید، ولی اگر هکري کاري موقت در شرکت شما داشته باشد، فایروال دیگري کمک زیادي نخواهد کرد. هنگام مشخص کردن نقاط دخول، باید تهدیدات درونی را نیز مانند تهدیدات بیرونی در نظر داشته باشید. برخی از نقاط دسترسی درونی و بیرونی بشرح زیر هستند:
نقاط دسترسی درونی:
سیستمهایی که در اتاقهاي ناامن نگهداري میشوند.
سیستمهایی که امنیت محلی روي آنها پیکربندي نشده است.
نقاط دسترسی بیرونی:
اجزاي شبکه که شرکت را به اینترنت متصل میکنند.
برنامههایی که براي ارتباط از طریق اینترنت بکار میروند.
پروتکلهاي ارتباطی.[4]
2-11- زیر ساخت شبکه:
زیر ساخت شبکه به تمام سیم کشیها، دستگاههاي شبکه و سرویسهاي شبکه اي اطلاق میشود که اتصال بین کامپیوترهاي شبکه را فراهم میآورند. زیر ساخت شبکه روشی براي ارتباط به اینترنت را نیز ارائه میکند که به افراد روي اینترنت امکان اتصال به شبکه را میدهد و به افرادي که از راه دور کار میکنند، روشهایی براي اتصال به شبکه شما ارائه میکند.
مثالهایی از روشهایی را که نفوذگر ممکن است از طریق آنها به زیر ساخت شبکه شما دسترسی پیدا کند، بشرح زیر میباشد:
نفوذگر بیرونی میتواند ارتباط اینترنت را از طریق حملاتی مانند کاربر مجاز DoS یا استفاده از نام کاربري و رمز براي ورود به سیستم مورد هدف قرار دهد.
نفوذگر درونی میتواند به یک درگاه باز شبکه متصل شده و به سروري دسترسی پیدا کند که منابع مشترك دارد و نیازي به رمز ورود ندارد.[6]
2-12- برنامههاي مورد استفاده در اینترنت:
تقریبا هر کسی که کامپیوتر دارد، براي بازدید از وب سایتها، چک کردن ایمیلها و ارسال پیغامهاي فوري به دوستان، به اینترنت متصل میشود. امروزه نیز چک کردن اطلاعات کارت اعتباري و حسابهاي بانکی از طریق اینترنت رواج مییابد. هر یک از این کارها با استفاده از برنامه اي انجام میشود که روي کامپیوتر شما اجرا میشود و به شما این امکان را میدهد تا با دیگر کامپیوترهاي روي اینترنت ارتباط برقرار کنید. این قابلیت اضافی، خطرهایی را نیز در بردارد.
برخی از روشهایی که مهاجم از آنها استفاده میکند، بهره برداری کردن برنامهها به علل زیر است:
مهاجم بیرونی ممکن است ویروس یا کرمی را درون یک نامه ایمیل قرار دهد و آن را براي کاربري در شبکه داخلی ارسال کند. وقتی باز شد، ویروس ممکن است سیستم را آلوده کرده و به مهاجم امکان دهد تا سیستمی را که ایمیل روي آن باز شده، کنترل کند.
مهاجم درونی ممکن است از برنامههاي سیستم عامل براي اتصال به سیستمهاي دیگر روي شبکه داخلی که نیاز به نام کاربري و رمز ندارند، استفاده کند. همچنین ممکن است از برنامههایی مانند کاوشگرهاي وب براي دسترسی به اطلاعاتی استفاده کنند که امنیت ضعیفی دارند.[6]
2-13- پوشش دهی:
قبل از سرگرمی حقیقی هکرها که قرار است شروع کنند، سه مرحله ضروری باید اجرا گردد. این قسمت اولین قدم – پوشش دهی – هنر زیبای جمع آوری اطلاعات هدف را بحث خواهد کرد. برای مثال، هنگامیکه دزدان و یا سارقان قصد دستبرد به بانک را دارند، آن ها نباید فقط به آنجا(آن محل) بروند و شروع به در خواست پول کنند(به هیچ طریقی این روش هوشمندانه نیست و افراد باهوش این کار را نمی کنند). در عوض(بجای آن)، براستی آن ها زحمت زیادی در جمع آوری اطلاعات درباره ی بانک – گروه ماشین زرهی و تسلیم به آن ها، دوربین های ویدیوئی، و تعداد خدماتیان، خروجی های فرار و گریز، و هر چیزی دیگری که در یک رویداد ناگوار موفقیت آمیز کمک خواهد کرد می کشند. تجهیزات مشابه برای موفقیت مهاجمان بکار گرفته می شود. آن ها باید به اطلاعات صحیح و موثقی برای اجرای مبادرت کردن به تمرکز و عمل کردن دست یابند(موردی است که به آسانی حاصل نمی گردد). بدین ترتیب، مهاجمان اطلاعات خیلی زیادی که درباره ی همه ی جنبه های یک وضع امنیت سازمانی امکان دارد جمع خواهند کرد. هکرها با یک پوشش دهی واحد و یا پروفیل اینترنتشان، دستیابی از راه دور، و حضور اینترانت / اکسترانت به کار خود پایان می دهند.
با ردیابی یک روش شناختی پیکره بندی شده، مهاجمان از روی یک اسلوب معین می توانند اطلاعات را از انبوهی از منابع جمع آوری نمایند تا این پوشش دهی بحرانی را در یک سازمان گرد آوری کنند. [9]
2-13-1- پوشش دهی چیست؟
پوشش دهی سیستمی یک سازمان، به مهاجمان اجازه می دهد تا یک پروفایل کاملی از وضع امنیت یک سازمان ایجاد کنند.با استفاده ازترکیب ابزارهاوروش ها، مهاجمان می توانند یک کمیت نا شناخته ای در نظر بگیرند(کمپانی ارتباط اینترنتی Widget) و آنرا به یک رنج خاصی از قلمرو نام ها، بلوک های شبکه، و آدرس های شخصی IP سیستم هایی که مستقیماً به اینترنت متصل شده اند، کاهش دهد.
هنگامیکه بسیاری از انواع روش های پوشش دهی وجود دارد، هدف اولیه آن ها در کشف اطلاعات مرتبط با این تکنولوژی ها می باشد: اینترنت – اینترانت دسترسی از راه دور – و شبکه ارتباطی داخلی / خارجی. جدول 1-1 این تکنولوژی ها را نشان می دهد و اطلاعات بحرانی یک مهاجم سعی می شود که شناخته گردد. [9]
جدول 2-1: تکنولوژی ها و اطلاعات بحرانی مهاجمان که می تواند شناسایی گردد.
2-13-2- چرا پوشش دهی ضروری است؟
پوشش دهی بصورت سیستمی و با قاعده و از روی اسلوب معین ضروری است تا تضمین کند که همه ی بخش های اطلاعاتی مرتبط با تکنولوژی های مذبور و فوق الذکر شناسایی شده اند. بدون تکنولوژی صوتی برای اجرای این نوع از شناسایی و اکتشاف، شما احتمالاً بخش های کلیدی از اطلاعات و داده های مرتبط با تکنولوژی خاص و یا سازمانی را از دست می دهید. پوشش دهی اغلب وظیفه و کار خیلی پر زحمتی در سعی کردن و کوشش برای تعیین وضع ایمنی و حفاظتی یک نهاد و یا موسسه است.
به هر حال آن یکی از اهم های موارد ذکر شده مي باشد. فرآیند پوشش دهی باید به دقت و به درستی و در یک حالت کنترل شده اجرا گردد. [9]
2-13-3- پوشش دهی اینترنت:
از آنجایی که بسیاری از پوشش دهی، مشابه تکنولوژی های بیان شده هستند(اینترنت و اینترانت)، این قسمت بر روی پوشش دهی ارتباط(ارتباطات) اینترنتی یک سازمان تمرکز کرده است.
تکنولوژی: اینترنت
هویت ها (شناسه ها):
قلمرو اسامی
بلوک های شبکه
آدرس IP های خاص سیستم های قابل حصول با اینترنت
سرویس های UDP و TCP اجرا شده در هر سیستم شناسایی شده
معماری سیستم(برای مثال، SPARC VS.X86)
مکانیزهای کنترل در دسترس و لیست های کنترل در دسترس مرتبط(ACLS)
سیستم های آشکار ساز نفوذ(حریم گذری)(IDSes)
شمارش سیستم(کاربر – اسامی گروه، بندهای سیستم، جداول روتین، اطلاعات SNMP).
تکنولوژی: اینترانت
هویت(شناسه ها):
پروتکل های کاربردی شبکه(برای مثال، IP، IPX، Dec NET، و...)
اسامی قلمرو اینترنت
بلوک های شبکه
آدرس های IP خاص سیستم های قابل حصول با اینترانت
سرویس های UDP و TCP اجرا شده در هر سیستم شناسایی شده
معماری سیستم(برای مثال SPARC VS.X86)
مکانیزهای کنترل در دسترس و لیست های کنترل در دسترس مرتبط(ACLS)
سیستم های آشکار ساز حریم(نفوذ)
شمارش سیستم(کاربر – اسامی گروه، بندهای سیستم، جداول روتین، اطلاعات SNMP).
تکنولوژی: از راه دور(Remote)
هویت ها(شناسه ها): شماره های تلفن آنالوگ / دیجتال
تکنولوژی:Access
هویت ها(شناسه ها):
نوع سیستم Remote
مکانیزم های تعیین اعتبار
تکنولوژی: اکسترانت(Extranet)
هویت ها(شناسه ها):
ارتباط مبدأ و مقصد
نوع ارتباط
مکانیزم کنترل در دسترس. [9]
فصل سوم :
شیوه های هکرها برای نفوذ به شبکه
3-1- روشهای معمول حمله به کامپیوترها :
قصد داریم بطور خلاصه به معمولترین روشهایی که مورد استفاده خرابکاران برای ورود به کامپیوتر یا از کارانداختن آن قرارمیگیرد، اشاره کنیم.
3-1-1- برنامههای اسب تروا :
«اسب تروا» یک برنامه آلوده به کدهای اجرایی است که غالبا ظاهری فریبنده یا کاملا معمولی دارند. این برنامه ها پس از آنکه بدست خود کاربر برروی ماشین اجرا شوند همانند یک سرویس دهنده، کنترل وهدایت آن ماشین را دراختیار نفوذگر قرارمی دهند.
کدهای مخرب اسب تروا درقالب یک «برنامه سوکت » یا «برنامه تحت شبکه» به یک برنامه مفید می چسبند یا آنکه کلا برنامه ای هستند که یک کار ظاهرا مفید انجام می دهند وکنترل سیستم را در اختیار یک بدخواه قرارمی دهند.
امروز اکثر اسبهای تروا پس از اجرا برروی ماشین، پنهان شده وخود را به گونه ای نصب می کنند که پس ازهربار ورودکاربر به سیستم فعال شوند. آنها هیچ اختلالی که باعث شود کاربر ازوجود آنها مطلع گردد، انجام نمی دهند بلکه مخفی می مانند تا هرگاه نفوذگر اراده کرد از راه دور کنترل آن ماشین را برعهده بگیرد واهداف خود را دنبال کند.
برنامههای اسب تروا روشی معمول برای گول زدن شما هستند (گاهی مهندسی اجتماعی نیز گفته میشود) پیکربندی سیستم شما را تغییر میدهند، یا کامپیوترتان را با یک ویروس آلوده میکنند.
روی کامپیوترهای ویندوزی، معمولا سه ابزار توسط مزاحمین برای دسترسی از راه دور به کامپیوترتان استفاده میشود. BackOrifice ، Netbus و SubSeven. این برنامههای درپشتی یا مدیریت از راهدور وقتی نصب میشوند، به افراد دیگر اجازه دسترسی و کنترل کامپیوترتان را میدهند. به شما توصیه میکنیم که شکافهای امنیتی را مطالعه کنید. [2]
3-1-2- درهای پشتی:
«درپشتی» ابزاری نرم افزاری است که به نفوذگر اجازه می دهد تابه یک سیستم وارد شود بدون آنکه به تشریفات معمول وسختگیرانه ای مثل اخذ کلمه عبور واحراز هویت نیاز باشد! اگر ورود به سیستم را درب جلویی سیستم درنظربگیریم برای ورود از چنین دری باید کاربر احراز هویت شود وسپس با تعیین سطح مجوزی که ازطرف سیستم براوتحمیل می شود، ازسیستم استفاده نماید. «درپشتی» ابزاری است که این مراحل را از پیش پای نفوذگر برمی دارد و بدون نیاز به هیچگونه احراز هویت ، اجازه ورود وبهره گیری ازسیستم را به او می دهد.[2]
3-1-3- اسبهای تروا درسطح برنامه های کاربردی:
برنامه های مستقلی هستند که همانند یک برنامه معمولی روی سیستم اجرا می شوند ویک «درپشتی یا رخته» درسیستم برای ورود نفوذگر ایجاد می کنند.
هرگاه کاربرفریب خورده وفقط یک بار چنین برنامه ای را روی ماشینش اجرا کند، اسب تروا دراولین اقدام سریعا پیکربندی سیستم عامل را تغییرمی دهد تاازآن به بعدهرگاه کاربربه سیستم وارد شود، این برنامه هم بطورخودکار اجراشود. اسبهای تروا هیچگونه علائم خروجی ویا پنجره خاصی ندارند وبطور معمول به صورت یک پروسه پنهان اجرامی شوند.
اکثراسبهای تروا برای محیط های مبتنی بر سیستم عامل ویندوز نوشته شده اند. مهمترین دلیل آن این است که میلیون ها نفردردنیا ازسیستم عامل ویندوز بهره می گیرند واکثرکاربران آن نیز افراد معمولی هستند وبراحتی طعمه بدخواهان ونفوذگران می شوند.
یک دلیل دیگر می تواند آن باشد که کدهای منبع ویندز دردسترس نیست ولذا نوشتن اسبهای تروا درسطح مولفه ها یاهسته سیستم کارساده ای نیست وهمچنین احتمال موفقیت وتکثیرکمتری دارد. لذا اغلب نفوذگران برنوشتن اسبهای تروا بصورت یک برنامه کاربردی متمرکز شده اند.
انواع بسیارزیاد ومتنوعی از این اسبهای تروا توسط Joa Kim Von Bro Aun جمع آوری ودرآدرس http://www.simovits.com/nyheter9902.html فهرست شده ودردسترس عموم قرارگرفته است . دراین فهرست شماره پورتهای پیش فرضی که این اسبهای تروا به آنها گوش می دهند ، مشخص شده است.
مهمترین اسبهای تروا که به ترتیب درجه شهرت و میزان آلودگی کاربران اینترنت با آنها عبارتند از:
Sub seven (sub7): یک برنامه اسب تروای بینهایت رایج ومعروف http://subseven.slak.org/
Back Orifice2000 (Bo2K) : http://www.bo2k.com/
Hack – a – tack : در آدرس http://www.crokket.de/hat board/cgi-bio/pinboard.pl
VNC (Virtual network computer) : یک ابزار قابل اجرا درمحیط های ویندوز ویونیکس که درابتدا با اهداف مدیریت ازراه دور نوشته شد ولیکن سوء استفاده از آن برای حمله به کاربران شبکه بیش تر رایج شده است!http://www.uk.research.att.com/vnc. [1]
3-1-4- اسکریپتهای Cross-Site :
یک برنامه نویس وب با افکار بدخواهانه ممکن است اسکریپتی به آنچه که به یک وب سایت فرستاده می شود، مانند یک URL ، یک عنصر در شکلی خاص، یا درخواست از یک پایگاه داده، بچسباند. بعدا، وقتی وب سایت به شما پاسخ می دهد، اسکریپت زیان رسان به مرورگر شما منتقل می شود.
شما می توانید مرورگر وب تان را توسط روشهای زیر در اختیار اسکریپتهای زیان رسان قرار دهید:
تعقیب لینک ها در صفحات وب، ایمیلها یا پیام های گروه های خبری بدون دانستن به آنچه لینک داده شده است.
استفاده از فرم های محاوره ای روی یک سایت غیرقابل اطمینان
دیدن گروه های بحث آنلاین، مجمع ها یا دیگر صفحاتی که بصورت پویا تولید می شونددرجایی که کاربران می توانندمتنهای شامل تگ های HTML ارسال کنند. [5]
3-1-5- ایمیلهای جعلی :
این حالت زمانی اتفاق می افتد که یک ایمیل به ظاهر متعلق به منبعی می باشد درحالیکه در حقیقت از منبعی دیگر ارسال شده است. اغلب برای گول زدن کاربر به منظوراین که اطلاعات حساس (مانند کلمات عبور) را افشاء کند بکار می رود.
ایمیل جعل شده می تواندگستره ای از شوخی های بی ضرر تا اقدامات مربوط به مهندسی اجتماعی داشته باشد. مثالهایی از مورد دوم اینها هستند:
ایمیل ادعا می کند که از مدیر یک سیستم است و از کاربران تقاضای تغییر کلمات عبورشان را به یک رشته مشخص دارد و آنها را در صورت عدم تابعیت به تعلیق اکانتهایشان تهدید می کند.
ایمیل ادعا می کند از یک شخص با اختیارات لازم است و از کاربران تقاضا می کند که یک کپی از فایل کلمات عبور یا سایر اطلاعات حساس را برایش ارسال کنند.
توجه کنیدوقتی سرویس دهندگان گهگاهی تقاضامی کنند که کلمه عبورتان را تغییر دهید، معمولا مشخص نمی کنندکه به چه کلمه ای تغییر کند.همچنین، بیشترسرویس دهندگان قانونی از شماهرگزتقاضای ارسال کلمات عبورتان را ازطریق ایمیل نمی کنند.اگرشک داریدکه یک ایمیل جعلی از شخصی با تمایلات بدخواهانه دریافت کردهاید، باید با پرسنل پشتیبانی سرویس دهنده خود سریعا تماس بگیرید.
ویروس هاوسایرکدهای آسیب رسان اغلب بعنوان پیوست ایمیلها گسترش می یابند. قبل از بازکردن هر پیوستی، از شناخته شده بودن منبع آن اطمینان حاصل کنید. اینکه ایمیل از آدرسی باشد که شما می شناسید، کافی نیست. ویروس ملیسا دقیقا به این علت گسترش یافت که آدرس فرستنده آن آشنا بود. همچنین، کدهای آسیب رسان ممکن است در برنامه های سرگرم کننده یا فریبنده گسترش پیدا کنند.
هرگز برنامه ای را اجرا نکنید، مگر اینکه توسط شخص یا شرکتی نوشته شده باشد که به آن اعتماد دارید. بعلاوه، برنامه هایی را که از منابع ناشناخته دریافت می کنید، صرفا بخاطر اینکه سرگرم کننده هستند، برای دوستان یا همکاران خود ارسال نکنید. [5]
3-1-6- پسوندهای مخفی فایل :
سیستم عاملهای ویندوز انتخابی را در اختیار شما قرار می دهند که پسوند فایلهایی که نوع آنها شناخته شده است را پنهان می کند. این انتخاب بصورت پیش فرض فعال است، اما ممکن است یک کاربر این قابلیت را بمنظور به نمایش درآمدن پسوند تمام فایلها توسط ویندوزغیرفعال کند. ویروسهای داخل ایمیل از پنهان ماندن پسوند فایلهای شناخته شده بهره برداری می کنند. اولین حمله عمده که از این قابلیت بهره گرفت کرم VBS/LoveLetter بود .
فایلهای پیوسته به ایمیلها که توسط این ویروسها فرستاده می شوند، ممکن است بی ضرر بنظر برسند، فایلهای متنی (.txt)، فایلهای تصویری (.mpg) یا (.avi) یا دیگر انواع فایل در حالیکه در حقیقت این فایل یک اسکریپت یا فایل اجرایی آسیب رسان است برای مثال .vbs یا .exe
برنامه های چت اینترنتی،مانندبرنامه های پیام رسانی سریع وشبکه های IRC، مکانیسمی را فراهم می کنند تا اطلاعات بصورت دوطرفه بین کامپیوترهای متصل به اینترنت منتقل شود. برنامه های چت برای گروههایی از افراد، امکان مکالمه، تبادل URL و در بسیاری موارد انتقال انواع فایلها را فراهم می کنند.
چون بسیاری از برنامه های چت اجازه تبادل کدهای قابل اجرا را می دهند، خطراتی مشابه برنامه های انتقال ایمیل را ایجاد می کنند. مانند برنامه های ایمیل، باید دقت کافی برای محدودکردن توانایی برنامه های چت برای اجرای فایلهای دانلود شده، بکار گرفته شود. مثل همیشه، باید مواظب تبادل فایل با طرفهای ناشناس باشید. [5]
3-1-7- شنود بسته های اطلاعات (استراق سمع):
یک برنامه شنود بسته های اطلاعاتی، برنامه ای است که دیتا را از اطلاعاتی که در حال انتقال درروی شبکه هستند،در اختیار می گیرد. این دیتا ممکن است شامل نام کاربران، کلمات عبور و هر اطلاعات اختصاصی دیگری باشد که روی شبکه و بدون اینکه رمز شده باشند، حرکت می کنند. با شاید صدها یا هزاران کلمات عبور گرفته شده توسط این برنامه، مزاحمین می توانند حملات گسترده ای را روی سیستمها پیاده کنند. نصب چنین برنامه ای لزوما به سطح دسترسی مدیر احتیاج ندارد.
نسبت به کاربران DSL و خطوط تلفن سنتی، کاربران مودمهای کابلی در معرض خطر بیشتری برای شنود قرار دارند، زیرا که تمام کاربران مودمهای کابلی همسایه بخشی از یک LAN هستند. یک برنامه شنود نصب شده روی کامپیوتر هر کاربر مودم کابلی ممکن است بتواند دیتا ارسال شده توسط هر مودم کابلی دیگر را در همان همسایگی دریافت کند.
تهدیدهای جدیدی که هویت و اطلاعات کاربر را هدف قرار داده اند،رویکردهای جدید امنیتی را طلب می کند.
امروزه، حملات phishing ساده تر و کم خطرتر از تهدیدهای آنلاینی که در حال تجربه شدن هستند، به نظر می رسند. حملات phishing به آسانی شناخته می شوند و می توان به سرعت آنها را از کار انداخت. جرائم سازمان یافته از این حد گذشته و پیچیدگی آنها به طرز چشم گیری افزایش یافته است.امروزه،کاربران با اشکال موذیانه تری از حمله مواجه می شوند و کشف و مقابله علیه آنها بسیار مشکل تر است. [5]
3-1-7-1- ابزارDsniff:
این ابزار توسط گروه Dug Song نوشته شده ودربرگیرنده ابزارها وتکنیک های بسیار منعطف ومتنوعی برای استراق سمع وربودن فریم ها ازروی شبکه می باشد. Dsniff برروی لینوکس ، Open BSD وسولاریس قابل اجراست و تمرکز اصلی آن برروی ربودن اطلاعات از روی کانال انتقال شبکه LAN وتحیلی بسته ها دسته بندی واستخراج اطلاعات حساس از آنهاست.[5]
3-1-8- حملات pharmingچیست؟
این گونه جدید حمله بعنوان pharming شناخته می شود.Pharming بجای اینکه کاربر را گول بزند تا به یک ایمیل تقلبی پاسخ دهد تا او را به یک وب سایت جعلی هدایت کند، برای فریب دادن کاربر برای تسلیم هویت و اطلاعات حساسش، از روش های زیرکانه تری استفاده می کند. این حملات از اسب های تروا (تروجان) برای نصب برنامه های کلیدخوان و برنامه های هدایت کننده استفاده می کنند تا به یک نفوذگر اجازه دهند کلمات عبور و شماره کارت های اعتباری را بدست آورد، بدون اینکه کاربر مجبور به انجام کاری غیرعادی باشد.
در اینجا دو مثال از نحوه این حمله آورده شده است
1- کاربر یک ایمیل ظاهراً صحیح را باز می کند که او را تشویق می کند تا فایل الحاقی به ایمیل را باز کند. این فایل الحاقی بصورت مخفیانه یک کلیدخوان (برنامه ای است که کلیدهایی را که توسط کاربر زده می شود، ثبت می کند) نصب می کند. هنگامی که کاربربه بانک آنلاین خودسر می زند، کلیدخوان این را تشخیص می دهد و ورودی های صفحه کلید کاربر را هنگامی که وی اسم و کلمه عبور را تایپ می کند، ثبت می کند. سپس این اطلاعات برای نفوذگر ارسال می شود تا برای دسترسی به حساب کاربر استفاده شود.
2- یک کاربر ممکن است با دانلود کردن یک فایل یا مشاهده یک وب سایت که حاوی ActiveX control است، سهواً یک هدایت کننده را روی سیستم خود نصب کند. این کار باعث می شود که فایل های موجود در سیستم دچار تغییراتی شود و هنگامی که کاربر به بانک آنلاین خود سر می زند، به وب سایت نفوذگر هدایت شود. این عمل می تواند با مسموم کردن سرور DNS انجام گیرد که برای آدرس بانک آنلاین کاربر، IP وب سایت نفوذگر را می فرستد. حملات پیچیده تر می توانند ارتباط را با بانک کاربر برقرار کنند و هنگامی که پروسه در حال انجام است، ترافیک عبوری بین کاربر و بانک (شامل کلمات عبور و اطلاعات شخصی) را مشاهده کنند. در اصل نفوذگر خود را بین کاربران و بانک قرار می دهد.
از نظر تاریخی، رویکرد امنیتی که برای این نوع از حملات بکار گرفته شده است، مشابه مفهوم گارد مرزی بوده است. ورود موارد زیان رسان را به کامپیوتر متوقف کنید و جلوی کاربر را از رفتن به مکان های بد بگیرید. ابزارهایی مانند آنتی ویروس، ضدجاسوس، فایروال ها و تشخیص دهندگان نفوذ، همگی چنین رویکردی دارند. به هرحال، همچنانکه حملات به رشد خود ادامه می دهند و پیچیده تر می شوند، نمی توان از احتمال نصب شدن موفقیت آمیز یک کلیدخوان یا هدایت کننده علیرغم این گاردهای مرزی، غافل ماند. [5]
برای سروکار داشتن با این احتمال، رویکرد متفاوت دیگری مورد نیاز است. علاوه بر ابزارهایی که ذکر آنها رفت، نیاز است که هویت و اطلاعات کاربران توسط محافظ شخصی مراقبت شود. یعنی، نیاز است که هویت و اطلاعات شخص بدون در نظر گرفتن نوع حمله و جایی که اطلاعات کاربر به آنجا می رود، همواره امن باقی بماند. این نوع امنیت قابلیت های محافظ شخصی را برای هویت کاربر ایجاد می کند و اهمیتی ندارد که اطلاعات کاربر به کجا فرستاده می شود و کلیدخوان نصب شده است و یا اینکه نفوذگر می تواند ترافیک اینترنت را نظارت کند. [5]
دو قابلیت امنیتی وجود دارد که می تواند توانایی این محافظ شخصی را پیاده کند.
اولی تصدیق هویت قوی است. امروزه، کاربران عموماً برای محافظت از هویتشان به یک کلمه عبوراطمینان می کنند،اما احتمال زیادی وجود دارد که کلمه عبور توسط کسی که نظاره گر login است،دزدیده شود.داشتن یک عامل اضافی برای تصدیق هویت،یعنی چیزی که کاربر باید بصورت فیزیکی داشته باشدعلاوه برآنچه که می داند،می تواندیک هویت آنلاین رادر برابر حمله محافظت کند.این کارقابل مقایسه باچگونگی تأیید هویت کاربران در ماشین های خودپرداز بانک است.کاربران هم کارت بانکی دارندوهم PIN را می دانند. با تصدیق هویت قوی، اگر کلیدخوان هم نصب شده باشد،می تواندتنهاکلمه عبوررا بگیرد ونه عامل فیزیکی استفاده شده در پروسه تصدیق هویت را. کلمه عبور به تنهایی و بدون فاکتور فیزیکی نمی تواند توسط نفوذگر برای دسترسی به حساب کاربر مورد استفاده قرار گیرد. [6]
توانایی مهم دوم رمزنگاری مداوم است.امروزه،SSL (Secure Socket Layer) از اطلاعات ارسال شده توسط کاربران بگونه ای محافظت می کند که انگار تنها به سرور هدف ارسال می شوند.برای مثال،اگریک کاربر کلمه عبور خود را وارد کند، به راحتی تا زمان رسیدن به و ب سرور در طرف دیگر، قابل مشاهده است. در مورد یک حمله هدایت کننده، ارتباط امن در سایت نفوذگر پایان می پذیرد و قبل از اینکه به سازمان آنلاین قانونی ارسال شود، دیتای کاربر در معرض افشاء قرار می گیرد. رمزنگاری مستمر می تواند از دیتا ،بدون در نظر گرفتن امنیت ارتباط،محافظت کند.ورودی های کاربر قبل از ترک کامپیوتر کاربر رمز می شوند و می توانند تنها توسط سازمان قانونی که به سرورهای طرف دیگر دسترسی دارد، رمزگشایی شوند. حتی اگر دیتا به این سرور نرسد، رمزشده باقی خواهد ماند و برای یک نفوذگر قابل استفاده نیست.
این دو قابلیت به همراه هم، می توانند نقش محافظ شخصی را برای محافظت از هویت و اطلاعات کاربر در دنیای خصمانه! اینترنت ایفاء کنند. [6]
3-1-9- حمله به سیستم عامل:
تاکنون دهها نوع سیستم عامل وهزاران برنامه کاربردی مختلف عرضه شده است. تاریخ نشان می دهد که تمام سیستم های عامل با هر قابلیت و عظمتی ، سرشار از نقاط آسیب پذیر بوده اند. تمام نسخه های سیستم عامل Windows ازجدیدترین آن XP تانسخه های قدیمی پرازنقطه ضعف وشکاف های امنیتی هستند. اولین موردبرای حمله به یک سیستم ، هدف گرفتن پشته سیستم عامل است:
3-1-10- درهم شکستن برنامه کاربردی یا سیستم عامل ازطریق سرریزکردن پشته :
سرریز شدن پشته می تواند منجربه مختل شدن یک برنامه کاربردی یا سیستم عامل شود. امروزه مکانیزم سرریزشدن پشته ، یکی از روش های مهلک ورایج حمله علیه ماشین های آسیب پذیرمحسوب می شود.
هربرنامه یا پروسه که دربخشی از کدخودازپشته یا بافر استفاده کرده باشد ممکن است دراثر سرریز شدن ، به ناگاه مختل شود. نفوذگر پروسه هایی راکه به نحوی ازپشته یا بافر استفاده کرده اند ولی برای سرریز شدن آن تمهیدی نیندیشیده اند ، کشف می کند و آنها را هدف قرار می دهد.
گونه بسیار پیچیده وخطرناکی از حمله به پشته آن است که نفوذگر بتواند پشته را به نحوی سرریز کند که پس از سرریزشدن، کنترل اجرای آن برنامه یا پروسه را دراختیار بگیرد.[1]
3-1-10-1-پشته چیست؟
پشته یک نوع ساختمان داده است که آیتم های داده درآن ذخیره می شود. دسترسی به آیتم ها، مبتنی بر روش LIFO است یعنی درهرلحظه می توان به آخرین عنصرذخیره شده در پشته دسترسی داشت . برای دسترسی به عناصر زیرین یک پشته، ابتدا باید عناصر روی آن ، ازپشته خارج شوند.
اجزای سیستم عامل وهمچنین برنامه های کاربردی ازپشته ، برای مقاصدی همانند فراخوانی توابع استفاده می کنند. درهنگامی که یک تابع فراخوانی می شود اطلاعات بسیارحیاتی نظیر«آدرس برگشت تابع» ، «آرگومان های ارسالی به تابع » و « متغیرهای محلی تابع» درفضای پشته ذخیره می شوند. (به عمل قراردادن اطلاعات دربالای پشته عمل «push» گفته می شود) هنگام بازگشت ازیک تابع به برنامه اصلی ، آدرس محل بازگشت از پشته استخراج شده و نهایتا پشته به حالت اول خود برگشته وخالی می شود. ( به عمل برداشتن اطلاعات ازپشته اصطلاحا «pop» گفته می شود.)
«مکانیزم حمله به پشته» و « دلیل درهم شکسته شدن» آن به صورت زیربیان می شود:
نفوذگر به پروسه درحال اجرا داده هایی راارسال می کند که اندازه آن بزرگ تر از فضای بافر اختصاص داده شده است. این داده هامی توانند کدهای اجرایی ماشین باشند. به دلیل کمبود فضای بافر، این داده ها حریم پشته را درهم شکسته وحتی اشاره گر بازگشت ازتابع را نیز بازنویسی می کنند. پس از اتمام تابع، کنترل اجرا به محلی برمی گردد که اشاره گربازگشت به آنجا اشاره می کند! اگرمقدار این اشاره گر آشغال باشد برنامه مختل شده وقفل می کند و اگربه مقدار دقیقی تنظیم شده باشدکنترل اجرا به محل مورد نظر نفوذگرمنتقل خواهدشد!
مشکل سرریزشدن پشته ازآنجایی ناشی می شود که قبل ازانتقال داده ها به درون متغیرهای محلی، اندازه آنها تطبیق داده نمی شود.
درسیستم عامل یونیکس خطرناک ترین کداجرایی که نفوذگر می تواند ازآن استفاده کند قطعه کدی است که برنامه «پوسته فرمان » را فراخوانی واجرا می کند.
اجرای چنین کدی راه رابرای اجرای بقیه فرامین بازمی کند. برای این کار باید کدهای اجرایی «تابع execitive» که جزو توابع کتابخانه ای زبان C محسوب می شود، تولید واجرا شود. درسیستم عامل Windows NT/2000 ، نفوذگر اغلب سعی می کند کدهای اجرایی یکی از DLL ها را جهت بدست گرفتن کنترل برنامه فراخوانی واجراکند. DLL ها درعبارتی غیردقیق ولی ساده ، برنامه های نسبتا کوچکی هستند که توسط برنامه های کاربردی مختلف مورد استفاده قرار می گیرد وهریک وظیفه خاص دارند یکی ازموثرترین DLL ها که می تواند برای اینگونه حملات مورد استفاده نفوذگر قرار بگیرد WININET.DLL است که بااجرای آن می توان اطلاعاتی را از شبکه دریافت یا ارسال کرد. موفقیت یا عدم موفقیت دراین نوع حملات وابستگی شدید به نوع سیستم عامل و نوع پردازنده دارد.
تفاوتی که برنامه های تحت شبکه یا برنامه های معمولی دارند درآن است که برنامه های معمولی ، داده های ورودی را ازطریق پنجره ها یا آرگومانهای خط فرمان می گیرند درحالیکه برنامه های شبکه ، داده های ورودی را ازطریق «پورت های باز» وازروی شبکه دریافت می کنند. بنابراین تلاش نفوذگر برای درهم شکستن پشته یک پروسه سرویس دهنده، ازراه دورنیزممکن خواهد بود.[1]
3-1-10-2- Exploit Code:
کدهایی که با ارسال آنها به یک پروسه سرویس دهنده ، آنرا مختل کرده ودرهم می شکند وکنترل آن را دراختیار نفوذگر قرار می دهد، اصطلاحا Exploit Code نام دارد. برنامه های مستقلی که این کدها را ارسال می کنند،برنامه های Exploit نامیده شده اند.[1]
3-1-10-3- پیداکردن نقاط آسیب پذیر :
نفوذگر از کجا متوجه می شود که یک برنامه یا پروسه دارای نقطه ضعف است وپشته آن استعداد سرریز شدن دارد، تا آن را هدف بگیرد؟
آسیب پذیرترین برنامه ها ، آنهایی هستند که کدبرنامه آنها دراختیار نفوذگراست. اوبایک نگاه کلی به توابعی که ورودی / خروجی آنها (I/O) ازطریق سوکت و پورت های باز انجام می شود و همچنین بررسی توابع بکارگرفته شده دراین برنامه ها می توانند به آسیب پذیربودن برنامه پی ببرد.
اگرنفوذگر ، کدبرنامه مورد نظرش را دراختیار نداشته باشد، می تواند بااستفاده ازیک Debugger هدفش را تعقیب کند.
اگراستفاده از Debugger نتیجه ای نداشت ، پیداکردن نقطه ضعف برنامه ازطریق سعی وخطا انجام می شود.
بدین صورت نفوذگر یک نسخه ازبرنامه ای را که قراراست دریک ماشین راه دور مورد حمله قرار بگیرد، درآزمایشگاه اجرا می کند؛ پس با پورت های باز آن یک اتصال برقرار ورشته های طولانی داده ومتفاوت برای آن ارسال می نماید. این کار هزاران بارتکرار می شود تا بالاخره برنامه بایکی از این رشته ها مختل شده ودرهم بشکند.[1]
3-1-10-4- سازماندهی وآرایش بافر پیش ازسرریز شدن:
سوالی که ممکن است ذهن برنامه نویسان حرفه ای را به خود مشغول کند آن است که بافرض سرریز شدن پشته وشکسته شدن حریم فضای حافظه ، چگونه می توان آدرس برگشت وهمچنین کدهای اجرا را دراین فضا سازماندهی وتنظیم کرد تاپس ازاجرای «دستور Return» ، بدلیل تغییردرمحتوای « اشاره گر بازگشت» ، کنترل اجرا به قطع کدمورد نظر که آن هم در پشته واقع است ، منتقل شود؟
برای حل این مسئله ، نفوذگر یک محل تقریبی از حافظه را حدس می زند واشاره گر برگشت را به آنجا تنظیم می کند. سپس برای آنکه احتمال خطا را درحدسش کمتر کند تعداد زیادی کد NOP قبل ازکد اجرایی مورد نظرش اضافه می نماید. بدین ترتیب اگرمقدار تنظیم شده دراشاره گر بازگشت دارای اندکی خطای محاسبه باشد، بازهم مشکلی پیش نمی آید. درحقیقت کنترل اجرا درابتدا به وسط دریایی ازدستورات NOP که کاملا بی ضرر وبی خاصیت هستند فرود می آید و منجربه فروپاشی وتوقف برنامه نمی شود هرگاه پس ازاجرای دستور Return ، کنترل اجرا به یک نقطه از فضایی که با NOP پرشده منتقل شود ، درنهایت قطعه کدی که پس از NOPها قرارگرفته اجرا خواهد شد.[1]
3-1-11- حمله برعلیه کلمات عبور :
دردنیای شبکه وسیستم های کامپیوتری یکی ازروش های تامین امنیت ، استفاده از کلمه عبوراست. دربسیاری از سازمان ها فقط کلمات عبورهستند که ازداده های محرمانه وحساس حفاظت می کنند . بدین معنا که برای هرکاربر یک کلمه عبور درنظرگرفته می شود واوباید درهربارورودبه سیستم آن کلمه را وارد نماید؛ درصورت صحت کلمه عبور به او اجازه ورود داده خواهد شد.
درحقیقت امنیت مجموعه ای از اطلاعات به امنیت یک کلمه عبور، گره خورده است. فاش شدن یک کلمه عبور می تواند منجربه ازدست رفتن کل اطلاعات کاربروحتی شکسته شدن حریم کل سیستم(یاشبکه ) شود. لذا امنیت کلمات عبور، ازاهمیت بسیارویژه ای برخورداراست. بسیاری ازحملات مخرب علیه یک شبکه ازطریق کشف کلمات عبورشروع می شود. برای هرکاربر شبکه حداقل یک کلمه عبور برای ورودبه شبکه تعریف می شود.
دراکثرسیستم ها برای راحتی کاربران به آنها اجازه داده می شود تاشخصا کلمات عبورمناسب برای خود انتخاب کنند. زیاد دیده شده است که یک کاربر ازاسامی هفته ، اسم فرزند خود ، شماره ماشین خود، نام خانوادگی یاشماره شناسنامه خود به عنوان کلمه عبور استفاده کرده است. چنین کلمات عبوری براحتی کشف خواهند شد. دزدیدن یا حدس زدن کلمه عبوریک کاربر لقمه بسیارلذیذی برای نفوذگری است چراکه وقتی جای پای او درسیستم بعنوان یک کاربر معتبر بازشد، عملیات بعدی او می تواند به آشکارشدن کلمه عبوردیگران ونهایتا فروپاشی کل شبکه منجرشود!
ازهمه بدتر برخی ازاوقات ، کاربران ازکلمات عبور پیش فرض وشناخته شده یک سیستم استفاده می کنند که براحتی کشف خواهدشد.
حدس زدن کلمات عبور به روشهای سعی وخطا توسط ابزارهای خودکار، فرایند چندان سختی نیست ویک تازه کارهم می تواند آنها را بکاربگیرد.[2]
3-1-11-1- حدس زدن کلمات عبور پیش فرض سیستم ها:
بسیاری ازسیستم های عامل ، سرویس دهنده ها وحتی سخت افزارهایی مثل مسیریاب ، دارای یکسری کلمات عبور پیش فرض هستند که توسط سازنده آنها تعریف شده است وبه خریداران امکان می دهد تابرای اولین بار سیستم را نصب وپیکربندی می کند راهی برای ورود به سیستم داشته باشد.پس ازنصب وپیکربندی ، سریعا کلمات عبورپیش فرض باکلمات عبور مشکل وغیرقابل حدس زدن ، جایگزین شوند ولیکن مسئولین گرفتار حذف یا تغییرکلمات عبور پیش فرض را فراموش می کنند. نفوذگر با آگاهی ازکلمات عبور پیش فرض ، سعی درامتحان آنها می کند وبدون هیچ دردسری به سیستم وارد می شود.[2]
3-1-11-2- حدس کلمه عبور و ورود به سیستم از طریق چندخط برنامه نویسی:
حتی وقتی کلمات عبور پیش فرض از سیستم حذف شده باشد بازهم نفوذگر ناامید نخواهد شد. روش بعدی او برای ورود به سیستم آن است که چندخط برنامه نویسی کند. مشخصه کاربری آشکار است ومحرمانه تلقی نمی شود. اوبرنامه ای می نویسد که به طورمکرر کلمات عبور مختلف را جهت ورود به یک سیستم امتحان نماید. این برنامه یکی از این User ID ها را در نظرگرفته وکلمات عبورمختلف را امتحان می نماید.[2]
3-1-12- حمله به کوکی های موقت :
کوکی های موقت درون حافظه مرورگر ذخیره می شوند وبنابراین نفوذگر دسترسی مستقیم بدان نخواهدداشت ولذا تغییردرsession ID ممکن نخواهدبود.
کوکی های موقت قابل اعتماد وغیرقابل تغییرهستند. نرم افزار Achilles یکی از قدرتمندترین ابزارهای حمله به کوکی های موقت محسوب می شود.
Achilles قادر است باپروتکل های HTTP و HTTPS کارکند و عملا نقش کنسول حمله به نشست های وب را ایفا می نماید.[2]
3-1-13- هک کردن VPN(شبکه ای که از اینترنت یا سیم های رابط به منظور ارتباط بین دو گره استفاده می کند):
به علت پایداری و حضور به موقع در همه جای شبکه ی تلفن، اتصال POTS برای بعضی زمان ها همراه ما خواهد بود. به هر حال، جابجایی مدت ضرب العجل صنعت تکنولوژی اکنون به ما یک نگاه اجمالی ازآنچه که احتمالاً جانشین Dial-up به عنوان مکانیزم دسترسي ازدور دست آتی دارد را می دهد: شبکه ای که از اینترنت یا سیم های رابط به منظور ارتباط بین دو گره استفاده می کند(VPN).
VPN یک مفهوم وسیعی نسبت به یک تکنولوژی خاص ویاپروتکل می باشد،اما اکثر آشکارسازهای عملی با کانال داده اختصاصی بواسطه ی اینترنت به همراه پنهان کردن و رمز دار کردن اختیاری سر و کار دارند. توجیه اولیه ی VPN، ذخیره مالی و آسودگی و تسهیلات آن می باشد. به وسیله ی نیروی نفوذ، اتصال اینترنت موجود برای ارتباطات ادارات دور دست، کاربران دور دست، و حتی شرکای دور دست(اکسترانت) به شدت کاهش یافته است(خطوط Telco اجاره ای و منبع مودم). [9]
VPN ها می توانندبه چندین طریق ساخته شوند ، تنظیم برنامه خروج موقت محکم و بی خطر دسترسی آزاد(SSH) به یک نوع از روش های اختصاصی مثل تلفیق داده های FWZ نرم افزارهای Check Point . دوVPN استاندارد به صورت گسترده و خیلی زیاد شناخته شده، انتخاب امنیت IP (IP Sec) و پروتکل کانالی لایه 2(L2TP) می باشد، که جانشین تلاش های قبلی شناخته شده به عنوان پروتکل کانالی نقطه به نقطه(PPTP) و ارسال لایه 2(L2F) شده است.
-50802629535بطور خلاصه، کانال یابی، تلفیق داده ها را با داده های دیگر از یک برنامه ی دارای اطلاعات و داده(به صورت اختیاری رمز گذاری شده) با دیگری، IP با IP(IP Sec)، و یا PPP با GRE(PPTP) در بر می گیرد. شکل 7-9 مفهوم کانال یابی را در زمینه ی(مفهوم) VPN پایه بین نهادهای A و B(که می توانند HOST های شخصی و یا شبکه های سراسری باشد) نشان می دهد. B یک بسته به A توسط دروازه ی 2 می فرستد(آدرس مقصد: “A”) (GWZ که می تواند یک نرم افزار Shim در باشد B).GWZ، بسته را با دیگر مقاصد برای GW1 تلفیق می کند.[9]
شکل 7-9: کانال یابی یک نوع از مسیر یابی ترافیکی به همراه دیگری، قیاس منطقی پایه ی VPN
GW1 سر انداز(Header) موقتی را طبقه بندی می کند و بسته ی اصلی را به A تحویل می دهد.
بسته ی اصلی می تواند بصورت اختیاری رمز گذاری شود، هنگامیکه مسیر این بسته از طریق اینترنت پیموده می شود(خط تیره). [9]
تکنولوژی های VPN، به درستی و صادقانه از عصری در چند سال اخیر می آید و راهشان را بطور پیوسته و یکنواخت به معماری های شبکه هم در سطح عمومی هم در سطح شخصی(خصوصی) انتقال دادند. بسیاری از حامل ها، در همان حال خدمات مدیریت شده ی VPN را برای آن هایی که نمی خواهند آنرا برای خود بسازند پیشنهاد دادند. آشکارا و به صورت منطقی VPN بطریقی است که طبقه ی POTS off را به عنوان انتخاب برتر و با اهمیت تر برای ارتباطات دور دست جمع کند (انبوه کند). اما این وضعیت جدید الاکتشاف(نو ظهور) همچنین آنرا یک هدفی برای هکرهای سابق ایجاد می کند. چگونه VPN عبور می کند(خواهد گذشت)هنگامی که با چنین بررسی های دقیقی مواجه می شود؟
یک مثال خوبی ازچنین آنالیزی،درسال June 1, 1998 ،تجزیه وتحلیل رمزاجرایPPTP سازمان مایکروسافت بوسیله ی مسئول رمزمشهوربه نامBruce schneier وهکرمعروف وچیره دست به نام Peter Mudge درصنایع سخت وخشن می باشد(سایتhttp://www.Counterpane.com/pptp.html را ببینید). [9]
یک تور فنی از چنین یافته های در این مقاله، نوشته شده توسط Aleph One برای مجله ی phrack می تواند در سایت http://www.phrack.com/search.phtml?view&article=p53-12یافت گردد.
Aleph One اطلاعات بیشتری در سبک روشن PPTP آورده است که شامل مفهوم حقه بازی سرور PPTP به منظور اعتبار نامه ی سند حاصله می باشد. یک اقدام بعدی برای مقاله اصلی که آدرس می دهد.
ثابت ها را به PPTP تأمین شده بوسیله مایکروسافت در سال 1998، در سایت http://www.counterpane.com/pptpv2-paper.htmlدر دسترس می باشد.
گرچه این مقاله فقط برای اجرای خاص PPTP در شرکت مایکروسافت اعمال می شود، درس های وسیعی برای آموزش درباره ی VPN به طور کلی وجود دارد. زیرا آن یک تکنولوژی جهت دهی شده به سوی امنیت است و اکثر مردم فکرمی کنند که طراحی و اجرای تکنولوژی VPN انتخابی خود، نفوذ ناپذیر می باشد. [9]
هنگام مطالعه ی مقاله ی Schneier و Mudge’s، مهم است تا فرضیات و محیط تست شان را بیاد بیاوریم. آن ها یک تعامل سرور / ارباب رجوع PPTP، نه یک معماری دروازه ی سرور به سرور را بررسی کردند. اتصال مشتری فرض شده است تا بر روی یک تغذیه مستقیم اینترنت، و نه Dial-up اتفاق بیفتد. علاوه بر آن، بعضی از حملاتي که آن ها پیشنهاد دادند، بر مبنای توانایی استراق سمع آزادانه بر موضوعPPTP بود. گرچه هیچکدام از این موضوعات به صورت دراماتیکالی بر نتایج شان تأثیر نمی گذارد، اهمیت دارد تا به یاد آوریم یک دشمنی را با توانایی استراق سمع در چنین ارتباط دارد بصورت تقریبی اکنون مغلوب چنین امنیتی.
پروتوکل تصدیق ایمنی مایکروسافت، MS CHAP، بستگی به میراث عملکرد پنهانی دارد که قبلاً به آسانی نسبی مغلوب گردیده است. [9]
مواد ذره ای برای کلیدهای موضوعي استفاده شده برای اطلاعات شبکه رمز دار شده، از پسووردهای تأمین شده توسط کاربر، بالقوه کاهش طول بیت قابل استفاده ی کلید های زیر 40 و 128 بیت ایجاد شده است.
الگوریتم رمز دار کردن موضوع انتخابی(الگوریتم متقارن RSA’SRC4)بصورت گسترده بوسیله دوباره استفاده کردن از کلید های Session در هر دو جهت ارسال و دریافت تضعیف شده است و آنرا در برابر حمله و تاخت رایج پنهانی آسیب پذیر می سازد.
کانال کنترل(TCP port 1723) برای مذاکره و ارتباطات مدیریت به طور کامل غیر معتبر است و در انکار خدمات(DOS) و همینطور در حقه بازی حملات آسیب پذیر می باشد.
فقط حداکثر بار داده ها رمز گذاری می شود و به استراق سمع کردن اجازه می دهد تا اطلاعات مفید بیشتری از ترافیک کانال کنترلی بدست آورند.
فرض شده بود که مشتریانی که بصورت سرورهای PPTP به شبکه ها ارتباط دارند، می توانند به عنوان یک پشتیبان عقب تر به این شبکه ها اقدام کنند. [9]
Fixing PPTP:
آیا این عبارت برای VPN بدین معنی است که آسمان در حال نزول و سقوط است؟ قطعانه. بار دیگر، این نکات برای اجرای PPTP مایکروسافت خاص و ویژه شده اند ، و سپس مایکروسافت به سرورهای NT ویندوز وصل می شود و همین طور مشتریان در Service pack 4(به صورت اورجینال چاپ می شود به عنوان Post-SP3).
علاوه بر آن، PPTP به طور موثر و کار آمد بهبود یافته است در ویندوز 2000 و توانایی استفاده از پروتکل L2TP را بر مبنای IP Sec ایجاد کرده است.
مشتریان ویندوز 9X در PPTP باید شبکه ی Dial up در ورژن 1.3 را بهبود بخشند(از نظر امکانات) تا با دستگاه های اندازه گیر امنیت از سمت سرور سازگار باشد(از نظر قدرتمندی و توانایی).
مایکروسافت یک گزارش نامه ی جزئی شده در PPTP و امنیت VPNصادر کرده است و آن در سایت زیر در دسترس است:
http://www.microsoft.com/ISN/whitepapers/microsoft_virtual_pr_952.asp
و برای دانلود آن می توان به سایت زیر رجوع نمود:
http://www.microsoft.com/ntserver/zipdocs/vpnsecur.exe
Schneier و Mudge چاپ کردند یک مقاله پیرو و پشتیبان(اساساً) در وصف توصيف مایکروسافت برای آدرس دهی درست تقریباً همه خطاهای که آن ها اساساً شناسایی کردند. آن ها یاد آور شدند، به هر حال، که MS PPTP هنوز تکیه وارد بر رمز تأمین شده توسط کاربر تا ایجاد کند اکنتر وپی را برای رمز گشایی کلید. [9]
اکثر درس یاد داده شده ی مهم در مقاله Schneier و Mudge در متن بیان نشده است:
وجود دارد افراد چاره سازی که در خارج خواهند پرداخت و قادر خواهند بود تا VPN را با وجود(علیرغم)زیر بندهای امنیت دشوارشان بشکنند. بعضی از دیگر نکات قطعی، پتانسیلی برای آسیب پذیری طولانی مدت در پایگاه OS / VPN(برای مثال، موضوع Lan Manhash)هستند و هموار مي كند فقط تصمیمات طراحی بد را(کانال کنترل غیر معتبر، دوباره استفاده کردن از کلیدهای Session با رمز در آوردن RC4) تا غلبه کند بر یک سیستم ایمنی دیگر. یک پارادوکوس (متناقض نمایی) جالب مقاله ی Schneier و Mudge: هنگام بی اعتبار ساختن اجرای PPTP مایکروسافت، آن ها ادعا کردند خوش بینی صنعت عمومی راکه IP Sec برتکنولوژی برجسته یVPN غالب خواهدشد، در ابتدا به علت در دسترس بودن آن،فرآیندتوسعه ی به دقت بازبینی شدن آن(http://www.counterpane.com/pptp-faq.html )
به هر حال PPTP و حتی توسعه و گسترش خصوصی(اختصاصی) مایکروسافت بصورت آشکار در دسترس هستند به عنوان انتخابات اینترنت (http://www.ietf.org/html.charters/pppext-charter.html) [9]
3-1-13-1- چرا IP Sec خیلی ویژه و خاص می باشد؟
ما فکر می کنیم بایدجالب باشد اگر بعضی افراد توجهات مشابهی به IP Sec بصورت مستقیم داشته باشند. و آنچه که ما باید بدانیم، Bruce Schneier دارد! [9]
3-1-13-2- بعضی تجزیه و تحلیل های تخصصی IP Sec:
بسیاری ازپورت رفته است در نفوذ ناپذیری استاندارد IP Sec، اما مایکروسافت در ویندوز 2000 آنرا قرار داده است، از اینرو آن هر کجا برای سپری شدن قرار داده نمی شود. این نفوذ ناپذیری ممکن است داشته باشد یک سمت و دید روشن، به هر حال. به این علت که هیچ کس به نظر نمی رسد که به صورت کامل بفهمد آنچه که IP Sec واقعاً انجام می دهد، تعداد کمی دارند هر گونه نشانی که چگونه تحت حمله قرار می گیرند ، هنگامی که از میان آن عبور می کنند(وسایل دریافتی IP Sec به طور عمومی می توانند شناسایی شود بوسیله ی شنیدن روی پورتUDP 500، پروتکل مبادله ی کلیدی اینترنت(IKE).همانطورکه مادربعدمی بینیم،ابهام وتاریکی هرگز نیست یک فرضیه خوبی که در آن ایجاد کندیک پروتکل امنیتی به هرحال. سنجش Schneier و Ferguson در تازه کردن پیروزی PPTP، Bruce Schneier وهمکارانش به نامNiels Ferguson درپوشش امنیتی سیستم جهت دهی کرده است یک ضربت درپروتکل IPSec درمقاله شان درسایت http://www.counterpane.com/ipsec.html
دادخواهی مهمSchneier وFergusonدراین مدت هست پیچیدگی بی حسی ذهن سندهای استاندارد IP Sec، و در عوض، پروتکل های خود. این هست یک عیب جویی قدرتمندی که می آید از یک مردی که داردیک الگوریتم پنهانی درمباحثه برای انتخاب به عنوان الگوریتم رمزگذاری کردن پیشرفته ی استاندارد ضمانت اجرائی قانون دولت بعدی U.S ببینید:http://csrc.nist.gov/encryption/aes/
بعد از سال ها تلاش برای نفوذ این سندهای خودی، ما نمی توانیم بیشتر از این تفاهم داشته باشیم(تطبیق دهیم). در اینجا هست یک نمونه از بعضی از یاد آوری های هوشیارانه ای که ایجاد می کند آنرا یک میزان کننده ی صفحه ی : پروتکل های پنهانینباید توسعه داده شود بوسیله ی یک کمیته. دشمن شکست خورده ی امنیت، پیچیده است. [9]
3-1-13-3- نمایش هک کردن: راز امنیت شبکه و راه حل ها
Dial-up، PBX، پست صوتی و هک کردن VPN. فقط راه های منطقی برای تست امنیت یک سیستم هست تا اجرا کند باز بینی امنیت را در پروتکل، و قانون پیغام کد دهی شده که به یک آدرس فرستاده می شود که کلیدی برای دی کد باشد را به پروتکل ESP اضافه کند(در هم آمیزد)، و فقط ESP را در حالت tunnel جدا کند.
Schneier و Ferguson: در نظر ما، IP Sec خیلی پیچیده است برای ایمنی بودن، اما این بهتر از هر گونه دیگری از پروتکل امنیتی IP در دنیای امروزه می باشد، آن ها گفتند. به وضوح، کاربران کنونی IP Sec ها هستند در دستان دست فروشانی که استاندارد را اجرا کرده اند. خواه این پیش گویی های بد و یا خوب باقی بمانند تا به عنوان پذیرش هر گونه اجرای واحد حملات بیمناک در هر کجا به نظر برسد.
Bellovin’s point’s : اکثر مردم تحقق نمی دهند آنرا هنگامیکه آن ها مباحثات را مشابه چالش های پنهانی مختلف RSA’s(http://www.rsasecurity.com/rsalabs/challenges/)و یا پخش شده می بینند.
هک کردنRC5-64 شبکه های در حال پیشرفت (http://www.distributed.net/rc5 /index.html.en) که اکثر چنین رقابت هایی فرض کرده است بلوک های پیغام های عادی در شکل معنا دار آن که شناخته شده است، بوسیله ی مهاجمان متصرف می شوند. به هر حال کرک کردن ارتباطات(مکاتبات) رمز گذاری شده شبیه کرک کردن فایل های استاتیک دارای پسوورد – وجود ندارد هیچ گونه حد و مرز واضحی(روشنی) در یک ترسیم جاری رمز گذاری شده در جایی که یک مکالمه شروع می شود و هنگامیکه آن خاتمه می یابد. [9]
فصل چهارم:
جلوگیری ازنفوذ هکرها
4-1- مبارزه با اسبهای تروا و درهای پشتی :
قربانیان اسبهای تروا ، غالبا کاربران معمولی وبی تجربه هستند که به سادگی فریب می خورند. برای مبارزه با اسبهای تروا که امروزه بسیار متنوع وخطرناک هستند باید نکات ایمنی زیررامدنظرقراردهید:
استفاده از ویروس یاب های مطمئن وقوی:
هرچند اسبهای تروا جزءویروس های کامپیوتری تلقی نمی شوند ولیکن اکثر ویروس یاب های قوی درحین جستجوی ویروس های مخرب ، اسبهای تروا را نیز شناسایی ، معرفی ونابود می کنند . اولین راه مبارزه با اسبهای تروا استفاده از ویروس یابهای مطمئن وبه روز است.
عدم استفاده از جستجو کننده تک منظوره اسب های تروا:
نفوذگران بدخواه از نگرانی کاربران درمورد آلودگی سیستمشان به اسبهای تروا سوء استفاده کرده وابزارهایی تحت عنوان «کشنده اسب تروا» ، «ریشه کن کننده اسب تروا» و ... ارائه کرده اند که خودشان یک اسب تروا هستند. لذا استفاده از آنها نه تنها مفید نخواهد بود بلکه آلوده کننده سیستم شماست.[1]
نسبت به هر نرم افزاری که تهیه می کنید مطمئن باشید:
امروزه برای بررسی صحت وسلامت نرم افزارهایی که به طور گسترده عرضه می شوند راهی وجود دارد که بنام « اثرانگشت دیجیتالی » مشهور است. دراین روش ازالگوریتم Hash برای آزمون سلامت یک بسته نرم افزاری استفاده شده است . این اثرانگشت دیجیتالی بصورت یک کدرمز طولانی در سایت وب سازندگان اصلی هر نرم افزار ارائه می شود . برخی دیگر ازتوسعه دهندگان نرم افزار، روشهای مشابهی جهت اطمینان کاربران ازسلامت فایلهای برنامه ، عرضه کرده اند. مثلا شرکت Microsoft روشی به نام Authenticod TM ابداع کرده است که درحقیقت یک «امضای دیجیتالی » است .
آموزش کاربران بسیارحیاتی است:
نصب یک اسب تروا برروی ماشین یک کاربر معمولی به غیرازخطرات بالقوه ای که برای خود کاربر دارد می تواند خطراتی را نیز متوجه بقیه کاربران وسرویس دهنده های حساس موجود درآن شبکه نماید. بعنوان مسئول شبکه وظیفه دارید که به کاربران خود آموزشهای ایمنی لازم را بدهید:
تمام کاربرانی که به نحوی از وب بهره می گیرند باید تفهیم شده باشند که به هیچ وجه به تنظیمات امنیتی مرورگرخود دست نزنند.
به کاربران خود آموزش بدهید که ضمائم نامه های الکترونیکی خود را بدون اطمینان از صحت آن باز واجرا نکنند.[1]
4-2- مقابله ابتدایی باحمله به پشته ازطریق سیستم IDS :
برای کشف هرگونه تلاش که منجربه فروپاشی یک سرویس دهنده یا پروسه می شود به یک سیستم IDS («سیستم کشف مزاحمت وتشخیص حمله») درشبکه احتیاج دارید. سیستم IDS به طور معمول مکانیزم و ویژگی های هریک ازانواع حملات را می شناسد.
سیستم IDS می تواند جزئی از یک دیوار آتش باشد یا بطورجداگانه درشبکه طراحی ونصب شود.
4-2-1- مقابله با انواع حملات مبتنی بر سرریزی پشته یا بافر:
برای پیشگیری از حملاتی که نظیرسرریزشدن پشته کنترل اجرا را به دست نفوذگرمی دهد، اقدامات امنیتی زیرباید دردوسطح مدنظرقراربگیرد:
مقابله درسطح مسئول سیستم و گروه امنیتی سیستم : شامل تنظیمات شبکه ، نصب سیستم های IDS پیکربندی سرویس دهنده ها وبه روز نگهداری آنها.
مقابله درسطح برنامه نویسی : شامل رعایت اصول امنیتی درهنگام پیاده سازی یک نرم افزار وپیشگیری از بجامانده اشکال یا شکاف امنیتی قابل نفوذ.[2]
4-2-2- مقابله درسطح مسئول سیستم وگروه امنیتی:
برای آنکه بعنوان مسئول سیستم یا عضو امنیتی شبکه با جملاتی که کنترل یک پروسه را دراختیار گرفته ونفوذ به سیستم را ممکن می کنند، به درستی مقابله کنید باید به نکات زیردقت ویژه داشته باشید:
همیشه آخرین گزارشهای امنیتی ارائه شده درسایت های معروف دنیا را مطالعه کرده وباشرکت طراح سرویس دهنده های خود درتماس باشید. به محض کشف یک نقطه آسیب پذیر ، نسخه اصلاح کننده آنرا ازشرکت طراح آن بخواهید. بسیاری ازشرکت های تولید نرم افزار برای مشترکین خود یک «فهرست پستی» ایجاد کرده اند وبه محض کشف یک اشکال ، نسخه اصلاحی آن را دراختیار آنها قرار می دهند ، لذا حتما باید دراین فهرست پستی مشترک باشید وگزارش های متناوب آنها را بدقت مطالعه کنید.
حتی اگریک سرویس دهنده آسیب پذیررا بانصب نسخه های اصلاحی به روز کرده اید ولی سعی کنید بازهم کدهای Exploit آنرا تهیه وبرعلیه سرویس خود اعمال نمایید تاازرفع اشکال آن یقین پیداکنید.
به شدت مراقب ونگران سرویس دهنده های عمومی وحساس خود باشید.
به ترافیک خروجی ازشبکه خود اعتماد نکنید وبه دقت وسختگیرانه آنرا محدود وکنترل کنید.
دربرخی ازسیستم های عامل مثل سولاریس این امکان وجود دارد که آنرا به گونه ای پیکربندی کنید تا امکان اجرای برنامه درون پشته سیستم وجود نداشته باشد. سرریزشدن پشته ونفوذ دربرنامه ازآنجایی ناشی می شود که پس ازبازگشت ازیک تابع ، کنترل اجرا به قطعه کدی منتقل می شود که درپشته قراردارد.[2]
4-2-3- مقابله با سرریزشدن پشته درسطح برنامه نویسی:
این روش مقابله درحیطه وظائف مسئول شبکه نیست بلکه باید توسط برنامه نویسان سیستمی رعایت شود. هرگونه اهمال دراصول برنامه نویسی حرفه ای ، ممکن است یک شکاف امنیتی یا یک اشکال بالقوه دردرون برنامه نهایی باقی بگذارد.
توابعی که دریک برنامه فراخوانی می شوند حتما باید قبل ازهرپردازشی طول داده های ارسالی به تابع رابا طول بافر دراختیارخود مقایسه نمایند تامشکل سرریز شدن پشته بوجود نیاید.
یک تیم امنیتی مستقل بایدبررسی نهایی کدهای برنامه رابرعهده گرفته وآنرا تایید نماید.
امروزه ابزارهای خودکاروهوشمند نرم افزاری معرفی شده که با استفاده از آنها می توان در کدهای یک برنامه به دنبال نقاط آسیب پذیر گشته وآنها را پیداکرد.
یکی دیگرازروشهایی که امروزه می تواند مورد استفاده برنامه نویسان قرار بگیرد هشدارهایی است که برنامه های مترجمدرمورد استفاده نابجا از پشته ارائه می کنند.[1]
4-3- روشهای مقابله با ابزارهای شکننده کلمه عبور:
Lopht crack و John the Ripper بهترین ابزارهای حمله به کلمات عبور محسوب می شوند و سریعترین مکانیزم را برای کشف کلمه عبور انتخاب کرده اند. گزارش ها حاکی است که استفاده از این ابزارها درمحیط های واقعی توانسته تعداد زیادی از کلمات عبور کاربران را درعرض چند دقیقه فاش نماید!
روشهای دفاعی برای مقابله با «حمله به کلمات عبور» ارائه شده است:
به عنوان یک مسئول حساس ودقیق، همیشه کلمات عبور کاربران رابررسی کرده وبه آنها اجازه ندهد که ازکلمات عبور کوتاه ، معنی دار یا تلفیقی از کلمات معنی دار استفاده کنند.
سیاست های قوی ومحکم برای حفاظت از کلمات عبور اتخاذ کنید. سیاست های زیر توصیه می شوند:
سیستم عامل رابه گونه ای پیکربندی کنید که کلمات عبور کوتاهتر از حد معین را اصلا قبول نکند.(مثلا9کاراکتر)
درصورت امکان قبل از پذیرش کلمه عبور ازکاربر، کلمه انتخابی دریک فرهنگ لغت جستجو شده ودرصورت وجود، پذیرفته نشود.
کاربران مجبورباشند درکلمه عبورخود حداقل از 2یا 3 کاراکتر غیرالفبایی استفاده کنند .
برای کلمات عبورطول عمر درنظربگیرید وسیستم عامل را به گونه ای تنظیم نمایید تاپس از انقضای طول عمرکلمه عبور، حساب کاربرراقفل کرده وکاربر مجبور به تعویض کلمه عبورباشد ودرآینده هم نتواند به هیچ وجه ازآن کلمه استفاده کند.
سیاستهای انتخاب کلمه عبور را به طورآشکار وشفاف درسایت وب خود به همه کاربران اعلام کنید.
آگاهی کاربران: باتوجه به آنکه درمحیط های شلوغ وپرکاربر نمی توان تمام کلمات عبور انتخابی آنها را بررسی کرد وآنها نیز می توانند به نحوی از قواعد تعیین شده شما به روش های صوری بگریزند لذاباید با ذکرهشدارهای امنیتی وتوضیح کافی ، ذهن کاربر را با خطراتی که آنها را تهدید می کند، آشنا نمایید.
استفاده ازبرنامه های مولد کلمه عبور
استفاده از نرم افزار غربال کننده کلمات عبور ضعیف
درصورت وجود از روشهای احراز هویت بدون مبادله کلمه عبوراستفاده کنید.
ابزارهای شکننده کلمه عبور را گاهی برعلیه خود بکاربگیرید.
ازفایل های حاوی کلمات عبور رمز شده بدقت محافظت کنید.[1]
4-3-1- تكنیكهای انتخاب كلمه عبور :
به یادداشته باشید شناسه کاربری و کلمه عبور تمام هویت مجازی و حق مالکیت شماست؛ بدین معنی که برای اتصال به اینترنت، ورود به شبكه، انواع و اقسام (Messenger)ها و سایتها، چك كردن (mailbox)، بالا آمدن ویندوز محافظ صفحه نمایش و خلاصه برای هرتمام سرویسها خصوصی یااختصاصی دردنیای کامپیوتر شناسه کاربری و کلمه عبور؛هویت شما رااحرازمی کندودرصورت از دست دادن آنها ؛ مالکیت خود را بر دارایی های مجازی خود از دست می دهید.[1]
4-3-2- استاندارد ISO ۱۷۷۹۹ :
شاید برایتان جالب باشد اگر بدانید برای انتخاب كلمات عبور ، یك استاندارد جهانی وجود دارد.دراین استانداردراهنمایی های خوبی درزمینه انتخاب كلمه عبور ارائه شده است كه چند نمونه از آن را مشاهده می كنید :
1- تعداد كاراكتر های یك كلمه رمز،بایدحداقل شش حرف باشد.البته بهتر است طول را كمی بیشترازشش حرف بگیریدوحداقل هشت حرف را در نظر داشته باشید .
مطمئن باشیدكه حدس زدن كلمات عبوركه كوتاهترند ،برای هكرهابسیارساده است،ضمن اینكه درزمان كمتری به كشف آن نائل می شوند.در حقیقت كافی است توسط یك برنامه ویژه كشف رمز،به روش سعی و خطا، تركیبی از تمامی حروف ، ارقام و علامتها را چگ كنند تا در نهایت به كلمه رمز شما دست پیدا كنند.
2- هیچ گاه در كلمات عبور، از حرف یا كلمات پشت سر هم یا متوالی ( چه از نظر الفبایی و چه براساس موقعیت روی صفحه كلید ) استفاده نكنید . به عنوان مثال كلمات ، " asdfghkl " ، " ۳۴۵۶۷۸۹ " ، "abcdefg " مناسب نیستند .
3- تمامی كاراكتر های كلمه عبور ، نباید فقط حرف یا فقط كلمه باشند .
4- از استفاده مجدد یا دوره نموده كلمات عبور قدیمی جداً بپرهیزید.
5- كلمات عبور را هر چند وقت یك بار تغییر دهید
6- اگر مدیر یك شبكه هستید و در هنگام معرفی كردن كاربران به شبكه ، برای آنها كلمه عبور گذاشته اید ، آنها را مجبور كنید تا وقتی برای اولین بار به شبكه وصل شدند ، كلمه عبور ( كلمه عبور پیش فرض ) خود را تغییر دهند .
7- از استفاده از كلمه عبور اشتراكی برای كاربران بپرهیزید
سری به سایت www.secaritystats.com بزنید و از قسمت Awareness tools آن ، گزینه strength password را انتخاب كنید . با این ابزار جالب می توانید كلمات عبور خود را از نظر میزان امنیت ، پیچیدگی و قابل حدس بودن بسنجید . [5]
4-4- مقابله با استراق سمع (مقابله با اسنیفرها) :
نفوذگر ازطریق ابزارهایی چون Dsniff قادراست تمام ترافیک شبکه را مورد دستبرد وتجاوز قرار بدهد ودرچنین حالتی حریم شبکه عملا پایمال شده است و هیچ امنیتی برای جریان اطلاعات نمی توان متصورشد.
بنابراین مسئول شبکه باید موارد زیررا به دقت مدنظرقراربدهد:
درصورتی که امکان داشته باشد هیچ انتقال ومبادله داده ای انجام نشود مگرآنکه رمزنگاری شده باشد؛ بدین منظور ازپروتکل های HTTPS (بجای HTTP) برای مبادله داده های وب، SSH (بجای نشست های معمولی Telnet یا FTP) ، S/MIME یا PGP برای رمزنگاری نامه های الکترونیکی استفاده شود.
سعی کنید برای رمزنگاری درسطح لایه شبکه از IPsec بهره بگیرید.
بعنوان مسئول یک شبکه هیچ گاه ازراه دور بادیوار آتش ، مسیریاب یا سرویس دهنده های حساس خود، نشست Telnet برقرار نکنید. زیرا دراین صورت داده های ارسالی یا دریافتی برروی کانال اشتراکی شبکه ظاهر می شود و ممکن است کلمات عبور و مجوزهای دسترسی استراق سمع شود.
هرگاه پیغام های هشدار درمورد یک نشست SSLگزارش می شود به دقت آنرا بخوانید و هیچگاه کلید «ادامه» - continue – را بی دلیل فشار ندهید.
اگربودجه شما اجازه می دهد حتی الامکان بجای استفاده ازهاب ازسوئیچ استفاده نمایید زیرا نفوذگر درمواجهه با سوئیچ بسیار محدود شده وقادر به استراق سمع تمام ترافیک شبکه نخواهد بود.
برای آنکه نفوذگرقادرنباشد ازطریق تکنیک Arp spoofing ، ترافیک شبکه رابه سمت ماشین خود برگرداند ، سعی کنید جدول ARP را ازحالت پویا درآورده و بصورت دستی آنرا تنظیم کنید تا عمل Arp spoofing بی تاثیرشود.[1]
نتیجه گیری:
در هر زمان با توجه به تکنولوژی های آن زمان مسئله امنیت در آن تکنولوژی، مورد توجه تمامی افراد با توجه به میزان درگیری آنها بوده است.
با ظهور عصر اینترنت مسائلی پیش آمد که باعث شد امنیت در این بخش نیز مورد توجه قرار گیرد. امنیت در حوزه اینترنت، از ان زمان اهمیت پیدا کرد که کسانی توانستند با علم به عیوب ظاهری و باطنی اینترنت در این بخش نفوذ کرده و باعث خرابکاری هایی در این بخش شود.
با گسترش اینترنت در زمینه های مختلف، نیاز به محلی برای نگهداری و مدیریت اطلاعات و داده های موجود در آن باعث شد تا وب سرور ها وارد این عرصه شوند.
با توجه به اینکه حیات هر سایتی به وب سرور مربوطه اش منوط می شد، لذا دشمنان و بعضاً رقیبان سایت های گوناگون در جهت خرابکاری و یا سوء استفاده از آنها برآمده و سعی در خرابکاری نموده ومی نمایند، که یکی از این راهها خرابکاری در وب سرور ها بود. در این مقاله به طور مفصل در رابطه با روش های خرابکاری و همچنین روش های مراقبت صحبت شد.
در اینجا لازم می بینم به جهت نتیجه گیری مواردی را خاطر نشان کنم. با توجه به اینکه کشور ما از جمله کشورهای درحال توسعه می باشد، لذا همیشه دارای دشمنان و بدخواهانی بوده و خواهد بود، از طرفی به خاطر موقعیت استراتژیک ایران، این کشور همیشه در معرض خطر، چه از طرف همسایگان و چه از طرف کشورهای توسعه یافته بوده و هست. لذا برای برقراری امنیت و پایداری آن علاوه بر ارائه راهکاری باید آن را برروز رسانی نیز کرد. یکی از مواردی که از نظر امنیتی باید مورد توجه قرارگیرد همین بحث امنیت ارتباطی، سایت و در مجموع امنیت در فضای سایبری می باشد.
با مطالعات در اخبار مختلف هر روز شاهد بروز یکسری از مشکلات در فضای سایبری هستیم، حال باید برای کم کردن اینگونه حملات باید راهکاری ارائه داد.
در این زمینه می بایست ابتدا با نقاط ضعف و چگونگی ورود آشنا شویم. برای دستیابی به این مهم نیازمند داشتن یکسری مقدمات هستیم. در زیر به معرفی این مقدمات می پردازیم:
آشنایی کامل با اینترنت و وب سرورها
آشنایی کامل با انواع و مدل های مختلف وب سرورها و مزایا و معایب هر کدام
آشنایی کامل با امنیت وب سرور و طرق افزایش امنیت در آنها
آشنایی با روش های نفوذ و همچنین نقاط نفوذ در وب سرور ها
آشنایی با روش های پیشگیری و روش های جلوگیری از نفوذ
آشنایی با روش های مقابله و دفاع از حملات اینترنتی
آشنایی با روش های برگرداندن اطلاعات پس از حمله یا حملات
پس از یادگیری این مقدمات، نوبت به آشنایی با نقاط نفوذ به وب سرور مورد نظر می رسد. برای دستیابی به آن، یکی از راه ها، همانطور که در این مقاله ذکر شد، استفاده از اسکنرهای آسیب پذیری می باشد.
بعد از آشنایی با خطرات احتمالی، برای جلوگیری از نفوذ می بایست ایرادهای برنامه نویسی یا هر ایراد دیگری را که متوجه وب سرور است از بین ببریم.
در کشور ما نیز لازم است تا علاوه بر استفاده از اینگونه روش های برای وب سرور های مهم و حیاتی اینگونه سرور ها را هم بصورت فیزیکی و هم به صورت نرم افزاری مورد توجه ویژه قرار دهیم.
در جنبه های فیزیکی می توانیم از محیطی ویژه با امنیت بالا استفاده کنیم تا از دسترس افراد غیرمجاز محفوظ باشد.
در جنبه های نرم افزاری می توان از فایروال های مختلف و همچنین از آنتی ویروس و آنتی هک های ویژه استفاده کرد. البته شایان ذکر است که همه این نرم افزارها می بایست به صورت کامل تهیه شده و همچنین بروز رسانی مستمر شوند.
منابع فارسی:
نفوذگری درشبکه و روش های مقابله با آن ، مهندس احسان ملکیان ، چاپ پنجم ، زمستان 88 ، تهران ، انتشارات نص ، 1388، 592 ص . مصور
مباحث نو در فناوری اطلاعات ، اصول امنیت سیستم ها و شبکه های رایانه ای ، شهرام بختیاری وسعید قاضی مغربی ، موسسه انتشارات علمی دانشگاه صنعتی شریف
نوید بیرانوند، امنیت وب سرورها درشبکه ، پایان نامه مقطع کارشناسی، دانشگاه آزاد اسلامی واحد پرند، 1389.
http://www.hack-book.blogfa.com ، هک چیست؟ ، 14/3/1392 .
http://www.persianhack.com/articles.aspx ، شیوه های عملکرد هکرها، 14/3/1392.
Net Hacking – Ebook.TARIKHEMA.IR
www.irpdf.com ، امنیت درشبکه های کامپیوتری، 15/4/1392 .
http://fa.wikipedia.org ، رخنه گر، 20/4/1392 .
منابع انگلیسی:
9. HACKING EXPOSED:NETWORK SECURITYSECRETS & SOLUTIONSSECOND EDITION, JOEL SCAMBRAY;STUART MCCLURE;GEORGE KURTZ