هناك الكثير من التقريرات العلمية تم نشرها من قبل منظمات أمنية عالمية تحدثت حول مجموعة من الثغرات  الأمنية التي تعرض الروترات المنزلية لمخاطر تتنوع بين كشف معلومات حساسة عن المستخدمين حتى اختراق الشبكة التي تستخدم الروترات كبوابة لعالم الانترنت بشكل كامل وإليكم بعض التقارير :

إضغط هنا
إضغط هنا
حسنا فلنبدأ اللعبة:
جمع المعلومات عن الراوتر
أولا:الفحص وتقفي الأثر

الحصول على public ip لراوتر ليس بأمر صعب أي شخص يمكن بعدة ضغطات فحص نطاقات بشكل عشوائي وسيجد آلاف الروترات التي يمكنه عمل access عليها .
حسنا إلى هنا الكلام جيد معظم الراوترات لن تحتاج منك جمع أي معلومات للولوج لها فمعظمها تم اعداد اليوزر والباسورد على الوضعية الافتراضية admin:adminمثلا.
لكن لكسر الملل فقط افترض أن المستخدم وكلمة السر لم يتم اعدادهم على الوضعية الافتراضية وحاولت مرارا وتكرارا الولوج للروتر لكنك لم تنجح هنا يأتي دور جمع المعلومات لنعرف مقدار المعلومات المتاحة لنا عن الراوتر المستهدف وهل هناك مايمكن أن يفيدينا في محاولة الاختراق ؟
بداية  بعد محاولتك الفاشلة للولوج عبر واجهة الويب الخاصة بالرواتر غالبا ماستظهر لك رسالة خطأ ستعطيك نوع الويب السرفر الذي يستضيفه الراوتر ونوع الراوتر على سبيل المثال روترbroadcom والـ embedded web interface يكون Micro_httpd وهذا هو أول فيض المعلومات القيمة التي قدمها لك الرواتر المستهدف.
أيضا بالتأكيد يمكننا عمل فحص بسيط للخدمات التي تعمل على الرواتر بالطبع هناك الكثير من الأدوات التي تقوم بهذه المهمة بكل يسر وسهول طبعا مثل nmap ولنفرض أننا فحصناه ووجدنا المنافذ والخدمات التالية:

طبعا سيتبادر للذهن حصلت على الخدمات المفتوحة عبر الراوتر كالـtelnet -ftp-http-ssh ولكن مرحى لانملك الباسورد اممم حسنا تذكرت اني قلت لك أني افترضت وجود الباسورد كسرا للملل فلاتستعجل الأمور.
الآن حصلنا على نوع الراوتر و نوع الويب السرفر المدمج مع الراوتر وانواع الخدمات التي تعمل عليه اذا حان وقت جرد المعلومات من الخدمات التي حصلنا عليها لنتعرف على طبيعة الهدف أكثر.

ثانيا:الجــردEnumeration
جرد البينات من بروتوكول UPnP :
هناك الكثير من الأدوات لهذا الغرض أشهرها اداة msearch في الميتاسبلويت

بعد أن قامت الأداة بفحص بروتكول UPnP عرضت لنا ملف xml  هذا الملف بغض النظر عن اسمه عندما تقوم بالولوج إليه عن طريق المتصفح ستجد الكثير من المعلومات القيمة نوع الراوتر الـuuid الـخدمات التي يقدمها لنا الراوتر عن طريق هذا البروتوكول والكثير من المعلومات القيمة جدا جدا جدا كيف نستخدم هذه المعلومات اممم لاتستعجل سنتحدث عن هذه الامور فيما بعد.

أمور اخرى :
حاول أن تعرف إصدارات الخدمات الاخرى التي تعمل على الراوتر وتتعرف على طبيعتها اكثر حاول ان تجمع معلومات من الشركة المصنعة عن طبيعة الراوتر المستهدف مثلا الـfrimware المنصبة عليه”معظم الراوترات المنزلية تعمل على نظام LINUX “.

محاولة الاختراق
أولاالبحث عن ثغرات للراورتر المستهدف باستخدام قواعد بيانات ثغرات مفتوحة المصدر :
هناك سكربتات متوفرة لعمل ذلك  مثلا سكربت searchsploit

يمكنك أيضا استخدام قواعد بينات الـMetasploit أيضا حاول البحث باستخدام جوجل عن المقالات والأبحاث الامنية المنشورة عن الروتر المستهدف والتي لم يقوم الباحثين بنشر استغلال الثغرات التي اكتشوفها من خلالها”ثغرات مغلقة المصدر” فهذا ايضا سيعطيك البصيرة عن مدى الاحتمالات المتاحة للاختراق.

مثال تطبيقي:
مثلا ولنفترض أن الراوتر مدمج معه الويب سرفر Rom-pager احد الثغرات الموجودة في هذا التطبيق أنه يمكن الوصول لبعض الملفات والتي يمكن أن تحوي معلومات حساسة جدا  “في الحقيقة غالبا ماتحوي معلومات كافية لاختراق الراوتر بشكل كامل”دون أي تحقق من صلاحيات الوصول للمستخدم مثلا ملف rom-0 عندما تقوم بعمل access على هذا الملف وتقوم بتحميله من الراوتر المستهدف ستجد الكثير فيه من المعلومات ولكن للأسف مشفرة ولكن لاتقلق تم تطوير عدة ادوات ومشاريع للتعامل مع هذه المشكله أشهرها مشروع routerpwn والذي يحتوي أداة

” ZynOS (Huawei) Configuration Decompressor”

والتي من خلالها يمكن التعامل مع هذه الملفات.

 

لاحظ في الصورة من المعلومات التي حصلنا عليها بعد فك تشفير الملف كلمة السر للولوج للراوتر:).

ثانيا:استغلال خدمة UPnP
“تنبيه هذه الفقرة تحتاج فهم جيد لبروتوكول UPnP :)”
هناك الكثير من التقارير الأمنية التي نشرت عن ثغرات في هذا البروتوكول طبقا لتقرير نشره الهكر المعروف HD.Moore هناك اكثر من81 مليون راوتر معرض للاختراق بسبب هذا البروتوكول هذا الفحص تم أغلبه في كندا حسب ماتم نشره في التقرير لك أن تتخيل في عالمنا العربي كم سيكون الرقم:).
من خلال تجربة هذا البرتكول كارثة أمنية بحق فالبروتكول يعطيك تحكم شبه كامل تقريبا على الراوتر دون أي عملية تحقق من صلاحيات الوصول على و المثال:

  • كشف معلومات عن الأنظمة الداخلية على الشبكة والتي تعمل خلف الراوتر.
  • إمكانية عمل portforwarding عن بعد.
  • إمكانية معرفة معلومات الحسابات المستخدمة على الرواتر”حساب الأدمين،حساب الـDSL.
  • معلومات عن الـ routing table.
  • إمكانية التحكم في إعدادات الـDNS.
  • التحكم في إعدادت الشبكة اللاسلكية.
  • من الممكن استهداف هذا البروتكول عن طريق بوتنت لععمل عملية اختراق موسعة.
  • إمكانية استغلال أخطاء برمجية لتنفيذ rootshell عن بعد على الراوتر.

استخدام SOAP API للتحكم في الـUPnP Server:
في فقرة جمع المعلومات تحدثنا عن استخدام اداة msearch على الميتاسبلويت لاستكشاف وفحص خدمة UPnPإذا كانت تعمل أم لا على الراوتر الهدف وتعرفنا كيف سنحصل ملف الـXML الذي يحوي Description للخدمات المقدمة من خلال البروتوكول .
لكل خدمة ستجدها  في ملف الوصف مجموعة من الأوامر Action للتحكم فيها حسنا ليتضح الأمر أكثر افترض ان الراوتر الآي بي الخاص به هو 192.168.1.254 ومسار الملف الذي يحوي الوصف للخدمات:
http://192.168.1.254/upnp/IGD.xml
الآن بعد تصفح الملف عبر المتصفح مثلا حصلنا على الخدمة

لاحظ في الصورة :
نوع الخدمة  WANPPPConnnection
مسار ملف وصف الخدمة   Service Descriptor Document
http://192.168.1.254/upnp/WANPPPConnection.xml
عندما قمنا بتصفح ملف وصف الخدمة عبر المتصفح حصلنا على قائمة بالـ actions المتوفرة على هذه الخدمة وكان من ضمنها هذا الأمر الموضح في الصورة أدناه.

حسنا الآن كيف نقوم بتنفيذ هذا الـaction على الراوتر ببساطة يمكنك عمل ذلك عن طريق ارسال حزمة HTTPمتضمنة  للـ SOAP ACTION الذي نريد أن نقوم بتطبيقه على الراوتر بالاضافة إلى معلومات عن الArgument التي يمكن أن يحتاجها الACTION ليتم تنفيذه هذه صورة توضيحية لصيغة الطلب الذي سيتم إرساله.

قم بتغيير الـService type الى نوع الخدمة المستهدفة WANPPPConnection وتغيير الـaction name إلى GetExternalIPAdress ومن ثم قام بإرسال الحزمة وستحصل على حزمة الاستجابة والتي ستحوي الـExternal ip للراوتر.
الأدوات:
هناك الكثير من الأدوات التي يمكن استخدامها لهذا الغرض هناك اداة Miranda الشهيرة والتي تم كتابتها بالبايثون أو يمكنك استخدام اي Http packet crafter لكتابة الحزمة بشكل يدوي وارسالها للهدف شخصيا من الأدوات التي أستخدمها لهذا الغرض آداة burp suite المعروفة وهذه صورة لأحد التجارب التي قمت بها من خلال الآداة.

مابعد الإختراق:
الآن استطعنا الدخول لكننا مازلنا في الحدود الخارجية للشبكة الداخليةالتي تعمل خلف الراوتر كيف ننتقل إلى الداخل؟
أمم تذكر الراوتر هو نقطة المرور والوصل للبيانات من الشبكة الداخلية إلى العالم الخارجي “الإنترنت” جميع الطلبات التي تتم من داخل الشبكة الى سرفرات الـــDNS الخاصة بمزود الخدمة وأحيانا بعض الروترات ستجدها تستخدم Open Dns server كسرفرات الـDNS الخاصة بـ.”G00gle “8.8.8.8.
حسنا مرحى وماذا نستفيد؟ في الواقع لاأتوقع انك ستسأل هذا السؤال فمن البديهي أنه يمككن التلاعب في إعدادات الـDNS وتعديل IP سرفر جوجل لأي IP آخر وتقوم بتنفيذ مايسمى بهجوم DNS Rebinding Attack.

تذكرأيضا أن الراوتر ليس مجرد نقطة مرور بل أيضا حاوية لمعلومات حساسة عن الأنظمة التي تعمل على الشبكة الداخلية فمثلا يمكننا الاطلاع على الـDHCP Table ومعرفة العنوانية الداخلية وانواع الأنظمة والأجهزة التي تعمل على الشبكة الداخلية وبالتالي يمكننا مثلا عمل Forwarding  لهذه العناوين على منافذ نقوم بتحديدها من خلال الراوتر وذلك سيسمح لنا بالتواصل بشكل مباشر مع هذه الأنظمة عبر الإنترنت.

مشكلة:
الراوتر عند يتم اعادة تشغيله يتم تغير الـPUBLIC IP بالطبع يمكننا تسجيل Domain name لعنوان الراوتر وهناك الكثير من الشركات التي تقدم خدمات يمكن الاستفادة منها في هذه النقطة ومن خلال الـDomain Name يمكن التواصل مع الشبكة الهدف في أي وقت .
نقطة أخرى حاول أن تستخدم المعلومات التي تتغير في الشبكة المستهدفة كخطوط عريضة لاتتغير يمكن استخدامها للوصول للهدف في أي وقت.
مثال:
المعلومات التي حصلنا من خدمة الـ UPnP يمكننا اعتبارها معلومات ثابتة ويمكننا استخدامها كتواقيع رقمية Digital signature للوصول للهدف في أي وقت.

أخيرا:
هناك أمور أخرى لم أتحدث عنها كعمل Fuzzing للـWeb interface للراوتر او عمل هندسة عكسية للFrimeware الخاص بالراوتر وغيرها من الأمور والسبب في ذلك انها أمور متقدمة تحتاج مواضيع منفصلة كما أن الموضوع سيخرج عن كونه لعبة:).
إنتهت اللعبة
“الموضوع للأغراض العلمية فقط ”
مصادر تم الإعتماد عليها في إنشاء المقال:

  • تقارير علمية من منظمة الـBlack Hat.
  • تقارير علمية من منظمة defcon.
  • تقارير علمية من منظمة SANS.
  • موقع  upnp-hacks.org.