FortiGuard Labs、ASUS社が提供するルーターの脆弱性を発見

ここ数週間にわたって、ASUSは一連のパッチをリリースしましたが、その目的はファームウェアのASUSWRTに使用されるRTルーターで発見された多数の脆弱性に対処するためです。本記事の最後には、この影響を受けていることが確認されたモデルが記載されています。お使いのモデルやファームウェアがおわかりにならない場合は、ASUSのサポートサイトで最新情報を今一度確認されることをおすすめします。


FortiGuard Labs

ASUSによって確認されたリモートコード実行の脆弱性であるFG-VD-17-216は、そもそもFortiGuard Labsによって発見、報告されました。WAN接続経由でウェブ管理ポータルが使用可能ではあるものの、この機能をご利用になっていない場合は無効にすることをおすすめします(これはデフォルトのパラメータではありません)。すでにこの機能をご利用の場合は、安全なパスワードを設定し、ルーターの管理タスクにHTTPSのみを使用することをおすすめします。攻撃者がポータルにアクセス、またはユーザーを不正なリンクへと誘導できた場合は、ルーターで直接実行可能なオペレーティングシステムのコマンドを注入するHTTPリクエストが実行できるようになります。

技術的に見ると、脆弱なモデルでは/apply.cgiに渡されたサニタイズ処理が行われていないパラメータを介して、OSのコマンドが注入されやすくなります。この脆弱性は、ファームウェアの以前のバージョンに不注意で戻された回帰だと考えられます(FortiGuard Labsで使用していたテスト端末はRT-AC3200、ファームウェアは3.0.0.4.382_19466でした)。

特にMain_Analysis_Content.aspでは、クライアント側でJavaScript関数のupdateOptions()にSystemCmd変数が作成されると、入力フィールドのpingCNTとdestIPの値が使用されるようになります。これにより、ウェブプロキシを使用して、通常は実行されるローカルチェックを迂回できるようになり、/cmdRet_check.htmを使ってリクエストからの応答が非同期的に返されます。サーバー側ではそれ以上チェックが行われることなく、コマンドが実行されることになります。

HTTP注入攻撃が成功すれば、デバイスの管理者権限(ルートユーザー)を使ってコマンドが実行されることになるため、FortiGuard Labsはこの脆弱性を「高」と評価しました。ただし、攻撃者がこれを成功させるには、HTTPクッキーヘッダで渡される有効な認証トークンを入手する必要があります。

脆弱性が認められたモデル:

  • ASUS RT-AC66U、RT-AC68U、RT-AC86U、RT-AC88U、RT-AC1900、RT-AC2900、RT-AC3100の3.0.0.4.384_10007以前のバージョン
  • ASUS RT-N18Uの3.0.0.4.382.39935以前のバージョン
  • ASUS RT-AC87U、RT-AC3200の3.0.0.4.382.50010以前のバージョン
  • ASUS RT-AC5300の3.0.0.4.384.20287以前のバージョン

背景:

  • 2017年12月23日 - FortiGuard LabsがASUSのセキュリティチームにメールで連絡
  • 2017年12月25日 - ASUSのセキュリティチームから、調査が開始されたとの返信
  • 2017年12月27日 - ASUSのセキュリティチームがFortiGuard Labsチームにテスト用のパッチを提供
  • 2017年12月27日 - パッチによって脆弱性が修正されたことをFortiGuard Labsが確認
  • 2018年1月2日 - ASUSが広範にわたる新しいパッチのリリースを開始

この脆弱性が発見された際、フォーティネットは先回りしてお客様を保護するためにIPSシグネチャ「Asus.Apply.CGI.POST.Buffer.Overflow」をリリースしました。

報告された脆弱性の修正にすばやく対応していただいたASUSのセキュリティチームに感謝しています。

-= FortiGuard Lion Team =-


週に一度更新されるFortiGuard Threat Intelligence Briefにお申し込みになるか、フォーティネットの FortiGuard Threat Intelligence Serviceのオープンベータ版にご参加ください。