CVE-2020-29669 漏洞分析 by Maximilian Barz (Silky) and Daniel Schwendner (code-byter)
==========================
本文是关于利用 Macally WIFISD2-2A82 旅行路由器(固件版本:2.000.010)的漏洞分析。Guest 用户可以重置自己的密码。该过程存在一个漏洞,可被利用来接管管理员账户并获得 shell 访问权限。由于 admin 用户可以读取 /etc/shadow 文件,因此可以导出每个用户(包括 root)的密码哈希。root 哈希很容易被破解,从而导致整个系统被完全攻陷。所有这些都源自那个本应提供给访客使用的 guest 账户。
.. image:: images/router.jpg :width: 1200
受影响文件:/protocol.csp
.. image:: images/base.png :width: 1200
在 Web 界面上以 guest 账户登录。guest 与 admin 的默认密码均为空。
.. image:: images/web_login.png :width: 1400
|
认证成功后,应会显示类似如下界面。
.. image:: images/dashboard.png :width: 1200
| | |
在设置菜单中进入用户管理(User manager),你可以在此更改当前用户的密码。
.. image:: images/password_change.png :width: 1800
Guest 可以重置自己的密码,填写空白字段并在 BurpSuite 中抓取请求。
.. image:: images/burp_1.png :width: 2100
将 name 的值改为 admin,然后转发该请求。
.. image:: images/burp_2.png :width: 2100
在 Web 界面中,将出现一个弹出窗口,提示“密码更改成功”。
.. image:: images/password_changed.png :width: 1400
| |
使用之前设置的密码,通过 telnet 以 admin 身份登录。
.. image:: images/telnet_login.png :width: 1200
Admin 可以读取 /etc/shadow 文件,从而泄露 root 哈希。
.. image:: images/etc_password.png :width: 1200
整个利用过程已通过 Python 脚本自动化。要生成 root shell(或破解 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],Twitter:S1lky_1337
Daniel Schwendner,邮箱:[email protected],Instagram:code_byter