Firewall Fundamentals

Firewall Fundamentals

مقدمة

تعريف بسيط : الـ Firewall أو ما يسمى بالعربية الجدار الناري هو عبارة عن جهاز (Hardware) أو نظام (Software) يقوم بالتحكم في مسيرة و مرور البيانات (Packets) في الشبكة أو بين الشبكات و التحكم يكون إما بالمنع أو بالسماح , غالبا يستخدم عند وجود الإنترمن و التعامل مع بروتوكولات الـ TCP/IP و لكن ليس شرطا .

قبل أن نتكلم بتفصيل عن الجدران النارية يجب أن أذكر بعض صفاته أو بالأصح …
ماذا يستطيع أن يفعل الفايروول ؟
– إن الفايروول يعتبر النقطة الفاصلة اللتي تبقي الغير مصرح لهم بدخول الشبكة من الدخول لها و التعامل معها بشكل مباشر و التتي تقلل من استغلال ثغرات هذه الشبكة و خدماتها كـ IP spoofing , ARP spoofing , Routing attacks , DNS attacks
– يحدد

الفايروول إتجاه البيانات الصادة والواردة من و إلى الشبكة.
– يحدد
الفايروول الأنظمة الموثوقة أو ( Trusted Systems ) و هو الجهاز أو الشبكة أو النظام الموثوق بهم و اللتي يُسمح لها بالتعامل مع الشبكة الداخلية المحمية .
– يقوم
الفايروول بمراقبة البيانات العابرة من و إلى الشبكة و أيضا تسجيل و تتبع الأحداث و التنبيه عن أي أخطار أو أحداث غريبة تحصل .
– يقدم
الفايروول موثوقية التعامل مع بعض بروتوكولات الإنترنت و يقوم بأشياء أخرى تخدم مستخدمين الشبكة المتصلين بالإنترنت كتوفير العتواين (NAT) و حارسا لمنافذ الأشبكة (PAT) , و أيضا يستطيع أن يعمل كذاكرة للمواقع اللتي تم زيارتها لتسريع الوصول إليها فيما بعد لكامل الشبكة ( Cash ) .
– يخدم
الفايروول أيضا سبل الإتصال الأمن المتعددة مثل IP-sec و  VPN .

و الأ سنذكر لن نقول عيب

الفايروول بس هو …
ما اللذي لا يستطيع أن يفعله
الفايروول ؟
– لا يستطيع الفايروول الحماية ضد الهجمات اللتي تعبر الفايروول نفسه و التتي تعتمد على ثغرات في بروتوكولات لا تستطيع الشبكة الإتسغناء عنها .
– لا يستطيع
الفايروول الحماية من المخاطر اللتي داخل الشبكة نفسها أي من الأفراد اللذين هم بطيعة الحال داخل الشبكة و قد حصلوا على تلك اللثقة اللتي جعلتهم في داخل الشبكة المحمية .
لا يستطيع الفايروول الحماية من الفايروسات و الديدان و الإتصال العكسي في الشبكة و اللتي تنتشر بسرعة و تسبب خطورة على كامل الشبكة الداخلة حيث تنتقل عبر الرسائل و مشاركة الملفات الخبيثة .

# خصائص الجدار الناري ( Firewall Characteristics )

سنقسم شرح خصائص الفايروول إلى قسمين لتوضيح فكرته في العمل :

1/ أهداف تصيميم الفايروول
2/ التقنيات التي يستخدمها الفايروول في التحكم

1/ أهداف تصيميم الفايروول
– كل البيانات الداخلة و الخارجة من و إلى ( كارت الشبكة – على مستوى الجهاز الواحد أو على مستوى الشبكة – ) يجب أن تمر بالفايروول أولا قبل الانتقال للطرف الأخر .

– يكون التحكم في البيانات عن طريق استثنائها أو استئصالها من و إلى الشبكة و متطلبات الشبكة و اللتي يراها مدير الشبكة هي اللتي تحدد تلك القواعد .
– أن يكون الفايروول نفسه محصن ضد الاختراق مما يضمن لمستخميه الثقة للاستعماله لحماية شبكاتهم و أنظمتهم .

2/ التقنيات التي يستخدمها الفايروول في التحكم

يستخدم الفايروول أربع أنواع للتحكم بالوصول إلى الشبكة و اللتي تسمى Access Control و اللتي تستخدم غالبا التحكم في الخدمات اللتي تسمح بالوصول للشبكة للتحكم بالوصول من و إلى الشبكة و لكن هذه ليست الطريقة الوحيدة و سنذكر الطرق الأخرى و هي …

* Service Control
يحدد الفايروول أنواع خدمات الإنترنت و اللتي تستطيع عن طريقها الوصول من و إلى الشبكة (Inbound , Outbound traffic) . و قد يقوم الفايروول باستثناء أو استئصال البيانات العابرة سواء الخارجة أو الداخلة بالاعتماد على IP address و أيضا بالـ  TCP/UDP ports و ذلك بإجبار أجهزة الشبكة باتباعهم Proxy  (البروكسي هو عنوان الفايروول سيرفر و اللذي توجد فيه قواعد مرور و حجب الخدمات و المواقع و غيرها) حيث بدونه لن تستطيع الحصول على إنترنت مثلا .

* Detection Control
بحدد الفايروول هنا اتجاه الخدمات العابرة من و إلى الشبكة و اللتي يتحكم بها عن طريق السماح بالطلبات و تلبيتها و بهذا يحدد إتجاه البيانات المستثناه و المستأصلة .

* User Control
يحدد الفايروول هنا المستخدمين اللذي يسمح لهم بالوصول لمكان معين بوضع اسم مستخدم و كلمة مرور و يحدد لهم استخدامات معينة و غالبا تطبق على المستخدمين داخل الشبكة مثل أن يسمح (أو يجبر) باستخدام VPN  أو IPsec  و غيرها .

* Behavior Control
هنا يحدد سلوك استخجام خدمة معينة بطريقة معينة . مثال : أن لا يسمح لعمية الـ Ping أو بروتوكول ال  ICMP بالتكرار أكثر من أربع مرات و أن تكون حجم حزمة البيانات المرسله فيه لا تزيد عن 156 كيلو بايت من نفس ال IP مثلا أو أن يمنع رسائل السبام من الوصول إلى الـ Mail Server  أو أن يمنع تصفح بعض المواقع أو يحدد لتصفحها وقت معين وهكذا .

# أنواع الجدران النارية (Types of Firewalls)

هناك ثلاث أنواع للجدران النارية سنوضحها بالرسم و الشرح …
1/ Packet-Filters Router

2/ Application-Level Gateway

3/ Circuit_Level Gateway


1/ Packet-Filters Router


عبارة عن مجموعة قواعد (Roles) توضح للبيانات الواردة (incoming PKTs) و الصادرة (outgoing PKTs) حيث هي اللتي تحدد قرار البيانات إما بالتمرير أم بالطرد أو التجاهل , و سنذكر سبب هذه التسمية بنفصيل معنى كلمات الإسم نفسه لنعرف سبب التسمة .

Routerسمي بذلك لأن طريقة عملة شبيهة بطريقة الراوتر في تمرير و رفض البيانات على الإتجاهين الصادر و الوارد من و إلى الشبكة الداخلية .
Packet-Filterقد يفهم أغلبنا الفلترة تعني الاستئصال على الإطلاق لكن الصحيح في الفلترة هي إما الاستئصال أو الاستثناء , فالاستئصال يعني السماح للك و منع البعض , اما الاستثناء فيعني منع الكلم و السماح للبعض و طبعا كلتا الحالتين يجب أن تطبق عليها القواعد Roles الموضوعه من دير الشبكة .

Source IP address : أي عنوان الجهاز أو الشبكة المنتجة (المُرسل) لحزمة البيانات نفسها و اللتي تقوم بإرسالها لجهاز أو شبكة أخرى .

Destination IP adress : أي عنوان الجهاز أو الشبكة المستقبلة (المرسَل إليه) حزمة البيانات و اللتي تم إراسلها من جهاز أو شبكة بغض النظر عن عنوان المرسل .

Source and Destination Transport-Level address : و هنا في الحقيقة يعتمد على منافذ البروتوكولات في تحديد قواعده مثل : TCP/UDP ports numbers و اللتي ينتج عنها التحكم في التطبيقات المارة نم و إلى الشبكة مثل : Telnet, http , SMTP .

IP protocol field : و هنا يعتمد في تحديده على البروتوكولات اللتي تعمل في Trasport Layer من OSI .

Interface : و يعتمد هنا على كارت/كروت الشبكة المتصلة بالجهاز/الشبكة و يحدد ما يمر منها و إليا في قواعده .

ملاحظة :
أن أول قاعدة ثابتة في جميع الفايروولات هي قاعدة إفتراضية و هي (كل شئ ممنوع)  أو (deny/Block) حيث هذه القاعدة الأكثر أمانا على الشبكة و من ثم يقوم مدير الشبكة بالسماح فقط لما يريد .
إن القواعد تطبق في الفايروول من الأعلى إلى الأسفل حيث القاعدة الأحدث هي الأعلى أي هي من ستطبق أولا .
لا فائدة من تطبيق نفس القاعدة مرتين متتاليتين .
غالبا تكون القواعد الدنيا أقل صرامة من اللتي فوقها وليس شرطا .

>> نقاط الضعف في نوع Packet Filter Firewall <<
بسبب أن الفايروولات في هذا النوع لا تنظر إلى البيانات المتبادلة في التطبيقات العليا في OSI Layers فهي لا تستطيع منع التطبيقات اللتي تستغل ثغرات البرامج اللتي تعمل في هذه الطبقة , مصل أن الفايروول لا يستطيع أن يمنع أوامر محددة من التنفيذ و اللتي تصدر إلى النظام إذا كان يسمح بالــ Telnet,SSH فلا يستطيع الفايروول أن يتحكم في الأوامر نفسها حيث أنه بعد السماح لمنفذ البروتوكول نفسه لا ينظر ماذا يمرر من بيانات (أوامر) .
يسبب أن الفايروول لا يتسطيع الحصول إلا على معلومات محدودة , فإن تحكمه بالوصول يكون تقليدي جدا و محدود حيث كما قلنا أنه يعتمد على (source ,destination , traffic type)
هناك ثغرات خطيرة في البروتوكولات اللتي لا غنى عنها و اللتي غالبا يجب السماح لها  و اللتي تعمل في الطبقة الثالثة (Network layer) و اللتي تعتمد فيها هذه الثغرات على عمليات الـ (Routing, addressing) .
من السهل جدا حدوث خطأ في وضع القواعد للفايروول حيث يسمح لعناوين و خدمات يجب أن لا يسمح لها بالوصول إلى الشبكة و التعامل معها خلافا لقواعد الحماية المطلوبة في هذه الشبكة .

2/ Application-Level Gateway

أو ما يسمى بالـ Proxy Server حيث يعمل كمنظم للطبقة السابعة من OSI (Application Layer) , حيث يخرج المستخدم للعالم الخارجي عن طريق الـ Gatewy باستخدام تطبيقات TCP/IP مثل الـ FTP,Telnet حيث الـ Gateway تسأل المستخدم اللذي يريد الاتصان عن اسم المستخدم و كلمة المرور للمصادقة لكي يتم إكمال الاتصال و حينها تتطابق بالصواب فإن الاتصال يتم فإذا كانت الخدمة لم يتم تعريفها في ال Proxy server فإن الاتصال أو الخدمة المطلوبة لن يتم إتمامها و من هذه الخاصية فإن مدير الشبكة يستطيع بالسماح فقط للخدمات اللتي يريد تداولها و استخدامها و منع البقية كلها . يميز هذه الطريقة هو أنها تسمح بمراقبة و تسجيل كل ما يحصل في كل التطبيقات العليا و السفلى .

>> نقاط الضعف في نوع Application Level Gateway <<
إن أكبر و أخطر نقطة ضعف في هذا النوع هو أنه يعمل عمليات معالة أكثر بكثير من سابقة و أنه يحمل السيرفر حملا زائدا مما يؤثر على كفائته هند زيادة الضغط عليه حيث يقوم بفحص كل التطبيقات و مراقبتها الصادر منها و الوارد حيث يراقب اتصال الـTCP  بشكل  end-to-end .

3/ Circuit_Level Gateway

هذا النوع الثالث من أنواع الفايروول و اللذي يعتمد في فكرته على أنه يعمل كبوابه عبور Gateway و لكن في حالة تأهب ولا تعمل مصل التوع الثاني Applicatin level Gateway حيث الأخير يضل يعمل و يراب الاتصال حتى بعد السماح له بالاتصال , أم هذا النوع يعنمد في عمله على أنه عندما يقوم طربف بطلب الاتصال بطرف آخر  – لنفرض أن جهاز من داخل الشبكة أرد الاتصال بجهاز من خارج الشبكة – فإن هذا النوع يقوم بفتح اتصال بينه و بين الجهاز اللذي من داخل الشبكة , ثم يقوم بنفسه بإنشاء اتصال بينه و بين الجهاز اللذي خارج الشبكة ثم بعد ذلك يت توصليهما ببعضهما و يترك الاتصال حرا لهما دون الاضطلاع على البيانات المرسلة داخل هذا العتوات من الاتصال و يكون تلبية حاجة الحماية هنا عن طريق النظر إلى القواعد – هل تسمح بالاتصال أم لا – فإن كانت تسمح فإنه يتم الاتصال بنجاح و يترك لهما الاتصال براحه تامة .

ملاحظة :
إن استخدام هذا النوع من الفايروول يستخدمه مدير الشبكة عندما يكون هناك ثقة بينه وبين مستخدمين الشبكة الداخلية .
يستطيع هذا النوع العمل أيضا كــ Proxy server للشبكة الداخلية و Circuit-level Gateway للشبكة الخارجية . بهذه الطريقة يكون قد قلل الحمل على السيرفر و مراقبة كل الاتصالات و الطلبات .
إن من أشهر و أقوى الأمثلة على Circuit-level Gateway هو الــ SOCKS

ما هو الـــ SOCKS ؟
هو بروتوكول وضع و صمم لينتج طريقة اتصال محددة بين برامج الجهاز الخادم و العملي Clint-Server-Applications على بروتوكولات TCP و  UDP لكي يؤمن الاتصال بين الأجهزة المستخدمة لتلك البروتوكولات )

يحتوي الــ SOCKS على المحتويات التالية :
SOCKS server : و اللذي يعمل على أي بيئة أساسها بية UNIX .

– SOCKS Client liberary : و اللتي تعمل على الأجهزة اللتي في الشبكة الداخلية المحمية بالفايروول .

– SOCKS – ified : و هي عبارة عن التطبيقات اللتي يتداولها أجهزة العملاء مثل FTP,Telnet .
و إليكم خطوات التعامل معه
^ عندما ينوي الـ (TCP-based client) أو
العميل المعتمد على بروتوكول TCP فتح اتصال جديد بينه و بين جهاز آخر بمكن الوصول إلي فقط عن طريق الفايرول فإنه يجب فتح إتصال من بروتوكول الـ TCP و بتحديد منفذ له في خدمة الـ SOCKS server .
^ إن منفذ خدمة الـ SOCKS في الاتصال عن طريق TCP هو منفذ رقم  1080
^ إذا كان طلب العملي مقبول , فإن العميل يدخل في مفاوضة لإتمام المصادقة بينه و بين الخادم على طريقة خروجه للعالم الخارجي , ثم بعد ذلك يتم الاتصال .
^ تتم نفس الخطوات السابقة على بروتوكول الــ  UDP .

سنتكلم الأن عن نقطة أخرى متعلقة بموضوعنا ألا و هو Bastion Host  :

ما هو الـــ  Bastion Host ؟

هو نظام بتم تعريفه من مدير نظام الفايروول على أنه نقطة حرجة و خطيرة في الشبكة و اللتي تحتاج إلى حماية أكثر منها أو عليها من بين نقاط الشبكة كلها . إن الــ Bastion host بخدم كمنصة عمل (Platform) للــ Application level أو Circuit-level Gateway . هناك خصائص رئيسية للـ Bastion Host و هي :

Bastion Hardware : منصة تعمل على إصدارة من نظام التشغيل يستطيع أن يلبي إحتياجاتها مثل PIX,ASA .

لا أحد يستطيع تثبيت و تشغيل الحدمات عليها إلا مدير الشبكة و اللتي تتضمن خدمات الـ Proxy  و البروتوكولات اللتي تعمل كتطبيقات و غيرها مثل telnet, SMTP,FTP و أيضا الــDNS و أيضا يتولى المصادقة في هذه الخدمات كلها و غيرها .
إن مستخدمين الـ Proxy يحتاجون مصادقة أكثر لكي يسمح لهم باستخدامه بالاضافة إلى أن كل  proxy server يحتاج أيضا إلى مصادقة قبل السماح للمستخدمين باستخدامه .
تستطيع أيضا أن تحدد نوع أنظمة التشغيل اللتي تعمل و تقوم بالمصادقة معه , و هذا يعني تحديد الأوامر و الخدمات اللتي تعمل مع البروتوكولات عبر الشبكة .
يستطيع البروكسي جمع و تتبع و كراقة البيانات و تسجيلها .
إن برامج البروكسي اللتي توصع و تنصب على سيرفراتها بسيطو و خفيفة على النظام و سهلة التعامل معها .
تستطيع الــ Proxy server أن ترتبط ببعضها البعض و لا يؤثر ذلك على كفائتها و عن حاجة مدير الشبكة لإضافة (منع/سماح)  أي خدمة جديده فإنه يعتبر أمرا سهل جدا حتى و إن وجدت نقطة حرجة Bastion host .

إن استخدام البروكسي في الشبكة بالنسبة للمسنخدمين لا يعطيهم أي صلاحيات في منطقة الـ  Bastio ohst .

من أمثلة الفايروولات :
IPtables >> Linux
PIX >> Cisco
ASA >> Cisco
ISA >> Microsoft
Juniper firewall >> juniper


6 آراء على “Firewall Fundamentals

  1. جزاك الله كل خير
    وربنا ييسرك الحال واراك وقد حققت حلمك

  2. جزاكم الله خيراً يا ابو الصبر

    موضوع متكامل واكثر من رائع

    وكنت مستنية من زمان زى ما انت عارف

    هيفيدنى ان شاء الله فى مشروعى

    دعواتك يا صاحبى

    اخوك ومحبك فى الله

    Br1ght D@rk

  3. Br1ght D@rk ## إزييك يا صديقي أخبارك إيه ؟
    يا رب يفيدك و أي سؤال أنا تحت أمرك و ربنا يقويك و يعنيك في الجامعه

  4. السلام عليكم و رحمة الله و بركاته
    حياك الله
    أخي الحبيب , الله يهديك … عذبني تناسق الالوان.. فارهقني و ما وجدت لقراة موضوعك سبيل..
    بارك الله فيك حاول ان تختار الاوان الفاتحة و القريبة من الابيض… حتى تسهل قراءة الموضوع
    السلام عليكم

  5. شكرا ً اخي الكريم على هذه المقالة المفيدة جدا ً
    احب اخذ رئيك في جدار الحماية comodo
    مارئيك فيه هل تراه جدار حماية فعال

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *