فيلترينگ

چكيده

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

جنبه هاى مختلفى از امنيت وجود دارد كه زمان تعريف سياست امنيتى بايد در نظر گرفته شوند.براى اين منظور مجموعه مكانيزم هايى طراحى شده كه جنبه هاى مختلف امنيت را در اختيار ما مى گذارند. به منظور داشتن اطلاعات خصوصى روي يك اينترنت دو كامپيوتر مى توانند از رمزنگارى استفاده كنند. فرستنده الطوريتمى را براى درهم ريختن پيغام استفاده كرده وگيرنده نيز با استفاده ازنگاشت معكوس از روى نسخه به هم ريخته پيغام اصلى را بازسازى مى كند .
اگرچه تكنولوژى رمز نگارى كمك خوبى در رفع بسارى از مشكلات امنيتى است , اما وجود تكنولوژى ديگرى نيز در كنار آن لازم است . اين تكنولوژى كه به منظور حفاظت از كامپيوترهاى يك سازمان در مقابل ترافيك ناخواسته جهانى استفاده مى شود “حفاظ اينترنت” نام دارد .
يك حفاظ مى تواند هزينه هاى ايجاد امنيت را كاهش دهد . بدون يك حفاظ براى ايجاد محدوديت در دسترسى افراد بيرونى مى توانند بسته هايى را به هر كامپيوتر داخل يك سازمان ارسال كنند. در نتيجه سازمان بايد جهت امنيت همه كامپيوترهاى خود را امن سازد. اين در حالى است كه با وجود يك حفاظ , مدير مى تواند بسته هاى ورودى را فقط به يك مجموعه كوچك از كامپيوترهامحدود نمايد و حتى در نهايت اين مجموعه مى تواند يك كامپيوتر باشد. اگرچه كامپيوترهاى اين مجموعه بايد

امنيت خوبى داشته باشند ولي كامپيوترهاى ديگر ساؤمان نيازى به داشتن امنيت ندارند.
بنابراين سازمان مى تواند در هزينه هاى سازمان صرفه جويى كند زيرا نصب يك حفاظ ارزانتر از ايمن سازى همه سيستم هاى كامپيوترى تمام مى شود .
اولين مكانيزمى كه براى ايجاد يك حفاظ استفاده مى شود ” فيلتر كردن بسته ها ” نام دارد . كه ما در اينجا تصميم داريم توضيحى در مورد فيلتر كردن بسته ها بدهيم .

مقدمه

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

نوع فيلترهاى بسته اى را توضيح مى دهد و مشخصات پروتوكل هاى كاربرد معمولى را توضيح مى دهد كه به فيلتر كردن بسته اى مربوط هستند .اين مقاله مشكلات اجراى فيلتر كردن بسته اى را مشخص وبررسى مىكند و بيان مى كند كه چطور اين مشكلات مدير شبكه را ضعيف مى كند و راه حلهاى اين مشكل را بيان مى كند .

در واقع نقطه نظر مدير شبكه يا سايت مانند نقطه نظر تامين كننده سرويس يا فروشنده مسيرياب نيست . به عبارتى مدير سايت بيرون نگه داشتن بيگانه ها نسبت به خودى ها علاقه مندتر است وهدف حفظ بيگانه ها از مختل شدن و خودى ها از قرار گرفتن در معرض خدمات و داده هاست و از متزلزل شدن اقدامات امنيتى خودى ها ممانعت نمى كند .

فيلتر كردن بسته ها :

گفتيم اولين مكانيزمى كه براى ايجاد يك حفاظ استفاده مى شود “فيلتر كردن بسته ها ” نام دارد . بسيارى از توليدات مسيرياب IP , فيلتر كردن بسته اى را به عنوان ابزارى جهت اصلاح امنيت شبكه پيشنهاد مى كنند . فيلتر كردن بسته اى , ابزار مناسب ومفيدى براى مدير شبكه امنيتى است .
يك فيلتر بسته در واقع برنامه اى است كه داخل يك مسيرياب اجرا مى شود .اين فيلتر شامل نرم افزارى است كه مى تواند جلوى عبور بسته ها از شبكه اى به شبكه ديگر را در محل مسيرياب بگيرد . يك مدير شبكه بايد فيلتر را به صورتى پيكربندى كند كه مشخص شود كدام يك از بسته ها اجازه عبور از مسيرياب را دارند و كدام يك اين اجازه را ندارند.
يك فيلتر بسته اى به اين صورت عمل مى كند كه حوزه هاى موجود در سرايند هر بسته را بررسى مى كند . فيلتر را مى توان طورى پيكربندى كرد كه مشخص شود كدام حوزه از سرايند را بررسى كند و مقدار هر كدام را چگونه تفسير نمايد. به منظور كنترل اينكه كدام كامپيوتر روي يك شبكه بتواند با كامپيوتر هاى ديگر ارتباط برقرار نمايد , مدير شبكه مشخص مى كند كه فيلتر بايد حوزه هاى “مبدا ” و “مقصد” موجود در سرايند هر بسته را بررسى نمايد .
علاوه بر استفاده از آدرس هاى مبدا و مقصد فيلتر مى تواند پروتوكل داخل بسته و يا سرويس سطح بالايى كه بسته به آن مربوط مى شود را نيؤ بررسى نمايد .اعمال محدوديت روى بسته هاى مربوط به يك سرويس خاص به اين معناست كه مدير مى تواند جلوى ترافيك مربوط به يك سرويس را گرفته و ترافيك سرويس ديگرى را آزاد گذارد . براى مثال مدير مى تواند فيلتر را طورى پيكربندى نمايد كه جلوى بسته هاى ارتباطى www را گرفته و بسته هاى مربوط به ترافيك پست الكترونيك را عبور دهد .

 

شكل فوق نمايش محل قرار گرفتن يك فيلتر بسته , نرم افزار فيلتر طورى پيكربندى شده است كه جلوى عبور بعضى از بسته ها را از يك شبكه به شبكه ديگر مى گيرد .

با توجه به شكل فوق جهت ممانعت از ارتباط كامپيوتر با آدرس ۱۹۲٫۵٫۴۸٫۲۷IP روى شبكه سمت راست باهر كامپيوترى از سمت چپ , مدير مشخص مى كند كه فيلتر بايد جلوى همه بسته هايى كه آدرس مبدا آنها ۱۹۲٫۵٫۴۸٫۲۷ است رابگيرد و يا براي مثال اگر بخواهيم كامپيوترىبا آدرس ۱۲۸٫۱۰٫۰٫۳۲ روى شبكه سمت چپ هيچ بسته اى از كامپيوترهاى شبكه سمت راست دريافت نكند , مدير مشخص مى كند كه فيلتر بايد جلو همه بسته هايى كهآدرس مقصد آنها ۱۲۸٫۱۰٫۰٫۰ را بگيرد .

علاوه بر استفاده از اينآدرسهاى مبدا ومقصد , فيلتر مى تواند پروتوكل داخل بسته و يا سرويس سطح بالايى كه بسته به آن مربوط مى شود را نيز بررسى نمايد .اعمال محدوديت روى بسته هايى مربوط به يك بسته خاص به اين معناست كه مدير مى تواند فيلتر را طورى پيكربندى كند كه جلو بسته هاى ارتباطى را مسدود و بسته هاى مربوط به ترافيك پست الكترونيك را عبور دهد .

يك مكانيزم فيلتر بسته به مدير اجازه مى دهد تا تركيباتي از آدرس مبدا ,آدرس مقصد و سرويس را براى ممانعت از عبور بسته ها مشخص نمايد . نرم افزار فيلتر به مدير اجازه مى دهد تا تركيبات بولى از مبدا ,مقصد و نوع سرويس را مشخص نمايد . براى مثال مدير مى تواند اينطور تصميم بگيرد كه :همه ترافيك مربوط به سرويس FTP روى كامپيوتر ۱۲۸٫۱۰٫۲٫۱۴ ممنوع شود , جلو كل ترافيك www كه از كامپيوتر۱۹۲٫۵٫۴۸٫۳۳ صادر مى شود گرفته شود و تمام نامه هاى الكترونيك كامپيوتر ۱۹۲٫۵٫۴۸٫۳۴ نيز قطع شود . در اين صورت فيلتر فقط تركيبات مشخص را ممنوع خواهد نمود و مابقى ترافيك شبكه براى هر كامپيوتر ديگر و در مورد هر سرويس ديگر جارى خواهد بود .

استفاده از فيلترهاى بسته اى جهت ايجاد يك حفاظ

عملا يك حفاظ اينترنت حداقل از سه سيستم تشكيل شده است .يك بخش مجزاى فيلتر كه ديتاگرامهاى خروجى اينترنت سازمان را محدود مى كند , بخش ديگر فيلتر بسته اى كه روى ديتاگرامهاى ورودى اينترنت محدوديت ايجاد مى كند و بالاخره يك سيستم كامپيوترى ايمن داخل حفاظ كه نرم افزار كاربردى را اجرا مى نمايد . شكل زير اين ساختار را نشان مى دهد .

همانگونه كه در شكل مشاهده مى شود كامپيوتر ميزبان مورد نظر نيز روى شبكه اى واقع شده است كه به مسيريابها متصل است . به لحاظ منطقى اين كامپيوتر ايمن مابين دو فيلتر قرار گرفته ( فيلتر ها طورى پيكربندى شده اند كه بسته ها به طرف كامپيوتر هدايت كنند ). به عبارت بهتر فيلتر داخل مسيرياب R1 به صورتى پيكر بندى شده كه هيچ بسته ورودى را قبول نكند به جز آنهايى كه براى برنامه هاى اجرايى روى اين كامپيوتر ميزبان ايمن ارسال شده اند . به طريق مشابه , فيلتر

داخل مسيرياب R2 نيز به صورتى پيكربندى شده كه منحصرا بسته هاى خروجى كه به سمت برنامه اى روي كامپيوتر ميؤبان مى روند مى پذيرند ز بنابراين تمام ارتبطات بين كامپيوترهاى داخل سازمان وشبكه اينترنتى حتما از داخل كامپيوتر مزبور عبور مى كند .
چه نرم افزارى روى اين ميزبان ايمن قرار دارد ؟
برنامه هايى كه روى اين كامپيوتر اجرا مى شوند “دروازه لايه كاربردى ” ويا “پروكسى ” ناميده مى شوند كه يك سرويس ايمن براى اينترنت را در اختيار مى گذارد . براى مثال فرض كنيد كاربرى داخل سازمان مى خواهد با استفاده هر FTP فايلى را دريافت نمايد .زمان ايجاد اين درخواست توسط كاربر , نرم افزار مشترى روى كامپيوتر كاربر با يك پروكسى FTP روى ميزبان ايمن تماس مى گيرد . وقتى مشتى درخواست دريافت فايل را مى فرستد , پروكسى بررسى مى كند كه طبق سياست هاى امنيتى سازمان آيا اين درخواست مجاز است و در آنصورت جهت دريافت از كارگذار روى اينترنت اقدام نموده و بعد از كنترل فايل از نظر وجود ويروس و غيره آن را به كاربر متقاضى تحويل مى نمايد . اين نرم افزار همچنين ممكن است گزارشى از كل درخواستهاي انجام را ثبت نمايد تا بهد جهت ارزيابى هاى منيتى مورد بررسى واقع گشود .

 

فيلترينگ بسته اى چگونه كار مى كند

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

چند فاكتور تحقق اين خط مشي ها را با استفاده از فيلتر كردن شرايط نا متقارن , شرايط مختلف براى گروههاى مختلف داخلى و خارجى ماشينها , خصوصيات مختلف پروتوكلهاى ويژه , خدمات وتحقق اين پروتوكل ها و خدمات پيچيده از فيلتر كردن بسته اى استفاده مى كنند . شرايط دستيابى نا متقارن با اين ويژگى به وجود مى آيد كه سازمان مى خواهد سيستم هاى داخلى اش , دسترسى بيشترى به سيستمهاى خارجى داشته باشند . وقتى شرايط مختلف به وجود مى آيد كه سازمان مى خواهد گروههاى ماشينهايش دسترسى مختلفى به شبكه نسبت به ديگر گروههاى ماشين داشته باشند . يك سازمان دسترسى شبكه اى كمتر يا بيشترى نسبت به حد معمول با مشترى كليدى داشته باشد و دسترسى شبكه اى كمترى نسبت به حد معمول با يك دانشكده محلى داشته باشد .

روشهاى معمول فيلتر كردن بسته اى براى امنيت شبكه شامل تامين دسترسى شبكه اى براى ماشين و استفاده از گيتهاى كاربردى است . دسترسى شبكه اى بر مبناى “همه – هيچى ” هر ماشين را ايمن مى سازد و دسترسى شبكه اى غير مفيدى دارد . برخى سايتها ,منابعى براى تامين و كنترل هر ماشين دارند كه نياز به دسترسى شبكه اى تصادفى دارد . گيتهاى كاربردى AT&T وشركت تجهيزات ديجيتالى و چند سازمان , غير عملى هستند چون نياز به ميزبان داخلى تغيير نسخه هاى كاربردها (مانند ftp,telnet ) براى دستيابى به ميزبانهاى خارجى هستند .

در صورتى كه نسخه تغيير يافته كاربردى , براى يك ميزبان داخلى خاص وجود نداشته باشد كاربران ميزبان نمى توانند به گيتهاى كاربردى گذشته برسند .
حال بايد اين موضوع را بررسى كنيم كه فيلترينگ بسته اى به چه صورتى كار مى كند .براى بررسى اين موضوع ابدا بايد بررسى كنيم كه مبناى تصميمات فيلترهاى بسته اى چيست ؟
تحققات فيلترينگ بسته اى IP به اين صورت است كه آنها , عناوين يك بسته را تجزيه مى كنند و بعد از قوانين يك اصل ساده براى تعيين مسير استفاده مى كنند . اغلب حوزه هاى عناوين فيلتر , از نوع بسته اى UDP,TCP) ) آدرس IP منبع , آدرس مقصد IP و ورودى مقصد TCP/UDP يكى از حوزه هاى موجود نيست .
علاوه بر اطلاعات موجود در عناوين , بسيارى از تحققات فيلترينگ به مدير اجازه مى دهند تا اصولى را مشخص كنند كه بر مبناى آن رابط مسير ياب به مقصد مى رسد و يا رابط بسته وارد آن شبكه مى شود. مشخص كردن رابطه هاى درون محدوده و بيرون محدوده فيلتر ها به شما اين امكان را مى دهد تا كنترل خوبى بر مسير ياب طرح فيلترينگ داشته باشيد و براي يلترينگ مفيد مسير يابهاى داراى بيش از دو واسطه راحت است . اگر با استفاده از فيلتر هاى درون محدوده روى يك واسط مشخص بيفتد , آن بسته ها بايد در فيلترهاى برون محدوده تمام واسط ها قرار گيرند كه اينكار مشخصات فيلترينگ را ساده مى كند . علاوه بر اين فيلتر هايى كه مى خواهد استفاده شود نياز به معلوماتى از اين قبيل دارد كه كدام واسط بسته وارد مى شود . براى مثال مدير مى خواهد تمام بسته هاى درون را از واسط خارجى و ميزبان داخلى براى حفاظت در مقابل حملات جهانى بيرون حذف كند كه از آدرس هاى منبع داخلى استفاده مى كنند .
برخى مسير يابها با قابليت هاى ابدايى فيلترينگ بسته اى , عناوين را تجزيه نمى كنند اما در عوض به مدير براى مشخص كردن حدود بايت موجود در عناوين براى جستجو در آن حدود نياو دارند ., اين كار بى فايده است زيرا نياز به درك كامل مدير از ساختار بسته IP دارد . البته اين كار براى بسته ها با استفاده از حوزه هاى انتخاب IP در عنوان IP غير عملى است .

اصول فيلترينگ بسته اى چگونه مشخص مى شود

اصول فيلترينگ به عنوان مجموعه شرايط و اقداماتى در نظر گرفته مى شود تا به دستور مسيريابى يا حذف بسته برسند . زمانى كه يك بسته همه شرايط مشخص شده را در رديف خاصى از جدول براورد مى كند , اقدام خاصى در اين رديف صورت مىگيرد(براى مسيريابى يا حذف بسته ر برخى از تحققات فيلترينگ , اين عمل نشان مى دهد كه آيا بسته ثبت مى شود يا اقدامى صورت مى گيرد .
برخى سيستم ها از اصول مشخص شده توسط مدير استفاده مى كنند تا به اصلى برسند كه از [Mogul89] [cisco] استفاده مى كند و مسير يابى و حذف بسته را مشخص مى سازد .سيستم هاى ديگر نظم كاربردى اين اصل را بر مبناى معيار اين اصول مانند منبع و آدرس منبع و مقصد بدون توجه به ترتيب اصول مشخص شده توسط مدير , اجرا مى كنند

. برا مثال برخى از اصول فيلترينگ مانند ورودى هاى جدول مسيريابى استفاده مى كنند يعنى از اصول داراى آدرس هاى به خصوص كمتر استفاده مى كنند ز هر چه روش مرتب كردن اصول هاى مسير ياب , پيچيده تر باشد , درك اصول و كاربرد آنها براى مدير مشكل تر است , مسيريابى كه از نظم مشخص شده توسط مدير بدون تر تيب مجدد اصول استفاده مى كنند ,ساده تر توسط مدير درك و پيكر بندى مى شوند و از مجموعه فيلتر هاى كامل و درستى استفاده مى كنند .

مشخصات فيلترينگ پروتوكلهاى كاربردى

پروتوكل ها ي كاربرد با هم متفاوتند و هر يك مشخصات خاصى دارند كه به فيلترينگ بسته اى IP مربوط است و يا با پروتوكل هاى ديگر فرق دارد . تحقق يك پروتوكل به خصوص مشخصاتى دارد كه به نتيجه پروتوكل نيست بلكه نتيجه تصميمات طراحى گرفته شده توسط اين تحققات است . زيرا مشخصات تحققات در مشخصه پروتوكل وجود ندارند , بنابراين از تحققات مختلف همان پروتوكل فرق دارند وممكن است در يك تحقق به خصوص تغيير كنند . اين مشخصات شامل ورودى server و ورودى client است خواه اين سرويس در UDP/TCP پيشنهاد شده باشد . درك اين مشخصات براى تنظيم فيلترينگ مفيد واستفاده محدود از اين پروتوكل لازم است .

اين نكته داراى اهميت است كه وروديهاى اتفاقى واقعا اتفاقى نيستند . هر چند كه تحققات پروتوكل هاى مختلف از وروديهاى اتفاقى براى اتمام كار client يك ورودى معروف براى اتمام server اتفاقى نيستند . هر چند اين تحققات ازRFCS استفاده نمى كنند , سيستم هاى مبتنى بر BSD UNIX , وروديهاى پايين تر از ۱۰۲۴ را براى استفاده توسط فرايندهاى ممتاز حفظ مى كند و اين

فرايند ها به آن وروديها مى پيوندند .بر عكس فرايندهاى غير ممتاز از وروديها در بالاتر از ۱۰۲۴ استفاده كنند . اگريك بر نامه نياز به ورودى يا درگاهى خاصى نداشته باشد , درگاهى را بعد از آخرين مورد تعيين شده , مشخص مي نمايد , اگر آخرين درگاهى ۵۱۵۰ باشد , بعدى ۵۱۵۱ خواهد بود .

مشكلات مربوط به فيلترينگ بسته فعلى

مشكلات مربوط به تحققات فعلى فيلترينگ شامل پيچيدگى ييكربندى و اداره , حذف درگاهى منبع UDP/TCP است كه فيلترينگ بر مبناى روابط يش بينى نشده بين اجزاى نا مربوط مجموعه مشخصات فيلتر ,عدم ابزار آزمايش و اشكال زدايى و ناتوانى نسبت به پروتوكل RPC مانندNTFS و YP/NIS انجام مى شود .
يكى از اين مشكلات اين است كه فيلترها به سختى ييكربندى مى شوند . در اين حالت مدير اعتماد كم به مشخص شدن درست و كامل فيلتر ها دارد . syntax ساده مورد استفاده در مكانيسم هاى فيلترينگ بسته اى زندگى را براى مسيرياب آسان و براى مدير مشكل مى سازد .در قبال آن از تجردهاى زبان سدح بالا استفاده مى كند . مدير بايد نمايش ج\ولى از اصول توليد را توليد كند و رفتار مطلوب در اين نمايش بايد نشان داده شود .
مديران فعاليت شبكه را طبق روابط بررسى مى كنند در حاليكه فيلترينگ بسته اى به بسته هاى داراد يك ارتباط مربوط است .يك مدير طبق ارتباط داخلى SMTP عمل مى كند و بايد به دو اصل فيلترينگ ترجمه شود ( يكى براى بسته هاى داخلى از client به server و دومى براى بسته هاى خارجى از server به client استفاده مى كند . مفهوم يك ارتباط با بررسى پروتوكل UDP , ICMP مطرح مى شود و مديران درباره روابط NFS , DNS صحبت مى كنند . عدم هماهنگى بين abstraction هاى مديران و مكانيسم هاى تامين شده توسط تحققات فيلترينگ , مشكل مشخص كردن صحيح فيلتر هاى بسته اى را تحت تاثير قرار مى دهد

.
از ديگر مشكلات تحققات فيلترينگ بسته اى اين است كه درگاهى منبع UDP/TCP از اصول فيلترينگ حذف مىشوند . ترافيك داخلى و خارجى را در يك سرويس بدون باز كردن سوراخهاى شكاف با شوند . ترافيك داخلى و خارجى را در يك سرويس بدون باز كردن سوراخهاى شكاف با server ,غير ممكن مى سازد . براى مثال بدون بررسى منبع و مقدار درگاهى مقصد يك بسته , شما نمى توانيد روابط داخلى SMTP را با ماشين هاى داخلى و روابط خارجى SMTP را با

ماشينهاى داخلى و خارجى برقرار سازيد كه در آنجا دو انتهاى اتصال , در درگاهى هاى ۱۰۲۴ يا بالاتر هستند .براى اين منظور فرض كنيد جدول اصل مسيرياب ۶ متغير براى اصول يك رابط داريد كه شامل جهت , آدرس منبع , آدرس مقصد , درگاهى و عمل مسير يابى يا حذف است . شما نياز به ۵ اصل در اين جدول داريد تا SMTP داخلى و خارجى داشته باشد