DDoSボットネットとは?

記録上最大規模のDDoS攻撃はボットネット攻撃です。 デバイスがボットネットマルウェアに感染する仕組みやボットをリモート制御する方法、ネットワークをボットネットの侵入から保護する方法を学びましょう。

Share facebook icon linkedin icon twitter icon email icon

ボットネット

学習目的

この記事を読み終えると、以下のことができます。

  • DDoSボットネットの定義
  • ボットネットの作成理由の説明
  • ボットネットがリモートから攻撃者に制御される仕組みの理解
  • ボットネットを無効化し侵入を防止する戦略の理由

ボットネットとは?

ボットネットとは、マルウェアに感染して攻撃者の制御下に置かれたコンピューター群のことを指します。ボットネットという用語は、ロボットとネットワークの合成語であり、感染したそれぞれのデバイスのことをボットと呼びます。ボットネットは、スパムを送信する、データを盗む、ランサムウェア広告の不正クリックDDoS攻撃などを含む、違法な行為や悪意のある行為を実行するように設計することができます。


ランサムウェアなどの一部のマルウェアがデバイス所有者に直接的な影響を与えるのに対し、DDoSのボットネットマルウェアの可視性のレベルは異なります。デバイスを完全に制御できるように設計されるものもあれば、バックグラウンドプロセスとして静かに実行し、「ボットハーダー」と呼ばれる攻撃者からの指示を静かに待つものもあります。


自己増殖型ボットネットは、さまざまなチャネルを通じてほかのボットを募集します。感染経路には、Webサイトの脆弱性の悪用、トロイの木馬マルウェア、脆弱な認証の解読によるリモートアクセスの取得などが含まれます。アクセスできるようになると、これらすべての感染方法は、ターゲットデバイスにマルウェアをインストールして、ボットネットのオペレーターがリモートコントロールできるようにします。デバイスが感染すると、周囲のネットワークにあるほかのハードウェアデバイスを募集して、ボットネットマルウェアを自己増殖させようとする可能性があります。


ボットネット内の正確なボット数を特定することは不可能ですが、高度なボットネット内にあるボットの推定総数は数千から数百にもおよびます。

DDoS Botnet attack animation

ボットネットの作成理由とは?

ボットネットを使用する理由は、積極行動主義から国家主導の機能停止まで多岐にわたり、多くの攻撃は単に利益を得るために実行されます。ボットネットサービスをオンライン採用することは、特にボットネットによって生じる可能性がある損失額を考えると比較的安価と言えます。ボットネットを作成する障壁も低いため、一部のソフトウェア開発者にとっては儲かるビジネスです。特に、規制や法執行が限定的である場所となるとなおさらです。この組み合わせにより、有料の攻撃を提供するオンラインサービスが急増しました。

ボットネットのコントロール方法とは?

ボットネットの主な特性は、ボットハーダーからの最新の指示を受け取ることができることです。ネットワーク内の各ボットと通信することができるため、攻撃者は攻撃ベクトルを交互にする、標的とするIPアドレスを変更する、攻撃を終了する、といったカスタマイズしたアクションを行うことができます。ボットネットの設計はさまざまですが、制御構造は次の2つの一般的なカテゴリーに分類できます:

クライアント/サーバーのボットネットモデル

「クライアント/サーバー」モデルは、情報にアクセスするために個々のマシンが集中管理型サーバー(または少数の集中管理型サーバー)に接続する従来のリモートワークステーションのワークフローを模倣しています。このモデルでは、各ボットは指示を受け取るために、WebドメインやIRCチャネルのようなコマンドアンドコントロールセンター(CnC)リソースに接続します。こうした集中管理型リポジトリを利用してボットネットに新しいコマンドを提供することで、攻撃者は、感染したマシンに対する指示を更新するために、各ボットネットがコマンドセンターから消費するソースマテリアルを変更するだけで済みます。ボットネットを管理する集中管理サーバーは、攻撃者が所有および操作するデバイスであるか、または感染したデバイスである可能性があります。


次のような人気のある中央ボットネットトポロジーが多く確認されています。

スター型ネットワークトポロジー

Star network topology animation

マルチサーバーネットワークトポロジー

Multi server network topology animation

階層型ネットワークトポロジー

Hierarchical network topology animation

こうした「クライアント/サーバー」モデルでは、各ボットは指示を受け取るために、WebドメインやIRCチャネルのようなコマンドセンターリソースに接続します。こうした集中管理型リポジトリを利用してボットネットに新しいコマンドを提供することで、攻撃者は、感染したマシンに対する指示を更新するために、各ボットネットがコマンドセンターから消費するソースマテリアルを変更するだけで済みます。


限られた数の集中管理型ソースからボットネットへの指示を簡単に更新できてしまうということが、これらのマシンの脆弱性です。集中管理型サーバーを使用するボットネットを排除するには、サーバーのみを破壊すればよいのです。こうした脆弱性により、ボットネットマルウェアの作成者は、単一障害点または複数障害点を介した破壊による影響を受けにくい新しいモデルに進化して移行しました。

ピアツーピア(P2P)のボットネットモデル

「クライアント/サーバー」モデルの脆弱性を回避するために、最近のボットネットは分散型ピアツーピアのファイル共有の構成要素を使用して設計されています。ボットネットに制御構造を埋め込むことにより、集中管理型サーバーを使用するボットネット内にある単一障害点を排除することができるため、軽減策を講じるのがより困難になります。P2Pボットは、クライアントとコマンドセンターの両方である場合があり、隣接ノードと連携してデータを転送します。


ピアツーピアのボットネットは、通信をやり取りしてマルウェアを更新できる、信頼できるコンピューターの一覧を保持しています。ボットが接続するほかのマシンの数を制限することで、各ボットは隣接デバイスにのみ暴露されるので、追跡しにくくなり軽減策を講じるのが難しくなります。集中管理型コマンドサーバーがないことで、ピアツーピアのボットはボットネットの作成者以外の誰かによって制御されやすくなります。制御喪失を防ぐために、通常、アクセスが制限されるように分散型ボットネットは暗号化されます。

Peer-to-peer network topology animation

IoTデバイスがボットネットになる仕組みとは?

鳥の餌箱を見るために設置したワイヤレスCCTVカメラを使用してインターネットバンキングを行う人はいませんが、そのデバイスが必要なネットワークリクエストを行えないというわけではありません。IoTデバイスに備わっている機能と弱い不十分なセキュリティ設定が組み合わさると、ボットネットマルウェアは新しいボットの集団を募集できるようになってしまいます。IoTデバイスの増加により、多くのデバイスの設定が不適切であり脆弱であるため、DDoS攻撃の新しい標的になりつつあります。


IoTデバイスの脆弱性がファームウェアにハードコーディングされている場合、アップデートはより困難になります。リスクを軽減するため、古いファームウェアを使用するIoTデバイスはアップデートする必要があります。なぜなら、デフォルトの認証情報がデバイスの初期インストールから変更されないままであることが多いからです。多くの格安ハードウェアのメーカーは、デバイスをより安全にする動機付けがないため、ボットネットマルウェアがIoTデバイスにもたらす脆弱性は、未解決のセキュリティリスクとして残ります。

既存のボットネットを無効化するには?

ボットネットのコントロールセンターの無効化

コマンドアンドコントロールスキーマを使用して設計されたボットネットは、いったんコントロールセンターを特定すればより簡単に無効にできます。障害点で無効にすることで、ボットネット全体をオフライン状態にすることができます。その結果、システム管理者と法執行機関は、そうしたボットネットのコントロールセンターを取り締まることに焦点を当てることができます。コマンドセンターが法執行機関が介入しにくい、または介入する意思がない国に所在する場合、このプロセスはより困難になります。

個別デバイスの感染を排除

個人のコンピューターの場合、マシンに対するコントロールを再び取り戻す戦略としては、ウィルス対策ソフトウェアの実行、安全なバックアップからのソフトウェアの再インストール、システムの再フォーマット後のクリーンなマシンからのやり直しなどがあります。IoTデバイスの場合、戦略としては、ファームウェアのフラッシュ、ファクトリーリセットの実行、デバイスの再フォーマットなどがあります。こうしたオプションが実行不可能である場合、ほかの戦略をデバイスのメーカーまたはシステム管理者から入手できることがあります。

デバイスがボットネットの一部になるのを防ぐ方法とは?

安全なパスワードの作成

多くの脆弱なデバイスにとって、ボットネットの脆弱性への露出を減少させることは、デフォルトのユーザー名とパスワードではない別の認証情報に変更するというような簡単なものでも良いです。強力なパスワードを作成することは ブルートフォース攻撃の実行を困難にし、非常に強力なパスワードを作成することはブルートフォース攻撃の実行を事実上不可能にします。たとえば、Miraiマルウェアに感染したデバイスは、IPアドレスをスキャンして応答するデバイスを探します。デバイスがpingリクエストに応答すると、ボットはデフォルトの認証情報のプリセットリストを使用してそのデバイスへのログインを試みます。デフォルトのパスワードが強力なパスワードに変更されている場合、ボットはあきらめて、より脆弱なデバイスを再び探します。

信頼できるサードパーティのコードの実行のみを許可

携帯電話モデルのソフトウェア実行を採用すると、ホワイトリストに追加されているアプリケーションのみが実行できるので、ボットネットを含む、悪意のあるソフトウェアと判断されたものを強制終了するコントロールが付与されます。スーパーバイザーソフトウェア(カーネル)の悪用のみがデバイスの悪用という結果をもたらすことになります。このように最初からセキュアなカーネルを持つことは、サードパーティソフトウェアを実行しているマシンに対して適用可能ですが、大部分のIoTデバイスはセキュアなカーネルを持っていません。

定期的なシステムワイプ/リストア

一定時間を経た状態を既知の良好な状態に回復することで、システムが収集したボットネットソフトウェアのような不要物を排除できます。この戦略を予防策として使用することで、静かに実行しているマルウェアも排除することができます。

優れたイングレス/エグレスのフィルタリングを実装

ほかのより高度な戦略には、ネットワークルーターやファイアウォールでのフィルタリングがあります。セキュアなネットワーク設計の原則は階層化です。公的にアクセス可能なリソースについては最低限の制限を設けて、機密性の高いと思われるものについてはセキュリティを絶え間なく強化していきます。また、こうした境界をまたぐもの、ネットワークトラフィック、USBドライブなどについては精査する必要があります。しっかりとしたフィルタリングを行うことで、ネットワークに侵入する前にDDoSマルウェアとその増殖や通信を検知できる可能性が増します。


現在攻撃を受けている場合、窮状から脱するために実行できる手順があります。すでにCloudflareを利用している場合は、これらの手順に従って攻撃を軽減できます。Cloudflareで実装されるDDoS対策は、考えられる多くの攻撃ベクトルを軽減するために多面的なアプローチを用いています。CloudflareのDDoS対策の詳細については、こちらをご覧ください。