
Macally WIFISD2
شرح استغلال CVE-2020-29669 بقلم Maximilian Barz (Silky) و Daniel Schwendner (code-byter)
==========================
هذا شرح لاستغلال راوتر السفر Macally WIFISD2-2A82 (إصدار البرنامج الثابت: 2.000.010). يمكن لمستخدم الضيف إعادة تعيين كلمة المرور الخاصة به. تحتوي هذه العملية على ثغرة أمنية يمكن استخدامها للسيطرة على حساب المسؤول وتؤدي إلى الوصول إلى الصدفة. وبما أن مستخدم المسؤول يمكنه قراءة ملف /etc/shadow، يمكن تفريغ تجزئات كلمات المرور لكل المستخدمين (بما في ذلك root). ويمكن كسر تجزئة root بسهولة مما يؤدي إلى اختراق كامل للنظام. كل هذا من حساب الضيف الذي يُقصد منحه للضيوف.
.. image:: images/router.jpg :width: 1200
الملف المتأثر: /protocol.csp
.. image:: images/base.png :width: 1200
سجّل الدخول بحساب الضيف على الواجهة الإلكترونية. كلمة المرور الافتراضية للضيف والمسؤول فارغة.
.. image:: images/web_login.png :width: 1400
|
عند المصادقة بنجاح، ستظهر شاشة مماثلة.
.. image:: images/dashboard.png :width: 1200
| | |
انتقل إلى إدارة المستخدمين في قائمة الإعدادات، حيث يمكنك تغيير كلمة المرور للمستخدم الحالي.
.. image:: images/password_change.png :width: 1800
يستطيع الضيف إعادة تعيين كلمة المرور الخاصة به، فاملأ الحقول الفارغة والتقط الطلب في BurpSuite
.. image:: images/burp_1.png :width: 2100
غيّر قيمة name إلى admin وأرسل الطلب.
.. image:: images/burp_2.png :width: 2100
في الواجهة الإلكترونية، ستظهر نافذة منبثقة تقول "تم تغيير كلمة المرور بنجاح"
.. image:: images/password_changed.png :width: 1400
| |
سجّل الدخول كمسؤول عبر telnet باستخدام كلمة المرور التي تم تعيينها مسبقًا.
.. image:: images/telnet_login.png :width: 1200
يمكن للمسؤول قراءة ملف /etc/shadow مما يكشف تجزئة root.
.. image:: images/etc_password.png :width: 1200
عملية الاستغلال بأكملها مؤتمتة عبر سكربت Python. لتشغيل صدفة root (أو كسر تجزئة root) نفّذ macally_exploit.py.
.. code:: python
python3 macally_exploit.py 10.10.10.254
.. image:: images/exploit.png :width: 1600
إدخال CVE لدى MITRE: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-29669.
إدخال Exploit-DB: https://www.exploit-db.com/exploits/49256.
.. footer::
Maximilian Barz (OSCP)، البريد الإلكتروني: [email protected]، تويتر: S1lky_1337
Daniel Schwendner، البريد الإلكتروني: [email protected]، إنستغرام: code_byter