
Macally WIFISD2
CVE-2020-29669 の解説 by Maximilian Barz (Silky) and 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
Webインターフェースにゲストアカウントでログインします。ゲストと管理者のデフォルトパスワードは空白です。
.. 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
Webインターフェースに、「パスワードが正常に変更されました」というポップアップボックスが表示されます。
.. 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 スクリプトで自動化されています。ルートシェルを起動する(またはルートハッシュを解析する)には、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.
.. footer::
Maximilian Barz (OSCP), Email: [email protected], Twitter: S1lky_1337
Daniel Schwendner, Email: [email protected], Instagram: code_byter