LAC WATCH

セキュリティとITの最新情報

RSS

株式会社ラック

メールマガジン

サイバーセキュリティや
ラックに関する情報をお届けします。

ラックピープル | 

続・NETGEAR製ルータ R7000脆弱性検証「お家のLANはプライベートですか?」

こんにちは。
JSOCのセキュリティアナリストの園田です。

12月9日に弊社の谷口が行ったNETGEAR製ルータ R7000の脆弱性検証に加えて、脆弱性が悪用された場合の問題点とファームウェアアップデートの際の注意点についてお伝えいたします。
参考)NETGEAR製ルータ R7000の脆弱性を試してみた

本脆弱性は、ルータのWeb管理ページに細工したリクエストを行う、もしくはルータのWeb管理ページにアクセス可能なユーザに細工したページにアクセスさせることで、管理者権限で任意のOSコマンドを実行されるものです。CERT/CC以外にも、JVNでも情報が公開されています。
参考)JVNVU#94858949:複数の NETGEAR 製ルータに脆弱性

再現リクエスト

http://[router-address]/cgi-bin/;telnetd$IFS-p$IFS'45'
NETGEAR製ルータのLAN側に接続したPCから、Web管理ページに上記のリクエストを送信します。攻撃が成功した場合、telnetプログラムが45番ポートで待ち受ける状態になります。telnetは認証なしで接続できました。
下図の通り、LAN側から攻撃するためには、攻撃者が直接攻撃するパターンと利用者を罠に誘導して攻撃させるパターンがあります。

能動的攻撃と受動的攻撃のイメージ

能動的攻撃と受動的攻撃のイメージ

再現リクエストの補足

Web管理ページにアクセスする場合、通常は認証としてBasic認証を通過しなければなりません。しかし、本脆弱性は認証せずとも再現することを確認しました。
ただし、初期設定では、Web管理ページには内部側であるLAN側からしかアクセスできないため、インターネット側であるWAN側からの攻撃は成功しませんでした。Web管理ページで「リモート管理機能」を有効にすると、WAN側からも攻撃が成功するようになります。(デフォルトのポートは8443番)

管理者IDとパスワードの表示

上述した再現リクエストを送信すると、LAN側(または設定によってはWAN側)からTelnetログインが可能となります。該当機器にログインを行うとBusyBox v1.7.2のbuilt-in shell(ash)が操作可能となり、/usr/sbin以下にある"showconfig"コマンドを実行すると、WLANのSSIDやパスフレーズだけでなくWeb管理ページにログインするための管理者IDと管理者パスワードが平文で表示されます。

左図:初期設定時にshowconfigを実行した結果 右図:パスワードをhogehogeに変更後showconfigを実行した結果

左図:初期設定時にshowconfigを実行した結果
右図:パスワードをhogehogeに変更後showconfigを実行した結果

Web管理画面設定可能項目一覧

Web管理ページにログインできる情報が得られるためルータの全機能を使用することが可能となります。該当機器の設定・閲覧可能項目を以下に示します。

設定

インターネット設定
ワイヤレス設定
WAN 設定
LAN 設定
QoS 設定
ゲストネットワーク

ストレージ

USBストレージ
ReadySHARE プリント
Netgear ReadySHARE Vault

セキュリティ

ペアレンタルコントロール
アクセス制御
ブロックサイト
ブロックサービス
スケジュール
メール

管理者

ルータのステータス
ログ
接続デバイス
設定のバックアップ
新しいパスワード
ルータのアップグレード

高度な設定

ワイヤレス設定
ワイヤレスAP
ワイヤレスリピーター
ポート転送/ポートトリガー
ダイナミックDNS
VPNサービス
静的ルート
リモート管理
UPnP
IPv6
トラフィックメーター
USB設定

これらの項目のうち、リモート管理機能が有効になっており、かつアクセス制限を行っていない場合、WAN側からも攻撃が成功するため、注意が必要です。また、ゲーム機器などのためにPasswordなしのゲストネットワークを公開し、(マイ)プライベートネットワークへのアクセスを許可している場合には、LAN側から直接攻撃が成功する点にも、注意が必要となります。攻撃者がこれらの機能やWeb管理画面から設定可能な情報を悪用した場合、容易に偽サイトへの誘導や無線通信の取得および暗号化通信の復号を行うことが可能となります。
以降では、上記項目において、本脆弱性の対策に関わる部分について記載します。

Web管理画面 セキュリティの質問と回答

パスワードを復元するため、セキュリティの質問に回答していた場合、設定-高度(タブ)-管理者-新しいパスワードメニューからセキュリティの質問と回答をそのまま閲覧することが可能です(下図)。さらに「パスワードの復元を有効にする」にチェックが入っていた場合、前回使用したパスワードを復元することが可能となります。

パスワードを復元するため、セキュリティの質問に回答していた場合、設定-高度(タブ)-管理者-新しいパスワードメニューからセキュリティの質問と回答をそのまま閲覧することが可能です

Web管理画面 ログイン履歴について

Web管理画面では、ログイン履歴を参照することが可能です。

Web管理画面では、ログイン履歴を参照することが可能です。デフォルトでは、全てのチェックボックスにチェックが入っています。しかし、CUIでのログイン履歴をこのページから確認することはできません。GUIによるWeb管理画面のログイン履歴を参照することはできますが、このログイン履歴は削除することが可能であるため不正ログインがあったかどうかをこの画面から判断することは困難だといえます。

ファームウェアアップデートによる脆弱性対策の注意

これまでに記載した内容をまとめると以下のようになります。

  • LANからのアクセスが成功した場合に実行可能な活動(の一部)
  • 管理者ID/Passwordを窃取(LAN側から管理者としてログイン可能)
  • セキュリティの質問と回答を窃取
  • リモート管理機能の有効化
  • ログイン履歴の削除

もしも、リモート管理機能が有効になっており、アクセス制限を行っていない場合、上記の活動をWAN側から行うことも可能となります。また、Passwordなしのプライベートネットワークにアクセス可能なゲストネットワークを公開している場合、LAN側から直接アクセスして上記の活動を行うことが可能となります。

以上より、ファームウェアアップデートを行うのみでは、該当のルータに不正ログインが行われる可能性が残ります。そのため、以下の手順でファームウェアアップデートを実施する際には、以下の手順で行うことが安全だと考えます。

  1. Netgear公式サイトより本脆弱性の対策済みファームウェアをダウンロードする
  2. LAN/WANポートに接続されているLANケーブルを全て抜く
  3. 作業用端末とルータのLANポートをLANケーブルで接続する
  4. Web管理ページにアクセスし、管理者パスワードを変更する
    I. セキュリティの質問と回答を行っている場合、それらも変更する
    もし管理者パスワード・セキュリティの質問と回答を他サイトなどで使い回している場合、そちらも変更する
    II. リモート管理機能が有効になっている場合、無効化する
    III. ゲストにプライベートネットワークへのアクセスを許可していた場合、その設定を無効化する
  5. Wi-Fi認証のパスフレーズを変更する
  6. ファームウェアアップデートを行う

まとめ

Web管理画面に第三者がアクセス可能な場合、本脆弱性を悪用され管理用ID/Passwordが窃取される可能性があります。セキュリティの質問と回答を設定している場合、それらの情報も窃取される可能性があります。ファームウェアアップデートの際には、ルータを作業用端末のみと接続し、パスワードやセキュリティの質問と回答を変更後にファームウェアアップデートを行うことを推奨します。

今回は追加検証として、特定の環境下ではリモートコード実行だけでなくルータの管理画面にログイン可能となることをお伝えしました。Netgear R7000はWEPをサポートしていないため、今回の想定ではPasswordなしとしていますが、他の無線ルータで解析可能なWEPを設定している場合でも同様に第三者が容易にLANにアクセスできます。「プライベートネットワークだから」「NAT環境だから」と慢心せずに、ID/Password設定・アクセスコントロール・ファームウェアアップデートを適切に行うことがセキュリティを向上させるために重要となります。

この記事は役に立ちましたか?

はい いいえ