拡張頭蓋 | Extended Cranium

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

2017-12-21 セキュリティニュースまとめ

大規模情報漏えいを悪用した WordPress サイトへのブルートフォース攻撃続く 感染サイトは仮想通貨 Monero を採掘するか他のサイトを攻撃

www.wordfence.com www.bleepingcomputer.com

起こったこと

  • WordPress ユーザーに WAF サービスを提供する Wordfence 社、 人気 CMS WordPress で作成されたサイトの管理者 admin アカウントを窃取しようとするブルートフォース攻撃を確認 (元記事の執筆時点で継続中)
    • 時間あたり 19 万試行
  • 漏えい事件で得た認証情報とパスワード辞書を悪用していると推測される
  • オペレーションの背後にいるのは単一のボットネットと推測される

感染した WordPress サイトへの影響

  • 管理者アカウント admin での感染サイトへのアクセスが可能になる
    • ただし admin 以外のユーザーアカウントも試行される
  • マイニングスクリプトが埋め込まれ、web サーバーホストのコンピュータリソースが仮想通貨 Monero 採掘に悪用される*1
  • 感染サイトを拡大するため他の WordPress サイトをブルートフォース攻撃する
  • 外部の IRC サーバー (C&C) に接続する
    • IRC の通信は暗号化されていない
    • ポート 8080 ないし 9090 で稼働する 8 台の C&C サービスを特定
  • 外部の「Mining Proxy」に接続する (185[.]61.149.22:8080)
  • 標準ポートで稼働していない場合でも攻撃対象になる

事件の背景

  • 今年度、大規模な認証情報漏えい事件が相次いだ
  • ビットコイン、Monero など仮想通貨が高騰している
  • CMS として WordPress が最も人気

サイト管理者の対策

元記事のブルートフォース攻撃について

このほかの基礎的な対策について

  • 当たり前だが admin パスワードは完全なランダム文字列にして他のサービスと同じものは使わない
  • WP サイトをホスティングする OS には SELinux などのセキュア OS を利用する
  • 改ざんを検知する (inotify などを使う)
  • プラグインは必要なものだけソースコードまで確認してから導入する
    • 導入したプラグインは所有者が変わっていないか常に監視する
    • WP やプラグインの自動更新を有効にすると WP に高い権限を与える必要がある
      • WP のパーミッション設定は最低にしたほうがよいのでリソースに余裕があるなら自動更新はオフにして 24/7 監視するか前段に WAF を入れる
  • ゼロデイ攻撃に備え PHP、導入中のプラグインWordPress脆弱性情報を常に収集して時間をおかずに対策する
    • 企業サイトで自社で 24/7 の監視が難しいなら、シグネチャ作成を 24/7 で対応している WAF サービスの利用推奨
  • ダッシュボードへのアクセスを接続元を見て Web サーバー側で制限する
    • Apache であれば .htaccess で wp-login.php へのアクセスを特定 IP アドレスからの接続だけを通すようにするなど
  • wp-config.php は同じ階層に置かず 1 つ上の階層に配置し、パーミッション設定も 400 などに設定する

教訓

  • 暗号通貨の高騰を受けこれまでに発生している ZealotHexmenLoapi と同様の攻撃キャンペーンは 2018 年も続くだろう
  • CMS を利用する前に、自サイト、その閲覧者、他サイトをふくむインターネット上の他のエンティティを守るためにどれだけのリソースをさくことができるのか、サイトの設置はそのリソースに見合うかを天秤にかけて考える必要がある

*1:この他サーバーのCPU 使用率が天井に張り付いた状態であれば、感染サーバーに接続しにくくなるなどの問題も発生するものと推測される