Black Hat Python – ARP Cache Poisoning with Scapy

حسنًا ، أصبحت الأمور الآن مثيرة للاهتمام مع هجوم ARP السام. لقد قرأت دائمًا عن موضوع ولكن سنحت لي الفرصة على الإطلاق لتجربته. إنه نوع من الهجوم يقوم فيه فاعل ضار بإرسال رسائل ARP (بروتوكول تحليل العنوان) مزيفة عبر شبكة منطقة محلية. ينتج عن هذا ربط عنوان MAC الخاص بالمهاجم بعنوان IP لجهاز كمبيوتر أو خادم شرعي على الشبكة. يمكننا خداع هدفنا للاعتقاد بأنه يرسل حركة المرور إلى وجهتها المقصودة. يمكن خداع جدول ARP ويمكننا إدخال أنفسنا في المنتصف.

يحتفظ كل جهاز بجدول ARP ، وهو عبارة عن تعيين لعناوين MAC لعناوين IP. لكي يرسل الجهاز البيانات إلى عنوان IP آخر ، يجب أن يبحث في هذا الجدول لتحديد عنوان MAC المرتبط بعنوان IP هذا. هنا جدول ARP على جهازي:

إذا لم يكن التعيين متاحًا ، يتم بث طلب ARP. إليك طلب / رد ARP باستخدام scapy:

تم تحديد عنوان MAC 10.0.0.3 ليكون 00: 0c: 29: d4: aa: 95 ، والآن يمكن للجهاز الخاص بي إرسال البيانات عبر الطبقة 2. وهنا تكمن المشكلة: يمكن لأي شخص محاكاة هذا الرد على LAN. إذا كان بإمكانك محاكاة هذا الرد باستخدام عنوان MAC الخاص بك ، فيمكن خداع هذا الجهاز لإرسال بياناته / حركة المرور الخاصة به إليك! يمكنك أن تخطو خطوة إلى الأمام وتخدع الآلة للاعتقاد بأنك البوابة الافتراضية وفي نفس الوقت تخدع البوابة للاعتقاد بأنك الجهاز “المخدوع” ، مما يجعلك تدخل بشكل فعال في المنتصف!

هجوم السم ARP

هذا نص برمجي يمكنك استخدامه لتنفيذ هذا الهجوم. تم اختباره للاستخدام على جهاز Mac ولكن يمكنك تعديله لنظام التشغيل الخاص بك:

في البرنامج النصي ، أحاول إدراج نفسي بين 10.0.0.250 والبوابة الافتراضية: 10.0.0.1. سألتقط 1000 حزمة وأكتب إلى ملف pcap. على الجهاز الهدف (10.0.0.250) ، حاولت تسجيل الدخول إلى خادم FTP عام لمعرفة ما إذا كان بإمكاني اعتراض حركة المرور هذه. يمنحك تنفيذ هذا البرنامج النصي الإخراج التالي:

النظر في حركة المرور التي تم التقاطها / تم اعتراضها:

نجاح! من الواضح أن معظم حركة المرور مشفرة ولهذا السبب اختبرت باستخدام FTP بنص واضح. أردت فقط إثبات أن هجوم “الرجل في المنتصف” هذا ممكن ويمكن تحقيقه بسهولة إذا كان هناك ممثل ضار على شبكتك!