拡張頭蓋 | Extended Cranium

もしかすると誰かの役に立つかもしれないことを書き留めておく

2018-01-12 セキュリティニュースまとめ: ホームルータをボット化する IoT マルウェア、パッチ公開前の未知の脆弱性悪用が判明

元記事

researchcenter.paloaltonetworks.com

Satori 概要

攻撃側と防御側の攻防による共進化

  • Gafgyt や派生元の Mira などの初期 IoT マルウェアファミリは、デフォルトや弱いパスワードを悪用してデバイスを攻撃するもの
  • 攻撃に対抗するためユーザーや製造元がデフォルトパスワードを変更したりパスワードを強固なものに変更
  • Amnesia や IoT_Reaper など一部 IoT マルウェア作成者に、この流れに対抗するものが現れ、パスワードではなく特定 IoT デバイスの既知の脆弱性を突く
  • 当該デバイスのメーカーが脆弱性を修正して対応するようになる
  • 未知の脆弱性やパッチが提供されていない脆弱性を突く攻撃が増える

Satori の進化

3 つの亜種

1 つ目の亜種 (2017 年 4 月 22 日)

  • インターネットをスキャンしてどの IP アドレスが脆弱かを調べ、telnet で 2223 ポートにパスワード攻撃。ログインに成功するとシェルアクセスを有効化して /bin/busybox satori または /bin/busybox SATORI というコマンドを実行するのみ

2 つ 目の亜種 (2017 年 8 月 13 日)

  • 静的検出を回避するためパッカーを追加。パスワード辞書先頭に「aquario」という単語が追加される
  • 「aquario」は南米諸国で利用の多い特定ワイヤレスルーターのデフォルトパスワード
    • 攻撃者は故意に南米の機器のボット化を狙った節がある

3 つ目の亜種 (2017 年 11 月 28 日)

  • リモートコード実行を許可する 2 つの脆弱性を悪用
    • うち CVE 2017-17215 は悪用時点でゼロデイ
  • 2 つ目の亜種と共通のコマンドがある

Mirai と Satori の違い

  • Satori は Mirai のオープンソースになったソースコードからネットワークスキャナ、パスワードのブルートフォース攻撃機能、watchdog の無効化など一部機能を流用している
  • Satori は /proc を横断検索して /proc/PID/maps と /proc/PID/exe 内に(特定のデバイスを表す) 8 種類の文字列があるかどうかを検索し、あればそのプロセスを kill する
    • Satori の 2 つ目の亜種では kill の動作がデバイスの種類に応じて異なる
    • 前述の 8 種類のデバイスを表す文字列の検索同様に /proc 以下に 「/var/Challenge」、「hi3511」、「/mnt/mtd/app/gui」、「gmDVR」 という 4 つのキーワードが存在するかどうかを検索し、感染デバイスが特定の種別かどうかを確認し、この 4 つのプロセスについては kill しない
  • Satori の作成者はこれら 4 つのデバイスファームウェアリバースエンジニアリングすることで将来の攻撃に備えるために種類を同定しているのではないかと推測される

まとめ