م.هاشم الشريف
م.هاشم الشريف

@hashimalshareef

34 تغريدة 7 قراءة Jan 10, 2024
تحليل الحزم : يشار إليه غالبا باسم (packet sniffing) أو (protocol analysis) وهو عبارة عن عملية التقاط وتفسير البيانات الحية أثناء تدفقها عبر الشبكة وذلك من لغرض فهم أوضح لما يحدث على تلك الشبكة
يمكن أن يساعد تحليل الحزم في:
١) فهم خصائص الشبكة
٢) معرفة المتواجدين على شبكة
٣) تحديد من أو ما الذي يستخدم النطاق الترددي المتاح
٤) تحديد ومعرفة أوقات الذروة لاستخدام الشبكة
٥) تحديد الأنشطة الضارة
٦) العثور على التطبيقات غير الآمنة
يتضمن تحليل الحزم تعاوناً بين البرامج والأجهزة ويمكن تقسيمه إلى ثلاث خطوات:
١) الجمع
٢) التحويل
٣) التحليل
١) الجمع: وفيه يتم جمع البيانات الثنائية الخام وعادة ما يتم ذلك عن طريق تغيير واجهة الشبكة المحددة إلى الوضع (promiscuous mode). وفي هذا الوضع يمكن لبطاقة الشبكة الاستماع إلى جميع حركات مرور البيانات على جزء الشبكة وليس فقط حركة المرور الموجهة إليها.
٢) التحويل: بعد ذلك يتم تحويل البيانات الثنائية الملتقطة إلى نموذج قابل للقراءة. في هذه المرحلة ، لا يمكن تفسير بيانات الشبكة إلا على مستوى بسيط للغاية تاركاً العبء الأكبر وغالبية التحليل للمستخدم النهائي الذي يقوم بالتحليل.
٣) التحليل: هنا يقوم المحلل للحزم بتحليل البيانات الملتقطة والمحولة ويتحقق من بروتوكول بيانات الشبكة التي تم التقاطها بناء على المعلومات المستخرجة ويبدأ تحليله للميزات المحددة لهذا البروتوكول.
البروتوكول: يمكن أن يكون بسيط للغاية أو معقد للغاية وذلك اعتمادا على وظيفته. وعلى الرغم من أن (البروتوكولات) قد تختلف اختلافا كبير إلا أن العديد منها يعالج المشكلات التالية:
١) بدء الاتصال
٢) التفاوض
٣) تنسيق البيانات
٤) اكتشاف الاخطاء
٥) إنهاء الاتصال
١) بدء الاتصال: هل العميل أو الخادم من يبدأ الاتصال؟ ما هي المعلومات التي يجب تبادلها قبل الاتصال؟
٢) التفاوض: على خصائص الاتصال هل اتصال البروتوكول مشفر؟ كيف يتم نقل مفاتيح التشفير؟
٣) تنسيق البيانات: كيف يتم تنظيم البيانات الموجودة داخل الحزمة؟ بأي ترتيب تتم معالجة البيانات؟
٤) اكتشاف الأخطاء وتصحيحها: ماذا يحدث في حالة استغراق الحزمة وقتا طويلا للوصول؟ كيف يتجاوز العميل مشكلة صعوبة إنشاء اتصال مع خادم لفترة قصيرة؟
٥) إنهاء الاتصال: كيف يشير أحدهما للآخر إلى أن الاتصال قد انتهى؟ ما هي المعلومات النهائية الواجب إرسالها من أجل إنهاء الاتصال بأمان؟
يتم التفريق بين البروتوكولات وفقا لوظائفها بناء على النموذج المرجعي OSI وهذا النموذج الهرمي يتكون من سبع طبقات مفيدة جدا لفهم اتصالات الشبكة
طبقة التطبيق (الطبقة 7) توفر الطبقة العليا من نموذج OSI وسيلة للمستخدمين للوصول إلى موارد الشبكة. هذه هي الطبقة الوحيدة التي يراها المستخدمون النهائيون عادة لأنها توفر الواجهة التي تعد الأساس لجميع أنشطة الشبكة الخاصة بهم.
طبقة العرض (الطبقة 6) تقوم هذه الطبقة بتحويل البيانات التي تتلقاها إلى تنسيق يمكن قراءته بواسطة طبقة التطبيق تتعامل طبقة العرض أيضا مع عدة أشكال من التشفير وفك التشفير المستخدمة لتأمين البيانات.
طبقة الجلسة (الطبقة 5) تدير هذه الطبقة الحوار أو الجلسة بين جهازي حاسب. يقوم بإنشاء هذا الاتصال وإدارته وإنهائه بين جميع أجهزة الاتصال وهي مسؤولة أيضا عن تحديد ما إذا كان الاتصال ثنائي الاتجاه أو أحادي الاتجاه وعن إغلاق الاتصال بأمان بين الأجهزة بدلا من قطعه فجأة.
طبقة النقل (الطبقة 4) الغرض الأساسي منها هو توفير خدمات نقل بيانات موثوقة للطبقات السفلية وذلك من خلال التحكم في التدفق والتجزئة وإلغاء التجزئة والتحكم في الأخطاء فهي تتأكد من انتقال البيانات من نقطة إلى أخرى بدون أخطاء.
طبقة الشبكة (الطبقة 3) هي واحدة من أكثر طبقات OSI تعقيدا فهي مسؤولة عن توجيه البيانات بين الشبكات الفعلية فهي ترى العنوان المنطقي على الشبكة من خلال عنوان IP وتعمل أجهزة التوجيه في هذه الطبقة.
طبقة ارتباط البيانات (الطبقة 2) توفر هذه الطبقة وسيلة لنقل البيانات عبر شبكة فعلية والغرض الأساسي منها هو توفير نظام عنونة يمكن استخدامه لتحديد الأجهزة المادية مثل عناوين MAC والمبدلات (Switch) تعمل في هذه الطبقة.
الطبقة المادية (الطبقة 1) الطبقة الموجودة في الجزء السفلي من نموذج OSI هي الوسيط المادي الذي يتم من خلاله نقل بيانات الشبكة وتحدد هذه الطبقة الطبيعة الفيزيائية والكهربائية لجميع الأجهزة المستخدمة فهي تنشئ الاتصالات وتنهيها وتحول الإشارات من الرقمية إلى التناظرية والعكس صحيح.
تقوم البروتوكولات الموجودة في طبقات مختلفة من نموذج OSI بتمرير البيانات بين بعضها البعض مستخدمةً تغليف البيانات (encapsulation) فكل طبقة مسؤولة عن إضافة رأس أو تذييل إضافي من المعلومات والتي تسمح للطبقات بالاتصال بالبيانات التي يتم نقلها.
يسمى هذا الجهاز بالـ Hub ويعمل على الطبقة المادية لنموذج OSI وعندما يرسل أي كمبيوتر بيانات فستستقبلها جميع الأجهزة المتصلة بلوحة التحكم ومع ذلك ويتعامل معه فقط الكمبيوتر المقصود وتتجاهله الأجهزة الأخرى
يسمى هذا الجهاز بالـ Switch وعلى خلاف سابقة لا يبث البيانات إلى كل منفذ بل يرسل البيانات إلى الكمبيوتر المقصود فقط وهي قادرة على تحديد الأجهزة بشكل دقيق بناء على عناوين MAC الخاصة بها مما يعني أنها تعمل على طبقة ارتباط البيانات لنموذج OSI
يسمى هذا الجهاز بالـ Router وهو جهاز شبكة متقدم يتمتع بمستوى وظائف أعلى بكثير من سابقيه فهي تعمل في الطبقة 3 من نموذج OSI وتكون مسؤولة عن إعادة توجيه الحزم بين شبكتين أو أكثر. تسمى العملية التي تستخدمها أجهزة التوجيه لتوجيه تدفق حركة المرور بين الشبكات بالتوجيه
بعد معرفة 👆🏻 الأجهزة السابقة : لماذا يعتبر تحليل الحزم أو الـ (Sniffing) على شبكة تحوي أجهزة Hub مثبتة حلماً يتمناه أي محلل حزم؟
وهنا تكمن ميزة الـ Switch والتي تعتبر أكثر أنواع أجهزة الاتصال شيوعا في الشبكات الحديثة فهي توفر طريقة فعالة لنقل البيانات عبر (broadcast) و (unicast) و (multicast) وتسمح بالاتصال المزدوج الكامل مما يعني إمكانية إرسال البيانات واستلامها في نفس الوقت.
مع مميزات الـ Switch المذكورة 👆🏻 إلا أنها تمثل تعقيداً بالنسبة لمحللي الحزم فعند الاتصال بمنفذ على Switch يمكن رؤية حركة مرور البث فقط وحركة المرور المرسلة والمستلمة بواسطة الجهاز المتصل بالمحلل للحزم.
هل يناسب لمحلل الحزم أن يشبك جهازه في أي مكان في الشبكة ؟ أم أن الموضوع يحتاج إلى عناية وتفكير؟
حتى أكمل الحديث مهم أن نتذكر الـ ARP لأنه لاعب أساسي معنا
لالتقاط حركة مرور البيانات من جهاز مستهدف على شبكة (switched network) نحتاج إلى اتخاذ خطوة أساسية ويمكن أن تكون واحدة من أربعة طرق رئيسية لالتقاط البيانات:
1.Port mirroring
2.Hubbing out
3.Using a tap
4.ARP cache poisoning
Port mirroring
فيها يجب من :
١) إمكانية الوصول إلى سطر الأوامر أو واجهة إدارة الويب للـ Switch الذي يوجد عليه الكمبيوتر المستهدف
٢) أن يكون الـ Switch يدعم الـ Port mirroring
٣) وجود منفذ متاح على الـ Switch يمكن من خلاله توصيل الجهاز.
لتفعيل الـ Port mirroring نفرض على الـ Switch أن يقوم بنسخ كل حركة مرور البيانات على منفذ محدد ويرسلها إلى منفذ آخر فمثلاً لالتقاط كل حركة المرور المرسلة والمستلمة من جهاز مرتبط بالمنفذ رقم 3 أقوم كمحلل للحزم بتوصيل جهازي بالمنفذ رقم 4 وطلب النسخ المطابقة لكل ما يحدث في منفذ 3
Hubbing out
وفيها تحتاج إلى وضع الجهاز المستهدف وجهازك كمحلل للحزم على نفس جزء الشبكة وذلك عن طريق توصيلهما سوياً بـ Hub
خطوات تنفيذ الـ Hubbing out:
١) ابحث عن الـSwitch الذي يوجد عليه جهاز المستهدف وافصله من الشبكة
٢) أوصل كبل شبكة لجهاز الهدف بالـ Hub الذي أحضرته معك
٣) أوصل كبل آخر يربط جهازك كمحلل للحزم بالـ Hub
٤) أوصل كبل شبكة من الـ Hub إلى الـ Switch
Using a tap
وفيه نستخدم أداة نقوم بوضعها بين جهازين وذلك ضمن نظام الكابلات لغرض التقاط الحزم بين هاذين الجهازين. وهناك نوعان أساسيان من هذه الأداة:
١) مجمعة (aggregated)
٢) غير مجمعة (nonaggregated)
الفرق الأساسي بينهما هو أن الغير مجمع (nonaggregated) يحتوي على أربعة منافذ ويتطلب واجهات منفصلة لمراقبة حركة المرور ثنائية الاتجاه بينما يحتوي المجمع (aggregated) على ثلاثة منافذ فقط ويمكنه المراقبة ثنائية الاتجاه بواجهة واحدة فقط.

جاري تحميل الاقتراحات...