80/TCP 宛通信の増加

80/TCP や 8000/TCP を狙った攻撃通信が 2018年6月10日以降増加していることが,@police の注意喚起や 360 NetLab Blog で報じられています.

NICTER においても 6月10日頃から同一事象を観測をしています.本エントリでは,NICTER ダークネットで観測した 80/TCP 宛通信および関連する事象について報告します.

80/TCP 宛の観測について

Webサーバがクライアントからの接続を待ち受ける 80/TCP には,定常的に探索パケットが届いています.ブロードバンドルータやデジタルビデオレコーダ(DVR)といった IoT 機器では,機器の設定やファームウェアアップデート機能などを提供するためのインターフェイスとして,Webサーバが動作しています.機器によっては,80/TCP 以外にも,81/TCP, 88/TCP, 8000/TCP, 8080/TCP といったポートが使われます.

NICTER ダークネットで観測したこれらのポート宛通信が,「宛先IPアドレスとTCPヘッダのシーケンス番号が同じ」である Mirai の特徴を持つ場合,送信元のホストは,何らかの原因で Mirai もしくはその亜種に感染し,次の感染先となる機器を探索もしくは攻撃している IoT 機器であると考えられます.

80/TCP 宛攻撃通信の推移

2018年1月1日から2018年6月18日の約半年間に NICTER ダークネットの 80/TCP に届いた通信を集計すると次の図のようになります(図1).

Nicter 図1. 80/TCP 宛の通信の推移

4月1日と5月10日には特徴的な増加が見られます.

4月1日の突発的な増加では,送信元は 80/TCP の他に MikroTik RouterOS が使用する 2000/TCP や 23/TCP に対するアクセスを試みていることから,MikroTik社製ルータを狙った攻撃が観測されていると考えられます.

また,5月9日ごろからの増加は,韓国 DASAN Networks 社製 GPON ルータの脆弱性(CVE-2018-10561 および CVE-2018-10562) を狙った通信であることが攻撃通信の内容から判明しました.

6月10日以降にみられた80/TCP 宛通信の増加

NICTER では,6月10日以降,国内外のホストから,Mirai の特徴を持った 80/TCP 宛通信の増加を観測しました.この特徴を持つすべての通信を集計した結果を図2に示します.

Nicter 図2. 80/TCP 宛の通信(全体, Mirai)

同様の特徴を持つ通信のうち,送信元が日本国内のホストであるものを図3に示します.

Nicter 図3. 80/TCP 宛の通信(日本国内, Mirai)

6月10日を境に送信元ホスト数とパケット数が急増しており,6月18日の時点でおよそ300ホストが感染しているものとみられます.この数はあくまで NICTER の観測網で捉えた数字であり,実際にはさらに多くの機器が感染している可能性も考えられます.

通信の送信元について調査した結果,Hangzhou Xiongmai Technology 社製Webサーバ uc-httpd 1.0.0 が動作する監視カメラやデジタルビデオレコーダーが Mirai に感染していると考えられます.uc-httpd については,2017年にディレクトリトラバーサルの脆弱性(CVE-2017-7577)が,2018年6月8日にはバッファオーバーフローの脆弱性(CVE-2018-10088)が公表されており,いずれの脆弱性も攻撃コードが公開されているという状況です.

Shodan のデータによると,2018年6月21日現在,uc-httpd が動作する機器は日本国内に約2400台,世界全体では約57万台弱存在するとみられ,脆弱性を悪用した感染拡大が懸念される状況が続いていると考えられます.

対策方法について

攻撃の対象となっていると推測される機器の脆弱性(CVE-2017-7577, CVE-2018-10088)について,NICTER で調査した限り,機器の製造元である Hangzhou Xiongmai Technology から修正版ファームウェアの提供は確認できませんでした(6月21日現在).

当該機器のユーザは次に挙げる一般的な対策を行うことが推奨されます.

  • 脆弱性が修正されたファームウェアがリリースされた場合にはすみやかに提供し,機器のファームウェアを最新の状態に保つ
  • 管理用アカウントのユーザ名とパスワードを工場出荷時の初期設定から推測されにくいものに変更する
  • 機器へのネットワークアクセスをファイアウォール等を使って制限する