بخشی از پاورپوینت
اسلاید 1 :
مقدمه :
Firewall در فرهنگ كامپيوتر يعني محافظت از شبكه هاي داخلي در مقابل شبكه هاي خطاكار . معمولا يك شبكه كامپيوتري با تمام دسترسي ها در طرف و در طرف ديگر شما شبكه توليدات شركت را داريد كه بايد در مقابل رفتارهاي مخرب محافظت شود. چند سوال مطرح مي شود كه آيا واقعا نياز به محافظت از يك شبكه داخلي داريم و سوال ديگر اينكه چگونه از طريق يFirewall در فرهنگ كامپيوتر يعني محافظت از شبكه هاي داخلي در مقابل شبكه هاي خطاكار .
تعريف ديوارههاي آتش
ديوارههاي آتش يكي از مؤثرترين و مهمترين روشهاي پياده سازي "مصونيت شبكه" هستند و قادرند تا حد زيادي از دسترسي غير مجاز دنياي بيرون به منابع داخلي جلوگيري كنند.ديوارههاي آتش، مانند خندقهاي دور قلعههاي دوران قرون وسطي عمل ميكنند. شكل 1 يكي از اين قلعهها را نشان ميدهد. خندق دور قلعه باعث ميشود نفوذ به قلعه مشكل باشد.
انجمن Network Computer Security Association) NCSA) تعريف زير را از ديوارههاي آتش ارائه داده است."ديواره آتش يک سيستم يا ترکيبي از چندين سيستم است که يک سري محدوديت را بين دو يا چند شبکه اعمال ميكند."در واقع يك ديواره آتش با محدودكردن دسترسي بين دو شبكه سعي ميكند يكي را از ديگري محافظت كند. عموماً ديوارههاي آتش به منظور محافظت شبكه خصوصي كه به يك شبكه عمومي يا مشترك متصل است به كار گرفته ميشوند. ديوارههاي آتش يك نقطه محدود كننده را بين دو شبكه ايجاد ميكند.
اسلاید 2 :
عملكرد ديوارههاي آتش را ميتوان در سه جمله خلاصه كرد:
- آنها افراد را موقع ورود در يك نقطه كاملاً كنترل شده محدود ميسازد.
- آنها از نزديك شدن خرابكاران به منابع داخلي جلوگيري ميكنند.
- آنها افراد را موقع خروج در يك نقطه كاملاً كنترل شده محدود ميسازند.
در واقع اين نقطه كاملاً كنترل شده در مثال قلعههاي قرون وسطايي همان پل متحركي است كه تنها در مواقع ورود و خروج افراد مشخص بر روي خندق قرار ميگيرد و در ديگر موارد بسته است و در نقش درب قلعه عمل ميكند. ديواره آتش اغلب در نقطهاي كه شبكه داخلي به شبكه خارجي متصل است قرار داده ميشود (شكل 2). تمام ترافيكي كه از سمت شبكه خارجي به شبكه داخلي وارد ميشود و يا از شبکه داخلي به سمت شبکه خارجي، خارج ميشود از ديواره آتش عبور ميكند، به همين علت ديواره آتش فرصت و موقعيت مناسبي را داراست كه تشخيص دهد آيا ترافيك عبوري مورد پذيرش هست يا خير. اينكه چه ترافيكي مورد پذيرش هست به "سياست امنيتي" (Security Policy)شبكه باز ميگردد. سياستهاي امنيتي تعيين ميكنند كه چه نوع ترافيكهايي مجوز ورود و يا خروج را دارا هستند.
اسلاید 3 :
ميتوان گفت يك ديواره آتش:
- يك جداساز است.
- يک محدودساز (Restrictor) است.
- يك آناليزكننده (Analyzer) است.
يك ديواره آتش ممكن است:
- مسيريابي با چند ليست كنترل دسترسي باشد.
- نرم افزاري که روي يک PC يا يک سيستم Unix اجرا مي شود، باشد.
- يك جعبه سخت افزاري اختصاصي باشد.
انواع پيچيده تر ديواره هاي آتش به صورت ترکيبي از چندين سيستم و راه حلهاي Multi-computer و Multi-router پياده سازي ميشوند. شبکه هاي مختلف بسته به نيازهاي امنيتي مختلف و هزينه اي که براي تأمين امنيت در نظر گرفته اند از ديوارههاي آتش مختلف و روشهاي پياده سازي مختلف آنها استفاده ميكنند.
ديوارههاي آتش اگر چه كه از بروز مشكلات مختلف براي شبكه داخلي جلوگيري ميكنند اما بدون اشكال و عيب نيستند. در مثال ذكر شده، افراد ماهرتر قادر خواهند بود از خندق با شنا عبور كنند و در يك فرصت مناسب هنگامي كه پل باز است با لباس مبدل به قلعه وارد شوند. سؤال اينجاست كه با وجود اين اشكالات چرا ديوارههاي آتش مورد استفاده قرار ميگيرند؟ در پاسخ بايد گفت درست است كه در حالات خاصي ديواره آتش نفوذ پذير است و خرابكاران قادرند از آن عبور كنند، اما با اين حال اين ابزار از عبور بسياري از خرابكاران جلوگيري ميكند و موثرترين ابزار در كنترل دسترسي به شبكه به حساب ميآيد. در صورتي كه هيچ خندقي وجود نداشته باشد ورود افراد غير مجاز به قلعه بسيار آسانتر خواهد بود و آيا چون در حالات خاصي، افراد خاص ممكن است از خندق عبور كنند، هيچ خندقي وجود نداشته باشد؟
اسلاید 4 :
در هر حال يك ديواره آتش قادر است در جهت بالا رفتن سطح امنيتي شبكه اقدامات مفيدي را انجام دهد. در ادامه مواردي كه يك ديواره آتش قادر است انجام دهد و به امنيت شبكه كمك كند را مورد بررسي قرار ميدهيم.
تواناييهاي ديوارههاي آتش
در اين بخش تواناييهاي ديوارههاي آتش را مورد بررسي قرار ميدهيم.
يك ديواره آتش ميتواند اجراي تصميمات امنيتي را در يك نقطه متمركزكند: همانطوركهگفته شد، ديواره آتش يك نقطه محدود كننده بين دو شبكه است. تمام ترافيك به داخل و از خارج بايد از اين نقطه باريك عبوركند و راه ديگري براي عبور ترافيك وجود ندارد. بدين ترتيب ديواره آتش قابليت اعمال كنترل شديدي را دارا خواهد بود و ميتواند با اعمال ابزار مختلف تأمينكننده امنيت در اين نقطه سطح قابل قبولي از امنيت را تضمين كند. در واقع چون همه چيز در يك كانال ارتباطي قابل كنترل است ميتوان تصميمات مختلفي را در ارتباط با امنيت شبكه گرفت و به اجرا در آوردن آنها را در يك نقطه متمركز ساخت.
يك ديواره آتش ميتواند سياست امنيتي شبكه را به اجرا در آورد: ميدانيم سرويسهاي مختلفي در شبكهها وجود دارند و با گسترش اينترنت تنوع و تعداد آنها بسيار افزايش يافته است. اغلب اين سرويسها ناامن هستند و هنگام استفاده و ارائه آنها بايد دقت كرد. سياست امنيتي شبكههاي مختلف تعيين ميكند كه چه سرويسهايي در شبكه ارائه ميشود و چه افرادي مجازند از اين سرويسها استفاده كنند. ديوارههاي آتش قادرند با پاسباني و كنترل سرويسهاي مختلف تنها به سرويسهاي مجاز تعريف شده در سياست امنيتي اجازه عبور دهند و بدين ترتيب سياست امنيتي شبكه را به اجرا درآورند
اسلاید 5 :
سياستهاي امنيتي نهايتاً به تعدادي قوانين اجرايي تبديل ميشوند كه ديوارههاي آتش قادر خواهند بود تعداد زيادي از آنها را اجرا كنند. ديوارههاي آتش ممكن است سرويسهاي خطرناك و ناامن و را با اعمال محدويت تنها در شبكه داخلي اجازه دهند.
سياستهاي امنيتي مختلفي قابل اتخاذ هستند. مديران يك شبكه ممكن است تنها به يك سيستم داخلي اجازه دهند. با دنياي بيرون در ارتباط باشد، در اين صورت ديواره آتش تنها ترافيك متعلق به آن سيستم را از خود عبور خواهد داد.
ذكر اين نكته ضروري است كه پيادهسازيهاي مختلف از ديوارههاي آتش تواناييهاي متفاوت در به اجرا در آوردن سياستهاي امنيتي دارند و بنابراين با استفاده از برخي از ديوارههاي آتش ممكن است نتوان برخي از سياستها را به اجرا در آورد.
يك ديواره آتش ميتواند فعاليتهاي مهم را ثبت كند: به اين علت كه تمام ترافيك از ديواره آتش عبور ميكند، ديواره آتش يك مكان مناسب براي ثبت مجموعههاي مختلف از فعاليتهاست. به عنوان تنها نقطه دسترسي، ديواره آتش ميتواند ثبت كند كه چه اتفاقاتي بين شبكه محافظت شده و شبكه بيروني رخ ميدهند. با دسته بندي اين اطلاعات ميتوان به نتايج خوبي در ارتباط با استفاده از شبكه، تهاجمهاي در حال شكلگيري، مزاحمان و متخلفان داخلي و خارجي و.... دست يافت.
اسلاید 6 :
يك ديواره آتش قادر است سطوح مختلفي از امنيت را براي بخشهاي مختلف پيادهسازي كند: از ديوارههاي آتش گاهي براي جدا نگه داشتن يك بخش از بخشهاي ديگر استفاده ميشود. اين حالت زماني اتفاق ميافتد كه يك بخش از شبكه بيشتر از بخشهاي ديگرحساس باشد و نيازمند امنيت بيشتري باشد. بدين ترتيب با استفاده از ديوارههاي آتش ميتوان بخشهاي مختلف با سطوح امنيتي مختلف را ايجاد نمود. اين مسأله باعث ميشود بروز مشكلات امنيتي نتواند تمام سرتاسر شبكه را تحت تأثير قرار دهد و برخي بخشهاي مهمتر و حساستر مصون بمانند. ديوارههاي آتش در مجموع قادرند شبكه را در برابر تهديدات مختلف تا حد زيادي مورد محافظت قرار دهند، اما آنها راه حل امنيتي كامل و بدون عيبي نيستند. برخي از خطرات و مشكلات از كنترل ديواره آتش خارج هستند و براي مقابله با آنها بايد از روشهايي مانند ايجاد مكانيزمهاي قوي امنيت فيزيكي، " مصونيت ميزبان" و آموزش كاربران و مديران و... استفاده كرد.
ناتوانيهاي ديوارههاي آتش
در ادامه برخي از ناتوانيهاي ديوارههاي آتش را مورد بررسي قرار ميدهيم:
يك ديواره آتش نميتواند شبكه و منابع آن را از خرابكاران داخلي محافظتكند: ديواره آتش ممكن است بتواند از اينكه اطلاعات مفيد سازمان از طريق خط ارتباطي شبكه به بيرون انتقال يابند جلوگيري كند اما هنگامي كه اين اطلاعات از خط ارتباطي عبور نميكنند نميتواند هيچكاري انجام دهد. كاربري ممكن است با استفاده از يك ديسك، Floppy، CD و يا تعدادي ورقه كه آنها را در كيفش قرار ميدهد اطلاعات حساس سازمان را به بيرون انتقال دهد. در مقابله با اين نوع كاربران (كه ممكن است اطلاعات داخل را عمداً و يا سهواً از روي غفلت افشا كنند)،
اسلاید 7 :
ديوارههاي آتش ناتوان هستند و هيچكاري از دستشان ساخته نيست. برخي از افراد داخلي سطوح دسترسي بالايي را در شبكه دارا هستند و مجازند به منابع مختلف در شبكه دسترسي داشته باشند، اين افراد قادر خواهند بود سخت افزارها را خراب كنند، نرم افزارها و برنامههاي مختلف را دچار مشكلكنند، به طور ماهرانهاي برنامهها را تغييردهند، سطوح دسترسيها را دستكاري كنند و.... واقعيت اين است كه ديوارههاي آتش در مقابله با اين مشكلات كاري نميتوانند انجام دهند.
يك ديواره آتش نميتواند از بروز تمام مشكلات امنيتي جلوگيريكند: ديواره آتش براي مقابله با خطرات شناخته شده طراحي شده است. مديران شبكه با شناختي كه از حملات و خطرات مختلف دارند و با تصويب تعدادي قوانين و اجراي آنها توسط ديواره آتش سعي ميكنند از بروز آنها جلوگيري كنند، اما واقعيت اين است كه روز به روز حملات و مشكلات امنيتي جديدي به وجود ميآيند و ديواره آتش نميتواند به طور خودكار با اين خطرات مقابله كند. ديواره آتش نيز مانند تجهيزات ديگر توسط مدير سيستم پيكربندي ميشود و پيرو دستوراتي است كه مدير ميدهد. يك پيكربندي خوب تا حدودي قادر خواهد بود از خطرات جديد نيز جلوگيريكند. در اين پيكربندي هيچ ترافيكي عبور داده نميشود غير از ترافيك مربوط به تعداد بسيار اندكي سرويس مطمئن. خرابكاران به طور مرتب راههاي جديدي براي نفوذ و خرابكاري پيدا ميكنند. آنها يا از سرويسهاي مطمئن شناخته شده سوء استفاده ميكنند ويا مشكلاتي كه تا كنون براي كسي رخ نداده (و بنابراين هيچ كس راجع به آنها چيزي نميداند و به همين دليل در هيچ ديواره آتشي در نظر گرفته نشده) را به كار ميبندند. يك ديواره آتش را نميتوان يك بار پيكربندي كرد و انتظار داشت براي هميشه شبكه را از هر خطري مورد محافظت قرار دهد.
اسلاید 8 :
يك ديواره آتش معمولاً نميتواند از ورود ويروسها جلوگيري كند: اغلب ديوارههاي آتش بخشهاي مربوط به آدرس مبدأ و آدرس مقصد و شماره پورت مبدأ ومقصد شبكههاي ورودي را مورد بازرسي قرار ميدهند و به جزئيات داده توجهي ندارند. پيادهسازي بخش تشخيص ويروس و بررسي كامل داده بستهها در ديوارههاي آتش زياد عملي وكارا نيست. انواع بسيار زيادي از ويروسها وجود دارند و روشهاي زيادي براي آنكه ويروس خودش را در داخل داده مخفيكند وجود دارد. تشخيص ويروس (Virus Detection) در يك بسته تصادفي از دادهاي كه از ديواره آتش عبور ميكند بسيار مشكل است. براي تشخيص ويروس در بستهها نيازمنديهاي زير وجود دارد:
- تشخيص اين مطلب كه بخش داده بسته بخشي از يك برنامه است.
- مشخص كردن اينكه يك برنامه مجاز چگونه است و چه ويژگيهايي دارد.
- تشخيص اين كه تفاوتي بين اين برنامه و مدل برنامههاي بدون مشكل و مجاز وجود دارد و بنابراين برنامه يك ويروس است.
اغلب ديوارههاي آتش ماشينهايي از انواع مختلف و با فرمتهاي اجرايي مختلف را مورد محافظت قرار ميدهند.
يك برنامه ممكن است يك برنامه كامپايل شده قابل اجرا و يا يك script باشد. علاوه بر اين، بسياري از برنامهها قبل از اينکه انتقال يابند به شکل يک Package در ميآيند و به خوبي فشرده سازي ميشوند. اين مسايل باعث ميشود پيچيدگي مسأله تشخيص ويروسها بالاتر رود و پيادهسازي آن مشكل باشد. با اين همه باز هم نميتوان تمامي منابع ديگر انتقال ويروسها را كنترل كرد. بسياري از برنامهها ممكن است از طريق مودمهاي اشخاصي كه به اينترنت متصلند و از ديواره آتش رد نمي شوند download شوند و يا با يک floppy از محل سکونت به شبکه داخلي سازمان انتقال يابند و ... روش عملي تر مقابله با ويروسها استفاد از نرم افزارهاي host-base virus protection است. آموزش کاربران و آگاه کردن آنها از خطرات ويروسها نيز مي تواند مؤثر باشد.
اسلاید 9 :
تاريخچه
اگر چه تكنولوژي ديوارههاي آتش جوان است و تازه شكل گرفته اما بسيار سريع رشد كرده و در كمتر از بيست سال تحولات زيادي را پشت سر گذاشته است.
اولين نسل از ديواره هاي آتش در حدود سال 1985 بوجود آمدند و " ديواره هاي آتش پالايشگر بسته" (Packet filter firewalls) نام گرفتند. ايده اصلي آنها از امکانات نرم افزاري گرفته شده بود که متعلق به شرکت Cisco بود و تحت عنوان (IOS (Internetworking Operation system شناخته مي شد. اولين مقاله در ارتباط با فرآيند غربال کردن (Screening Process) که توسط اين نوع ديواره هاي آتش مورد استفاده قرار مي گرفت در سال 1988 منتشر شد.
در سال 1989 آزمايشگاه شركت AT&T براي اولين بار نسل دوم ديوارههاي آتش كه در آينده "ديوارههاي آتش سطح مدار" (Circuit level firewalls) لقب گرفتند را بوجود آوردند. در همان سال آنها همچنين اولين مدل عملي (Working Model) از نسل سوم ديوارههاي آتش يعني "ديوارههاي آتش لايه كاربرد" (Application layer firewalls) پيادهسازي كردند اما نه هيچ مقالهاي در اين ارتباط منتشر شد و نه محصولي بر اساس اين مدل به بازار عرضه گشت.
در اواخر سال 1989 و اوايل دهه 90 تحقيقات مختلف و پراکنده اي در سطح کشور آمريکا بر روي نسل سوم ديواره هاي آتش انجام شد و بالاخره نتايج اين تحقيقات به صورت جداگانه درسال هاي 1990 و 1991 توسط Gene Spafford از دانشگاه Bill Cheswick,Purdue از لابراتوري Bell شرکت AT&T و Marcus Ranum انتشار يافتند. در سال 1991 تحقيقات Marcus Ranum بيشترين توجه را به خودش معطوف کرد و باعث بوجود آمدن Bastion host هايي که سرويس proxy را اجرا مي کردند شد. نتايج اين تحقيقات به سرعت در اولين محصول تجاري شکل عيني يافت و به کار گرفته شد. اين محصول که SEAL نام داشت توسط شرکت DEC عرضه شد.
اسلاید 10 :
در اواخر سال1991، Bill Cheswick و Steve Bellovin تحقيقاتي را در ارتباط با پالايش كردن بسته ها به صورت پويا (Dynamic) شروع کردند و بر اين اساس محصولي داخلي را در لابراتوار Bell پيادهسازي كردند كه البته هرگز به بيرون عرضه نشد. در سال 1992، Bob Barden و Annette DeSchon در مؤسسه USC’s Information Sience Institute تحقيقاتي را بر روي نسل چهارم ديوارههاي آتش تحت عنوان "ديوارههاي آتش پالايشگر بسته پويا" (Dynamic packet filter firewalls) براي سيستمي با نام Visas به طور جداگانه شروع كردند و در نهايت نرم افزار Chech Point، اولين محصول تجاري بر پايه معماري نسل چهارم ديواره هاي آتش، در سال 1994 به بازار عرضه شد.
در سال 1996، Scott Wiegel طرحي را براي نسل پنجم ديوارههاي آتش با عنوان Kernel Proxy ارائه داد. ديواره آتش Cisco Centri که درسال 1997 پياده سازي شد اولين محصول تجاري بر اساس معماري اين نسل بود.
در سال هاي اخير نياز به سيستم هاي امنيتي که پرسرعت و در عين حال قابل گسترش(Extensible)، قابل نگهداري(Maintainable) و انعطاف پذير (Flexible) باشند باعث شده است شرکت هاي فعال در زمينه امنيت در تکاپوي يافتن راه حلهايي مناسب و کاربردي براي پاسخگويي به اين نيازها باشند.
انواع ديوارههاي آتش
ديوارههاي آتش پالايشگر بسته
ديوارههاي آتش سطح مدار
ديوارههاي آتش لاية كاربرد
ديوارههاي آتش پالايشگر بسته پويا
ديوارههاي آتش Kernel Proxy
ديوارههاي آتش مخفي