بخشی از پاورپوینت

اسلاید 1 :

موضوع

دیوار آتشی

اسلاید 3 :

مقدمه :
Firewall در فرهنگ كامپيوتر يعني محافظت از شبكه هاي داخلي در مقابل شبكه هاي خطاكار . معمولا يك شبكه كامپيوتري با تمام دسترسي ها در طرف و در طرف ديگر شما شبكه توليدات شركت را داريد كه بايد در مقابل رفتارهاي مخرب محافظت شود. چند سوال مطرح مي شود كه آيا واقعا نياز به محافظت از يك شبكه داخلي داريم و سوال ديگر اينكه چگونه از طريق يFirewall در فرهنگ كامپيوتر يعني محافظت از شبكه هاي داخلي در مقابل شبكه هاي خطاكار .

تعريف ديوارههاي آتش
ديوارههاي آتش يكي از مؤثرترين و مهمترين روشهاي پياده سازي "مصونيت شبكه" هستند و قادرند تا حد زيادي از دسترسي غير مجاز دنياي بيرون به منابع داخلي جلوگيري كنند.ديوارههاي آتش، مانند خندقهاي دور قلعههاي دوران قرون وسطي عمل ميكنند. شكل 1 يكي از اين قلعهها را نشان ميدهد. خندق دور قلعه باعث ميشود نفوذ به قلعه مشكل باشد.
انجمن Network Computer Security Association) NCSA) تعريف زير را از ديوارههاي آتش ارائه داده است."ديواره آتش يک سيستم يا ترکيبي از چندين سيستم است که يک سري محدوديت را بين دو يا چند شبکه اعمال ميكند."در واقع يك ديواره آتش با محدودكردن دسترسي بين دو شبكه سعي ميكند يكي را از ديگري محافظت كند. عموماً ديوارههاي آتش به منظور محافظت شبكه خصوصي كه به يك شبكه عمومي يا مشترك متصل است به كار گرفته ميشوند. ديوارههاي آتش يك نقطه محدود كننده را بين دو شبكه ايجاد ميكند.

اسلاید 4 :

عملكرد ديوارههاي آتش را ميتوان در سه جمله خلاصه كرد:
- آنها افراد را موقع ورود در يك نقطه كاملاً كنترل شده محدود ميسازد.
- آنها از نزديك شدن خرابكاران به منابع داخلي جلوگيري ميكنند.
- آنها افراد را موقع خروج در يك نقطه كاملاً كنترل شده محدود ميسازند.
در واقع اين نقطه كاملاً كنترل شده در مثال قلعههاي قرون وسطايي همان پل متحركي است كه تنها در مواقع ورود و خروج افراد مشخص بر روي خندق قرار ميگيرد و در ديگر موارد بسته است و در نقش درب قلعه عمل ميكند. ديواره آتش اغلب در نقطهاي كه شبكه داخلي به شبكه خارجي متصل است قرار داده ميشود (شكل 2). تمام ترافيكي كه از سمت شبكه خارجي به شبكه داخلي وارد ميشود و يا از شبکه داخلي به سمت شبکه خارجي، خارج ميشود از ديواره آتش عبور ميكند، به همين علت ديواره آتش فرصت و موقعيت مناسبي را داراست كه تشخيص دهد آيا ترافيك عبوري مورد پذيرش هست يا خير. اينكه چه ترافيكي مورد پذيرش هست به "سياست امنيتي" (Security Policy)شبكه باز ميگردد. سياستهاي امنيتي تعيين ميكنند كه چه نوع ترافيكهايي مجوز ورود و يا خروج را دارا هستند.

اسلاید 5 :

ميتوان گفت يك ديواره آتش:
- يك جداساز است.
- يک محدودساز (Restrictor) است.
- يك آناليزكننده (Analyzer) است.
يك ديواره آتش ممكن است:
- مسيريابي با چند ليست كنترل دسترسي باشد.
- نرم افزاري که روي يک PC يا يک سيستم Unix اجرا مي شود، باشد.
- يك جعبه سخت افزاري اختصاصي باشد.
انواع پيچيده تر ديواره هاي آتش به صورت ترکيبي از چندين سيستم و راه حلهاي Multi-computer و Multi-router پياده سازي ميشوند. شبکه هاي مختلف بسته به نيازهاي امنيتي مختلف و هزينه اي که براي تأمين امنيت در نظر گرفته اند از ديوارههاي آتش مختلف و روشهاي پياده سازي مختلف آنها استفاده ميكنند.
ديوارههاي آتش اگر چه كه از بروز مشكلات مختلف براي شبكه داخلي جلوگيري ميكنند اما بدون اشكال و عيب نيستند. در مثال ذكر شده، افراد ماهرتر قادر خواهند بود از خندق با شنا عبور كنند و در يك فرصت مناسب هنگامي كه پل باز است با لباس مبدل به قلعه وارد شوند. سؤال اينجاست كه با وجود اين اشكالات چرا ديوارههاي آتش مورد استفاده قرار ميگيرند؟ در پاسخ بايد گفت درست است كه در حالات خاصي ديواره آتش نفوذ پذير است و خرابكاران قادرند از آن عبور كنند، اما با اين حال اين ابزار از عبور بسياري از خرابكاران جلوگيري ميكند و موثرترين ابزار در كنترل دسترسي به شبكه به حساب ميآيد. در صورتي كه هيچ خندقي وجود نداشته باشد ورود افراد غير مجاز به قلعه بسيار آسانتر خواهد بود و آيا چون در حالات خاصي، افراد خاص ممكن است از خندق عبور كنند، هيچ خندقي وجود نداشته باشد؟

اسلاید 6 :

در هر حال يك ديواره آتش قادر است در جهت بالا رفتن سطح امنيتي شبكه اقدامات مفيدي را انجام دهد. در ادامه مواردي كه يك ديواره آتش قادر است انجام دهد و به امنيت شبكه كمك كند را مورد بررسي قرار ميدهيم.
تواناييهاي ديوارههاي آتش
در اين بخش تواناييهاي ديوارههاي آتش را مورد بررسي قرار ميدهيم.
يك ديواره آتش ميتواند اجراي تصميمات امنيتي را در يك نقطه متمركزكند: همانطوركهگفته شد، ديواره آتش يك نقطه محدود كننده بين دو شبكه است. تمام ترافيك به داخل و از خارج بايد از اين نقطه باريك عبوركند و راه ديگري براي عبور ترافيك وجود ندارد. بدين ترتيب ديواره آتش قابليت اعمال كنترل شديدي را دارا خواهد بود و ميتواند با اعمال ابزار مختلف تأمينكننده امنيت در اين نقطه سطح قابل قبولي از امنيت را تضمين كند. در واقع چون همه چيز در يك كانال ارتباطي قابل كنترل است ميتوان تصميمات مختلفي را در ارتباط با امنيت شبكه گرفت و به اجرا در آوردن آنها را در يك نقطه متمركز ساخت.
يك ديواره آتش ميتواند سياست امنيتي شبكه را به اجرا در آورد: ميدانيم سرويسهاي مختلفي در شبكهها وجود دارند و با گسترش اينترنت تنوع و تعداد آنها بسيار افزايش يافته است. اغلب اين سرويسها ناامن هستند و هنگام استفاده و ارائه آنها بايد دقت كرد. سياست امنيتي شبكههاي مختلف تعيين ميكند كه چه سرويسهايي در شبكه ارائه ميشود و چه افرادي مجازند از اين سرويسها استفاده كنند. ديوارههاي آتش قادرند با پاسباني و كنترل سرويسهاي مختلف تنها به سرويسهاي مجاز تعريف شده در سياست امنيتي اجازه عبور دهند و بدين ترتيب سياست امنيتي شبكه را به اجرا درآورند

اسلاید 7 :

سياستهاي امنيتي نهايتاً به تعدادي قوانين اجرايي تبديل ميشوند كه ديوارههاي آتش قادر خواهند بود تعداد زيادي از آنها را اجرا كنند. ديوارههاي آتش ممكن است سرويسهاي خطرناك و ناامن و را با اعمال محدويت تنها در شبكه داخلي اجازه دهند.
سياستهاي امنيتي مختلفي قابل اتخاذ هستند. مديران يك شبكه ممكن است تنها به يك سيستم داخلي اجازه دهند. با دنياي بيرون در ارتباط باشد، در اين صورت ديواره آتش تنها ترافيك متعلق به آن سيستم را از خود عبور خواهد داد.
ذكر اين نكته ضروري است كه پيادهسازيهاي مختلف از ديوارههاي آتش تواناييهاي متفاوت در به اجرا در آوردن سياستهاي امنيتي دارند و بنابراين با استفاده از برخي از ديوارههاي آتش ممكن است نتوان برخي از سياستها را به اجرا در آورد.
يك ديواره آتش ميتواند فعاليتهاي مهم را ثبت كند: به اين علت كه تمام ترافيك از ديواره آتش عبور ميكند، ديواره آتش يك مكان مناسب براي ثبت مجموعههاي مختلف از فعاليتهاست. به عنوان تنها نقطه دسترسي، ديواره آتش ميتواند ثبت كند كه چه اتفاقاتي بين شبكه محافظت شده و شبكه بيروني رخ ميدهند. با دسته بندي اين اطلاعات ميتوان به نتايج خوبي در ارتباط با استفاده از شبكه، تهاجمهاي در حال شكلگيري، مزاحمان و متخلفان داخلي و خارجي و.. دست يافت.

اسلاید 8 :

يك ديواره آتش قادر است سطوح مختلفي از امنيت را براي بخشهاي مختلف پيادهسازي كند: از ديوارههاي آتش گاهي براي جدا نگه داشتن يك بخش از بخشهاي ديگر استفاده ميشود. اين حالت زماني اتفاق ميافتد كه يك بخش از شبكه بيشتر از بخشهاي ديگرحساس باشد و نيازمند امنيت بيشتري باشد. بدين ترتيب با استفاده از ديوارههاي آتش ميتوان بخشهاي مختلف با سطوح امنيتي مختلف را ايجاد نمود. اين مسأله باعث ميشود بروز مشكلات امنيتي نتواند تمام سرتاسر شبكه را تحت تأثير قرار دهد و برخي بخشهاي مهمتر و حساستر مصون بمانند. ديوارههاي آتش در مجموع قادرند شبكه را در برابر تهديدات مختلف تا حد زيادي مورد محافظت قرار دهند، اما آنها راه حل امنيتي كامل و بدون عيبي نيستند. برخي از خطرات و مشكلات از كنترل ديواره آتش خارج هستند و براي مقابله با آنها بايد از روشهايي مانند ايجاد مكانيزمهاي قوي امنيت فيزيكي، " مصونيت ميزبان" و آموزش كاربران و مديران و. استفاده كرد.

ناتوانيهاي ديوارههاي آتش
در ادامه برخي از ناتوانيهاي ديوارههاي آتش را مورد بررسي قرار ميدهيم:
يك ديواره آتش نميتواند شبكه و منابع آن را از خرابكاران داخلي محافظتكند: ديواره آتش ممكن است بتواند از اينكه اطلاعات مفيد سازمان از طريق خط ارتباطي شبكه به بيرون انتقال يابند جلوگيري كند اما هنگامي كه اين اطلاعات از خط ارتباطي عبور نميكنند نميتواند هيچكاري انجام دهد. كاربري ممكن است با استفاده از يك ديسك، Floppy، CD و يا تعدادي ورقه كه آنها را در كيفش قرار ميدهد اطلاعات حساس سازمان را به بيرون انتقال دهد. در مقابله با اين نوع كاربران (كه ممكن است اطلاعات داخل را عمداً و يا سهواً از روي غفلت افشا كنند)،

اسلاید 9 :

ديوارههاي آتش ناتوان هستند و هيچكاري از دستشان ساخته نيست. برخي از افراد داخلي سطوح دسترسي بالايي را در شبكه دارا هستند و مجازند به منابع مختلف در شبكه دسترسي داشته باشند، اين افراد قادر خواهند بود سخت افزارها را خراب كنند، نرم افزارها و برنامههاي مختلف را دچار مشكلكنند، به طور ماهرانهاي برنامهها را تغييردهند، سطوح دسترسيها را دستكاري كنند و.. واقعيت اين است كه ديوارههاي آتش در مقابله با اين مشكلات كاري نميتوانند انجام دهند.
يك ديواره آتش نميتواند از بروز تمام مشكلات امنيتي جلوگيريكند: ديواره آتش براي مقابله با خطرات شناخته شده طراحي شده است. مديران شبكه با شناختي كه از حملات و خطرات مختلف دارند و با تصويب تعدادي قوانين و اجراي آنها توسط ديواره آتش سعي ميكنند از بروز آنها جلوگيري كنند، اما واقعيت اين است كه روز به روز حملات و مشكلات امنيتي جديدي به وجود ميآيند و ديواره آتش نميتواند به طور خودكار با اين خطرات مقابله كند. ديواره آتش نيز مانند تجهيزات ديگر توسط مدير سيستم پيكربندي ميشود و پيرو دستوراتي است كه مدير ميدهد. يك پيكربندي خوب تا حدودي قادر خواهد بود از خطرات جديد نيز جلوگيريكند. در اين پيكربندي هيچ ترافيكي عبور داده نميشود غير از ترافيك مربوط به تعداد بسيار اندكي سرويس مطمئن. خرابكاران به طور مرتب راههاي جديدي براي نفوذ و خرابكاري پيدا ميكنند. آنها يا از سرويسهاي مطمئن شناخته شده سوء استفاده ميكنند ويا مشكلاتي كه تا كنون براي كسي رخ نداده (و بنابراين هيچ كس راجع به آنها چيزي نميداند و به همين دليل در هيچ ديواره آتشي در نظر گرفته نشده) را به كار ميبندند. يك ديواره آتش را نميتوان يك بار پيكربندي كرد و انتظار داشت براي هميشه شبكه را از هر خطري مورد محافظت قرار دهد.

اسلاید 11 :

يك ديواره آتش معمولاً نميتواند از ورود ويروسها جلوگيري كند: اغلب ديوارههاي آتش بخشهاي مربوط به آدرس مبدأ و آدرس مقصد و شماره پورت مبدأ ومقصد شبكههاي ورودي را مورد بازرسي قرار ميدهند و به جزئيات داده توجهي ندارند. پيادهسازي بخش تشخيص ويروس و بررسي كامل داده بستهها در ديوارههاي آتش زياد عملي وكارا نيست. انواع بسيار زيادي از ويروسها وجود دارند و روشهاي زيادي براي آنكه ويروس خودش را در داخل داده مخفيكند وجود دارد. تشخيص ويروس (Virus Detection) در يك بسته تصادفي از دادهاي كه از ديواره آتش عبور ميكند بسيار مشكل است. براي تشخيص ويروس در بستهها نيازمنديهاي زير وجود دارد:
- تشخيص اين مطلب كه بخش داده بسته بخشي از يك برنامه است.
- مشخص كردن اينكه يك برنامه مجاز چگونه است و چه ويژگيهايي دارد.
- تشخيص اين كه تفاوتي بين اين برنامه و مدل برنامههاي بدون مشكل و مجاز وجود دارد و بنابراين برنامه يك ويروس است.
اغلب ديوارههاي آتش ماشينهايي از انواع مختلف و با فرمتهاي اجرايي مختلف را مورد محافظت قرار ميدهند.
يك برنامه ممكن است يك برنامه كامپايل شده قابل اجرا و يا يك script باشد. علاوه بر اين، بسياري از برنامهها قبل از اينکه انتقال يابند به شکل يک Package در ميآيند و به خوبي فشرده سازي ميشوند. اين مسايل باعث ميشود پيچيدگي مسأله تشخيص ويروسها بالاتر رود و پيادهسازي آن مشكل باشد. با اين همه باز هم نميتوان تمامي منابع ديگر انتقال ويروسها را كنترل كرد. بسياري از برنامهها ممكن است از طريق مودمهاي اشخاصي كه به اينترنت متصلند و از ديواره آتش رد نمي شوند download شوند و يا با يک floppy از محل سکونت به شبکه داخلي سازمان انتقال يابند و . روش عملي تر مقابله با ويروسها استفاد از نرم افزارهاي host-base virus protection است. آموزش کاربران و آگاه کردن آنها از خطرات ويروسها نيز مي تواند مؤثر باشد.

اسلاید 12 :

تاريخچه
اگر چه تكنولوژي ديوارههاي آتش جوان است و تازه شكل گرفته اما بسيار سريع رشد كرده و در كمتر از بيست سال تحولات زيادي را پشت سر گذاشته است.
اولين نسل از ديواره هاي آتش در حدود سال 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 عرضه شد.

اسلاید 13 :

در اواخر سال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
ديوارههاي آتش مخفي

اسلاید 14 :

ديوارههاي آتش توزيع شده
ديوارههاي آتش شخصي
ديوارههاي آتش با توسعهپذيري بالا
ديوارههاي آتش نرمافزاري.
ديوارههاي آتش اختصاصي
ديوارههاي آتش شخصي
ديوارههاي آتش شخصي (كه به آنها desktop firewalls نيز گفته ميشود) نرمافزارهايي هستند كه براي محافظت از يك كامپيوتر تنها كه به اينترنت متصل است مورد استفاده قرار ميگيرند. اين كامپيوتر ممكن است به طور دائمي (از طريق خطوط Cable modem , DSL) و يا موقت (از طريق ارتباطات Dial-up) به اينترنت متصل باشد. در مقایسه با برنامه های anti-virus دیواره های آتش در background و در سطحي پايين تر اجرا مي شوند. دیواره های آتش شخصی با چک کردن جامعیت فایل های سیستم، پالايش ترافيك ورودي و خروجي، اخطار به كاربر در ارتباط با حملات در حال شكلگيري و .. سعي ميكنند كامپيوتر مرتبط با اينترنت را مورد محافظت قرار دهند. در آيندة نزديك امنسازي سيستمها با ديوارههاي آتش شخصي به يكي از استانداردهاي كامپيوترهاي خانگي تبديل خواهد شد.

اسلاید 15 :

ديوارههاي آتش شخصي مانند ديوارههاي آتش توزيع شده كار ميكنند به جز چند مورد. در واقع قابليتهاي ديوارههاي آتش توزيع شده بيشتر از ديوارههاي آتش شخصي است. ديوارههاي آتش شخصي براي محافظت از يك كامپيوتر تنها كه به اينترنت متصل است استفاده ميشود در حالي كه ديوارههاي آتش توزيع شده براي محافظت از كامپيوترهاي موجود در يك شبكة بزرگ سازماني طراحي شدهاند.يك شركت يا سازمان می تواند با خرید یک distributed firewall solution، كارمندان دور، شبكههاي محلي سازمان و شبكههاي گستردهاش را مورد محافظت قرار دهد. مديريت مركزي، قابليت logging در يك نقطة مركزي و ريزسازي كنترل دسترسي(Access Control Granularity) ويژگيهايي هستند كه در ديوارههاي آتش شخصي وجود ندارند. ميتوان گفت ديوارههاي آتش شخصي مستقل و مجزا هستند در حالي كه ديوارههاي آتش توزيع شده با يك نقطة مركزي در ارتباطند و در صحبت با او قادرند اطلاعات سياستهاي امنيتي را دريافت و اطلاعات ثبت شده و جمعآوري شده را ارسال كنند (به اين علت به دیواره های آتش توزیع شده Firewall agent نیز گفته می شود). از ديوارههاي آتش شخصي عموماً براي كامپيوترهاي شخصي و خانگي استفاده ميشود حال آن كه ديوارههاي آتش توزيع شده علاوه بر محافظت از كامپيوترهاي شخصي و ايستگاههاي موجود در شبكه قادرند سرويسگرهاي مهم و حساس را نيز مورد محافظت قرار دهند. برخي از ديوارههاي آتش توزيع شده را ميتوان به گونهاي پيكربندي كرد كه كاملاً شفاف عمل كنند. آنها هيچ رابط گرافيكي ندارند و سياستهاي امنيتي بدون اين كه كاربر از آنها اطلاعي داشته باشد به ديوارة آتش منتقل ميشود. بدين ترتيب درگيري كاربر نهايي حذف ميشود و او نميتواند در سياستهاي امنيتي مداخله كرده يا ديوارة آتش را غير فعال كند. اين قابليت عموماً در ديوارههاي آتش شخصي وجود ندارد.

اسلاید 16 :

برخي از ديوارههاي آتش شخصي عبارتند از:
- ConSeal PC firewall
- ConSeal Private Desktop
- SyShield
- BlackICE Defender
- ZoneAlarm
- Norton Internet Security 2000 (firewall & virus protection)
Internet Connection Firewall (Windows XP built-in personal firewall)

پياده سازي ديواره های آتش
هر كاربر با تجربه اينترنت مي داند كه يك ديواره آتش چيست و چه كاربردي دارد. براي دانستن تعريف دقيق آن مي توانيد به مقاله ديواره آتش چيست مراجعه كنيد. در اين مقاله دسته بندي دقيقي از روش هاي توليد ديواره آتش ارائه نخواهد شد، بلکه تنها به مرور برخي از مهم ترين اين روش ها پرداخته مي شود. کليه اين روش ها مربوط به پياده سازي ديواره آتش تحت نسخه هاي مختلف سيستم عامل ويندوز مي باشد. از صحبت در مورد مزايا و معايب اين رويكردها در اين مقاله خودداري مي شود. براي اطلاعات بيشتر در اين زمينه مي توانيد به مقاله روش هاي مختلف پياده سازي ديواره آتش، مزايا و معايب رجوع کنيد.

اسلاید 17 :

تكنولوژيهاي فيلترينگ ترافيك شبكه در ويندوز
با وجود اين كه ويندوز 9X/ME و ويندوز XP/NT واسطهاي سوكت مشابه دارند و معماري NDIS نيز درايورهاي باينري miniport سازگار براي واسطهاي شبكه را پشتيباني مي كند، زير سيستمهاي داخلي شبكه آنها تفاوتهايي با هم دارند. در واقع، زيرسيستمهاي شبكه ويندوز NT/2000/XP خيلي پيچيده تر از ويندوز 9X/ME است، ولي هر دو قابل تقسيم به بخش هاي زير مي باشند:
NDIS- : در سال 1989 Microsoft و 3com با هم (Network Driver Interface Specification) NDIS را گسترش دادند كه به درايورهاي شبكه اجازه مي دهد از سرويسهاي واسط شبكه براي مخفي كردن جزئيات عملکرد خودشان استفاده كنند. درايور شبكه با مشخصات ذكر شده NDIS-miniport ناميده مي شود. NDIS-miniport با نسخه هاي مختلف ويندوز سازگار است.
-درايورهاي شبكه: توصيف جزئيات اين درايور خارج از حوصله اين مقاله مي باشد. به طور خلاصه يک درايور شبكه (به طور مثال TCP/IP ) در لايه پايين از توابع كتابخانه ايNDIS براي دستيابي به شبكه استفاده مي كند و ممکن است (TDI (Transport Data Information را در لايه بالايي ارائه دهد. واسط TDI ارائه شده مي تواند توسط Clientهاي متنوعي نظير بخشي از پياده سازي سوكت afd.sys (در ويندوزهاي NT/2000/XP) استفاده شود.
-DLL هاي سطح كار بر كه واسط سوكت ويندوز را تشكيل مي دهند و عبارتند از : WS2_32.DLL ،msafd.dll ، wshtcpip.dll
در زير به بررسي سريع روش هاي ممكن فيلترينگ ترافيك شبكه پرداخته خواهد شد. برخي از اين روش ها که در سطح کاربر کار مي کنند داراي محدوديت هاي فراواني هستند. به عنوان مثال نمي توانند از اتصال برنامه هايي که مستقيما از لايه TDI استفاده مي کنند جلوگيري نمايند.

اسلاید 18 :

فيلترينگ ترافيك در سطح كار بر

1)Winsock layered service provider (lsp)
اين رويكرد در msdn به خوبي مستند سازي شده است و داراي يك مثال مناسب (SPI.CPP) مي باشد. از مزاياي اين روش مي توان به امكان تعيين فرآيند هايي كه سوكت هاي ويندوز را فراخواني مي كنند اشاره كرد. اين روش مي تواند براي انجام اعمالي از قبيل کنترل كيفيت سرويس، رمز نگاري جريان دادها و . استفاده شود. البته همان طور که گفته شدTCP/IP مي تواند مستقيماً از طريق TDI فراخواني شود، بنابراين اين روش براي مراقبت در برابر ويروس ها و اسب هاي تروا و . استفاده نمي شود. به علاوه اين رويكرد روي مسيرياب قابل استفاده نيست، زيرا بسته هاي اطلاعاتي در سطح TCP/IP مسيريابي مي شوند (يا حتي در سطح کارت شبکه)
2) Windows 2000 Packet Filtering Interface
ويندوز 2000 APIهايي را ارائه مي کند که برنامه هاي كاربردي سطح كاربر با استفاده از آن ها مي توانند مجموعه اي از فيلترها -كه توسط TCP/IP براي فيلتر كردن بسته ها استفاده مي شوند- را نصب كنند. البته قوانين فيلترينگ نسبتاً محدودند (بر مبناي عبور/انسداد براي آدرس هاي IP و اطلاعات port). هم چنين اين رويكرد فقط در ويندوز 2000 و نسخه هاي بالاتر قابل استفاده است.
3) جايگزيني Winsock DLL
اين رويكرد با توجه به داشتن مشکلات امنيتي متعدد قابل اعتماد نمي باشد و لذا از بحث در مورد آن خودداري مي شود.
4) قلاب کردن کليه توابع ناامن
استفاده از اين رويكرد نسبتاً مشكل بوده و نيازمند احتياط فراوان مي باشد، زيرا ممكن است بر روي ثبات و امنيت سيستم تاثير بگذارد.

اسلاید 19 :

فيلترينگ ترافيك در سطح هسته ((kernel
1) kernel-mode sockets filter
اين تكنولوژي براي ويندوزهاي NT/2000 قابل استفاده است. اين رويکرد با قرار گرفتن در مسير تمامي فراخواني ها از msafd.dll (پائين ترين لايه سطح كاربر در Winsock ) به ماژول afd.sys در سطح هسته (TDI-client، که در بالاترين سطح هسته قرار دارد و به عنوان بخشي از سوكتهاي ويندوز شناخته مي شود) و کنترل يا تغيير آن ها کار مي کند. اين روش، روش جالبي است ولي امكانات بيش تري نسبت به روش LSP ندارد. به علاوه، واسط AFD در نسخه هاي مختلف ويندوز متغير بوده است كه اين مساله باعث افزايش تغييرات لازم براي استفاده از اين رويکرد در اين نسخه ها مي شود.
3) جايگزيني Winsock DLL
اين رويكرد با توجه به داشتن مشکلات امنيتي متعدد قابل اعتماد نمي باشد و لذا از بحث در مورد آن خودداري مي شود.
4) قلاب کردن کليه توابع ناامن
استفاده از اين رويكرد نسبتاً مشكل بوده و نيازمند احتياط فراوان مي باشد، زيرا ممكن است بر روي ثبات و امنيت سيستم تاثير بگذارد.
فيلترينگ ترافيك در سطح هسته ((kernel
1) kernel-mode sockets filter
اين تكنولوژي براي ويندوزهاي NT/2000 قابل استفاده است. اين رويکرد با قرار گرفتن در مسير تمامي فراخواني ها از msafd.dll (پائين ترين لايه سطح كاربر در Winsock ) به ماژول afd.sys در سطح هسته (TDI-client، که در بالاترين سطح هسته قرار دارد و به عنوان بخشي از سوكتهاي ويندوز شناخته مي شود) و کنترل يا تغيير آن ها کار مي کند. اين روش، روش جالبي است ولي امكانات بيش تري نسبت به روش LSP ندارد. به علاوه، واسط AFD در نسخه هاي مختلف ويندوز متغير بوده است كه اين مساله باعث افزايش تغييرات لازم براي استفاده از اين رويکرد در اين نسخه ها مي شود.

اسلاید 20 :

2) TDI-FILTER driver
اين تكنولوژي هم براي ويندوزهاي 9X/ME و هم براي ويندوزهايNT/2000 به كار مي رود. البته پياده سازي آن در اين دو تفاوت هاي فاحشي با هم دارد. براي ويندوز 98 مثالي در Vireo/Numega VtoolsD يافت مي شود. هم چنين براي ويندوز NT/2000 مثالي در سايت http://www.sourceforge.net وجود دارد.
اين تكنولوژي، تکنولوژي معروفي است که در تعدادي از محصولات تجاري (مثل outpost) استفاده شده است. البته همانند ساير روش هايي که تاکنون بيان شد، اين رويكرد فقط مي تواند براي ساختن محصولات ردة ديوارة آتش شخصي استفاده شود و نمي تواند از پشتة TCP/IP شما در برابر حملات خرابكاران مراقبت كند.
3) NDIS Intermediate Driver
Microsoft اين دسته از درايورها را دقيقا به منظور پياده سازي ديواره هاي آتش فراهم كرده است . البته اين درايورها براي ويندوز95 قابل پياده سازي نيست و در مورد ويندوزهاي 98/ME/NT نيز بهتر است از اين کار صرفنظر شود. نصب اين درايورها و هم چنين استفاده آنها براي كاربران خيلي راحت نيست.
پشتيباني از درايوهايIM در ويندوز 2000/XP بهبود يافته است، ولي مساله ديگري که در اين مورد وجود دارد آن است که چنين درايورهايي بايد داراي امضاي ديجيتال ازMicrosof باشد، در غير اين صورت در هنگام نصب کاربر با پيغامي مبني بر عدم داشتن امضاي ديجيتال مواجه مي شود. مثالي در اين زمينه در DDK ويندوزهاي 2000 به بعد وجود دارد.
4) windows 2000 filter hook driver
اين روش در مستندات DDK توضيح داده شده است و فقط براي ويندوز 2000 و نسخه هاي بالاتر قابل استفاده است. مثالي در اين زمينه در http://www.codeproject.com وجود دارد.

در متن اصلی پاورپوینت به هم ریختگی وجود ندارد. برای مطالعه بیشتر پاورپوینت آن را خریداری کنید