منبع: سایت کیاشهر
بر خلاف تصور عموم کاربرى این نرم افزارها صرفاً در جهت فیلترینگ سایت ها نیست. براى آشنایى بیشتر با نرم افزارهاى دیواره هاى آتشین، آشنایى با طرز کار آنها شاید مفیدترین راه باشد. در وهله اول و به طور مختصر مى توان گفت بسته هاى TCP/IP قبل و پس از ورود به شبکه وارد دیواره آتش مى شوند و منتظر مى مانند تا طبق معیارهاى امنیتى خاصى پردازش شوند. حاصل این پردازش احتمال وقوع سه حالت است:
?- اجازه عبور بسته صادر مى شود.
?- بسته حذف مى شود.
?- بسته حذف مى شود و پیام مناسبى به مبدا ارسال بسته فرستاده مى شود.
• ساختار و عملکرد با این توضیح، دیواره آتش محلى است براى ایست بازرسى بسته هاى اطلاعاتى به گونه اى که بسته ها براساس تابعى از قواعد امنیتى و حفاظتى پردازش شده و براى آنها مجوز عبور یا عدم عبور صادر شود. همانطور که همه جا ایست بازرسى اعصاب خردکن و وقت گیر است دیواره آتش نیز مى تواند به عنوان یک گلوگاه باعث بالا رفتن ترافیک، تاخیر، ازدحام و بن بست شود. از آنجا که معمارى TCP/IP به صورت لایه لایه است (شامل ? لایه: فیزیکى، شبکه، انتقال و کاربردى) و هر بسته براى ارسال یا دریافت باید از هر ? لایه عبور کند بنابراین براى حفاظت باید فیلدهاى مربوطه در هر لایه مورد بررسى قرار گیرند. بیشترین اهمیت در لایه هاى شبکه، انتقال و کاربرد است چون فیلد مربوط به لایه فیزیکى منحصر به فرد نیست و در طول مسیر عوض مى شود. پس به یک دیواره آتش چند لایه نیاز داریم. سیاست امنیتى یک شبکه مجموعه اى از قواعد حفاظتى است که بنابر ماهیت شبکه در یکى از سه لایه دیواره آتش تعریف مى شوند. کارهایى که در هر لایه از دیواره آتش انجام مى شود عبارت است از:
?- تعیین بسته هاى ممنوع (سیاه) و حذف آنها یا ارسال آنها به سیستم هاى مخصوص ردیابى (لایه اول دیواره آتش)
?- بستن برخى از پورت ها متعلق به برخى سرویس ها مثلTelnet، FTP و... (لایه دوم دیواره آتش)
?- تحلیل برآیند متن یک صفحه وب یا نامه الکترونیکى یا .... (لایه سوم دیواره آتش)
••• در لایه اول فیلدهاى سرآیند بسته IP مورد تحلیل قرار مى گیرد: آدرس مبدأ: برخى از ماشین هاى داخل یا خارج شبکه حق ارسال بسته را ندارند، بنابراین بسته هاى آنها به محض ورود به دیواره آتش حذف مى شود. آدرس مقصد: برخى از ماشین هاى داخل یا خارج شبکه حق دریافت بسته را ندارند، بنابراین بسته هاى آنها به محض ورود به دیواره آتش حذف مى شود. IP آدرس هاى غیرمجاز و مجاز براى ارسال و دریافت توسط مدیر مشخص مى شود. شماره شناسایى یک دیتا گرام تکه تکه شده: بسته هایى که تکه تکه شده اند یا متعلق به یک دیتا گرام خاص هستند حذف مى شوند. زمان حیات بسته: بسته هایى که بیش از تعداد مشخصى مسیریاب را طى کرده اند حذف مى شوند. بقیه فیلدها: براساس صلاحدید مدیر دیواره آتش قابل بررسى اند. بهترین خصوصیت لایه اول سادگى و سرعت آن است چرا که در این لایه بسته ها به صورت مستقل از هم بررسى مى شوند و نیازى به بررسى لایه هاى قبلى و بعدى نیست. به همین دلیل امروزه مسیریاب هایى با قابلیت انجام وظایف لایه اول دیواره آتش عرضه شده اند که با دریافت بسته آنها را غربال کرده و به بسته هاى غیرمجاز اجازه عبور نمى دهند. با توجه به سرعت این لایه هر چه قوانین سختگیرانه ترى براى عبور بسته ها از این لایه وضع شود بسته هاى مشکوک بیشترى حذف مى شوند و حجم پردازش کمترى به لایه هاى بالاتر اعمال مى شود.
••• در لایه دوم فیلدهاى سرآیند لایه انتقال بررسى مى شوند: شماره پورت پروسه مبدأ و مقصد: با توجه به این مسئله که شماره پورت هاى استاندارد شناخته شده اند ممکن است مدیر دیواره آتش بخواهد مثلاً سرویس FTP فقط براى کاربران داخل شبکه وجود داشته باشد بنابراین دیواره آتش بسته هاى TCP با شماره پورت ?? و ?? که قصد ورود یا خروج از شبکه را داشته باشند حذف مى کند و یا پورت ?? که مخصوص Telnet است اغلب بسته است. یعنى بسته هایى که پورت مقصدشان ?? است حذف مى شوند. کدهاى کنترلى: دیواره آتش با بررسى این کدها به ماهیت بسته پى مى برد و سیاست هاى لازم براى حفاظت را اعمال مى کند. مثلاً ممکن است دیواره آتش طورى تنظیم شده باشد که بسته هاى ورودى با SYN=1 را حذف کند. بنابراین هیچ ارتباط TCP از بیرون با شبکه برقرار نمى شود. فیلد شماره ترتیب و :Acknowledgement بنابر قواعد تعریف شده توسط مدیر شبکه قابل بررسى اند. در این لایه دیواره آتش با بررسى تقاضاى ارتباط با لایه TCP، تقاضاهاى غیرمجاز را حذف مى کند. در این مرحله دیواره آتش نیاز به جدولى از شماره پورت هاى غیرمجاز دارد. هر چه قوانین سخت گیرانه ترى براى عبور بسته ها از این لایه وضع شود و پورت هاى بیشترى بسته شوند بسته هاى مشکوک بیشترى حذف مى شوند و حجم پردازش کمترى به لایه سوم اعمال مى شود. ••• در لایه سوم حفاظت براساس نوع سرویس و برنامه کاربردى صورت مى گیرد: در این لایه براى هر برنامه کاربردى یک سرى پردازش هاى مجزا صورت مى گیرد. بنابراین در این مرحله حجم پردازش ها زیاد است. مثلاً فرض کنید برخى از اطلاعات پست الکترونیکى شما محرمانه است و شما نگران فاش شدن آنها هستید. در اینجا دیواره آتش به کمک شما مى آید و برخى آدرس هاى الکترونیکى مشکوک را بلوکه مى کند، در متون نامه ها به دنبال برخى کلمات حساس مى گردد و متون رمزگذارى شده اى که نتواند ترجمه کند را حذف مى کند. یا مى خواهید صفحاتى که در آنها کلمات کلیدى ناخوشایند شما هست را حذف کند و اجازه دریافت این صفحات به شما یا شبکه شما را ندهد.
• انواع دیواره هاى آتش دیواره هاى آتش هوشمند: امروزه حملات هکرها تکنیکى و هوشمند شده است به نحوى که با دیواره هاى آتش و فیلترهاى معمولى که مشخصاتشان براى همه روشن است نمى توان با آنها مقابله کرد. بنابراین باید با استفاده از دیواره هاى آتش و فیلترهاى هوشمند با آنها مواجه شد. از آنجا که دیواره هاى آتش با استفاده از حذف بسته ها و بستن پورت هاى حساس از شبکه محافظت مى کنند و چون دیواره هاى آتش بخشى از ترافیک بسته ها را به داخل شبکه هدایت مى کنند، (چرا که در غیر این صورت ارتباط ما با دنیاى خارج از شبکه قطع مى شود)، بنابراین هکرها مى توانند با استفاده از بسته هاى مصنوعى مجاز و شناسایى پورت هاى باز به شبکه حمله کنند. بر همین اساس هکرها ابتدا بسته هایى ظاهراً مجاز را به سمت شبکه ارسال مى کنند. یک فیلتر معمولى اجازه عبور بسته را مى دهد و کامپیوتر هدف نیز چون انتظار دریافت این بسته را نداشته به آن پاسخ لازم را مى دهد. بنابراین هکر نیز بدین وسیله از باز بودن پورت مورد نظر و فعال بودن کامپیوتر هدف اطمینان حاصل مى کند. براى جلوگیرى از آن نوع نفوذها دیواره آتش باید به آن بسته هایى اجازه عبور دهد که با درخواست قبلى ارسال شده اند. حال با داشتن دیواره آتشى که بتواند ترافیک خروجى شبکه را براى چند ثانیه در حافظه خود حفظ کرده و آن را موقع ورود و خروج بسته مورد پردازش قرار دهد مى توانیم از دریافت بسته هاى بدون درخواست جلوگیرى کنیم. مشکل این فیلترها زمان پردازش و حافظه بالایى است که نیاز دارند. اما در عوض ضریب اطمینان امنیت شبکه را افزایش مى دهند. دیواره هاى آتش مبتنى بر پروکسى: دیواره هاى آتش هوشمند فقط نقش ایست بازرسى را ایفا مى کنند و با ایجاد ارتباط بین کامپیوترهاى داخل و خارج شبکه کارى از پیش نمى برد. اما دیواره هاى آتش مبتنى بر پروکسى پس از ایجاد ارتباط فعالیت خود را آغاز مى کند. در این هنگام دیواره هاى آتش مبتنى بر پروکسى مانند یک واسطه عمل مى کند، به نحوى که ارتباط بین طرفین به صورت غیرمستقیم صورت مى گیرد. این دیواره هاى آتش در لایه سوم دیواره آتش عمل مى کنند، بنابراین مى توانند بر داده هاى ارسالى در لایه کاربرد نیز نظارت داشته باشند. دیواره هاى آتش مبتنى بر پروکسى باعث ایجاد دو ارتباط مى شود:
? - ارتباط بین مبدا و پروکسى
? - ارتباط بین پروکسى و مقصد حال اگر هکر بخواهد ماشین هدف در داخل شبکه را مورد ارزیابى قرار دهد در حقیقت پروکسى را مورد ارزیابى قرار داده است و نمى تواند از داخل شبکه اطلاعات مهمى به دست آورد. دیواره هاى آتش مبتنى بر پروکسى به حافظه بالا و CPU بسیار سریع نیاز دارند و از آنجایى که دیواره هاى آتش مبتنى بر پروکسى باید تمام نشست ها را مدیریت کنند گلوگاه شبکه محسوب مى شوند. پس هرگونه اشکال در آنها باعث ایجاد اختلال در شبکه مى شود. اما بهترین پیشنهاد براى شبکه هاى کامپیوترى استفاده همزمان از هر دو نوع دیواره آتش است. با استفاده از پروکسى به تنهایى بارترافیکى زیادى بر پروکسى وارد مى شود. با استفاده از دیواره هاى هوشمند نیز همانگونه که قبلاً تشریح شد به تنهایى باعث ایجاد دیواره نامطمئن خواهد شد. اما با استفاده از هر دو نوع دیواره آتش به صورت همزمان هم بار ترافیکى پروکسى با حذف بسته هاى مشکوک توسط دیواره آتش هوشمند کاهش پیدا مى کند و هم با ایجاد ارتباط واسط توسط پروکسى از خطرات احتمالى پس از ایجاد ارتباط جلوگیرى مى شود.