コマンドアンドコントロール・サーバーとは?
コマンドアンドコントロール・サーバーとは、攻撃者が遠隔で管理するコンピュータまたはコンピュータ群であり、感染したデバイスのネットワークを形成し、データ窃取、さらなるデバイスの感染、あるいは攻撃対象システムの侵害を目的としたマルウェアや悪意のあるコマンドを送信するために利用されます。
コマンドアンドコントロール・サーバーの基本について詳しく解説いたします。実際の事例を交えながらその活用方法を説明するとともに、組織内のIT運用効率化にどのように活用できるかについても議論してまいります。
コマンドアンドコントロールの仕組みについて
コマンドアンドコントロール・サーバーは通常、ネットワークの他の部分とは分離された専用マシン上で動作します。これにより、管理者がコンピュータネットワークを一元的に管理・監視することが容易になります。
また、ネットワークのリモート管理にも利用可能です。これにはソフトウェアのインストールや更新、ユーザーアカウントの管理、アクティビティの監視などが含まれます。場合によっては、他のネットワークやコンピュータに対する攻撃の実行も含まれることがあります。
コマンドアンドコントロール・サーバーにアクセスするためには、攻撃者はまずそれを稼働させているマシンを侵害する必要があります。攻撃者がアクセス権を獲得した場合、ネットワーク全体へのアクセス権も得ることになり、システムやネットワーク内のマシンに対して悪意のある行為を実行できるようになります。
例えば、攻撃者はまずファイアウォールの内側に位置するコンピュータを感染させることから始める可能性があります。これには以下のような方法が用いられます:
- フィッシングメール(ユーザーに悪意のあるウェブサイトへのリンクをクリックさせる、または悪意のあるコードを実行する添付ファイルを開かせるもの)
- 悪意のあるソフトウェアまたは感染したソフトウェア
- ブラウザプラグインのセキュリティ脆弱性
感染後、C&C攻撃は侵害されたホストと攻撃者のC&Cサーバーとの間に、遠隔かつ秘密裏の通信経路を確立します。
攻撃者は通常、これらの経路を利用して、侵害されたデバイスに以下の目的で指示を送信します:
- 追加のマルウェアをダウンロードする
- ボットネットを構築する
- データを外部に流出させる
- データを暗号化または破損させる
- システムやネットワークを停止させる
- 進行中のタスクを妨害する
通信経路が確立され、マルウェアがホスト上で検出されずに動作している状態では、C&Cサーバーはこの経路を利用して、感染したホストから継続的にデータを抽出したり、さらに多くの感染ソフトウェアを送信・インストールしたり、C&Cサーバーから送信されるその他の悪意のあるコマンドを実行したりすることが可能です。
感染したホストは、ネットワーク内を移動するために、他のシステムの脆弱性をスキャンするようC&Cサーバーから指示を受ける可能性があります。
これにより、ハッキングされたホストのネットワーク(ボットネットとして知られています)が形成され、組織のITインフラ全体が完全に侵害される恐れがあります。これらのボットネットは、C&Cサーバーから指令を受け、協調攻撃を実行します。
コマンドアンドコントロールの種類
あらゆるコマンドアンドコントロール・サーバーの中核は、管理対象システムを管理・監視・操作する能力にあります。コマンドアンドコントロール・サーバーには主に3種類あり、それぞれ固有の機能と能力を備えています:
集中型コマンドアンドコントロール
名称が示す通り、集中型アーキテクチャでは通常、単一のサーバーが
中央制御拠点として機能します。このタイプのサーバーは一般的であり、広範囲に分散した多数のリモートシステムを保有する大規模組織で主に使用されます。
攻撃者にとって集中型C&Cの主な利点は以下の通りです:
- 設定と保守が容易であること。
- また、感染したデバイスを監視・管理しやすくする中央拠点を提供します。
攻撃者はドメインフラクシング(C&Cサーバーのドメイン名を継続的に変更する手法)によって検知を容易に回避できますが、このタイプのサーバーはセキュリティチームが外部からの脅威を特定し停止させることを容易にします。
分散型コマンドアンドコントロール
分散型C&Cもまたボットネットのアーキテクチャです。ピアツーピアネットワークを利用した通信により、各リモートシステムに独自の制御ポイントを提供します。
集中型C&Cとは異なり:
- 分散型C&Cサーバーは設定と維持が複雑で困難です。集中型C&Cでは、単一の主体がネットワーク全体を指揮します。分散型システムでは、調整と意思決定が複数のノードに分散されるため、各ノードが共通目標達成のために協調していることを保証することが難しい場合があります。分散型C&Cの実装は、多数のノードにわたる適切な計画と意思決定を必要とするため、難しいです。システムのセキュリティ、拡張性、安定性を保証することも難しい場合があります。
- ピアツーピア通信では、情報中継に遅延が生じる可能性があります。
防御/セキュリティチームにとって、これらは悪夢となり得ます。その理由は以下の通りです:
- 検知が困難であること。
- 分散型であるため、単一のポイントからボットネット全体を無効化することが不可能であること。
- 分散型サービス拒否攻撃に対する耐性が高い。
ボットネットを利用する攻撃者は、以下の方法で検知や停止を回避できます:
- ドメイン生成アルゴリズムの活用:マルウェアが式を用いてドメインリストを生成します。これにより、セキュリティ側で全ての可能性のあるサーバーをブロックすることが困難になります。
ハイブリッド型コマンドアンドコントロール
その名称が示す通り、ハイブリッド型C&Cシステムは、集中型サーバーと複数の分散型ノードの両方の構成要素を統合し、あらゆる組織のニーズに合わせて調整可能な、より複雑で回復力のあるネットワークアーキテクチャを実現します。
ハイブリッドC&Cシステムでは、分散型ネットワークの一部である追加ノードが、中核となるボット群を管理する1つ以上の中央C&Cサーバーと共存します。これにより、分散型C&Cシステムよりも優れた制御性と
調整性が実現されます。
分散型ノードはネットワークの検知と妨害を困難にすると同時に、複数の制御ポイントを持つことで、1つ以上の中央サーバーが停止してもボットネットの運用を継続可能にします。
検知回避のため、攻撃者は以下の手法を活用します:
- ドメインフラクシング:ネットワーク管理者や法執行機関がボットネットのC&Cインフラを停止することを困難にします。ドメイン生成技術を用いて、ボットネットC&Cサーバーのドメイン名を頻繁に変更します。
コマンドアンドコントロールの一般的な用途
コマンドアンドコントロールサーバーは、主にネットワーク上の全デバイスを一元管理する必要がある組織によって利用されます。これにより、アプリケーションやポリシーの展開・管理が容易になります。また、ネットワークの状態に関する情報を提供することで、ネットワークの活動やパフォーマンスを監視するのにも活用できます。その他の一般的な用途については、以下で説明します。
マルウェア管理
マルウェア管理により、攻撃者は自身のマルウェアに対する制御を維持し、自らの都合で悪意のある活動を継続することが可能となります。これにより、攻撃者は感染の進行状況を追跡し、必要に応じて攻撃戦略を調整することが可能となります。
この(攻撃者の)観点から、攻撃者にはいくつかの利点があります:
- マルウェアの集中管理ポイント。
- 攻撃を調整するための明確な制御拠点。
- 感染デバイスが再起動されたりインターネットから切断された後も、制御を維持する能力。
セキュリティチームは、以下の方法で攻撃者とデバイス間の通信を防止するよう努めるべきです:
- IPアドレスの特定。
- C&Cサーバーのドメイン名の確保。(ただし、ドメイン生成技術が使用されている場合は困難です。)
ボットネット制御
ユビキタスコンピューティングとモノのインターネット(IoT)の時代において、
マルウェアに感染したホスト群を悪意ある主体が制御する形態はボットネットと呼ばれます。分散型サービス拒否攻撃(DDoS)、データ窃取、スパム送信、
マルウェア拡散を通じたボットネットの甚大な被害発生可能性は既に実証されています。
C&Cサーバーは一般にボットマスターと呼ばれ、感染ホストは単にボットと称されます。C&Cサーバーのアーキテクチャにより、LANやインターネットを介して、感染ホストまたは他の相互接続ホストに対する分散型悪意ある攻撃が可能となります。
ボットネットは一般的に、以下の2つの主要なアーキテクチャ構造に分類されます:
- 集中型
- ピアツーピア(P2P)
これらの構造は、C&Cチャネルを通じてコマンドがどのように伝送されるかによって定義されます。集中型ボットネットでは、中央のC&Cサーバーがボットへのコマンド送信を担当します。P2Pネットワークでは、ボットネットのコマンドはP2Pオーバーレイネットワーク全体に伝播されます。
ボットネットは、分散型サービス拒否(DDoS)攻撃、著作権侵害、恐喝など、数多くの種類の分散型攻撃に利用される可能性があります。ボットネットの攻撃経路は多岐にわたりますが、当初はインターネットリレーチャット(IRC)を介して拡散しました。ファイル共有ネットワーク、感染メール添付ファイル、侵害されたウェブサイト、脆弱性攻撃などが攻撃ベクトルの例です。
インターネット接続型デバイスが普及するにつれ、ボットネットはより広範な攻撃対象領域と、感染させる脆弱なホストを獲得しています。
リモート管理
リモート管理とは、コンピュータシステムやネットワークを遠隔地から管理する活動です。システム管理者は、インターネット接続が可能な場所から、リモート管理ツールを使用してシステムにアクセスし、管理することができます。
しかしながら、攻撃者はリモート管理ツールを悪用し、侵害されたシステム上でC&C(コマンド&コントロール)を実行することが可能です。
例えば、ハッカーが侵害されたマシンに接続し、VNC(仮想ネットワークコンピューティング)のようなリモート管理ツールを乗っ取る場合があります。その後、マルウェアは他のマルウェアのダウンロード、ファイルの暗号化、盗んだデータの転送といったタスクを実行するよう指示される可能性があります。
例えば、ハッカーが侵害されたマシンに接続し、VNC(Virtual Network Computing)のようなリモート管理ツールを乗っ取る可能性があります。その後、マルウェアは他のマルウェアのダウンロード、ファイルの暗号化、盗んだデータの攻撃者のコマンドアンドコントロールサーバーへの転送といったタスクを実行するよう指示されるかもしれません。
攻撃者は、悪意のある目的のためにハッキングまたは改変された正規のリモート管理ツールを利用する場合があります。例えば、一般的なリモート管理ツールであるリモートデスクトッププロトコル(RDP)を介してマシンにログインし、C&Cを実行することが考えられます。
コマンドアンドコントロールの検知と防御
C&C攻撃に対処する際、最も一般的な対策の一つは、ホストコンピュータの活動を継続的に監視し、既知の悪意のあるドメインをブラックリスト登録またはブロックすることです。
ネットワークベースの検知
ネットワークベースの検知とは、ネットワークトラフィックを監視し、C&C活動の兆候を探る技術です。ネットワークベースの検知技術は、端末とリモートサーバー間のC&Cトラフィック特有の通信パターンを識別できます。
例:特定のポートを使用して多数の端末と通信し、大量のデータを送信しているサーバーは、C&C接続の可能性があると考えられます。
ネットワークベースの検知で使用される手法には以下が含まれます:
- ネットワークトラフィック分析
- 侵入検知システム(IDS/IPS)
- ディープパケットインスペクション(DPI)
検知手法は機械学習に基づくことも可能です。機械学習ベースの検知では、アルゴリズムを用いてネットワーク活動を追跡し、C&C活動を示す行動傾向を特定します。これらは従来未知のC&Cトラフィックパターンを検知し、進化する攻撃戦略に適応します。
Host-Based detection
ホストベースの検知は、個々のホストの活動を監視する手法です。以下の活動を監視するツールを活用できます:
- ファイルシステムの活動
- ネットワーク接続
- システムログ
例えばシステムログでは、C&C侵入を示す可能性のある、外部へのネットワークトラフィックの増加や不審な実行プロセスを検知できます。ホストベースの検知で使用されるツールには以下が含まれます:
- ホストベース侵入検知システム
- アンチウイルスソフトウェア
- ファイル整合性監視ソフトウェア
この手法は、C&C攻撃が特定のエンドポイントにマルウェアやその他の有害なソフトウェアをインストールするケースが多いという事実に基づいています(これらのエンドポイントの活動を監視することで特定が可能です)。
ブラックリスト登録
ブラックリスト登録は文字通り、悪意のあるドメイン、IPアドレス、またはURLが特定されると、それらをリストに記録します。その後、ブラックリスト登録ツールを使用してこれらの悪意のあるドメインからのトラフィックをブロックし、侵害リスクを低減します。このリストはリアルタイムで更新することも可能です。
前述の通り、ブラックリスト登録には以下が含まれます:
- DNS
- IPアドレス
- URL (悪意のあるURLは、ほぼ全てのインターネットユーザーが遭遇する最も一般的な問題の一つです)
ブロックされたIPアドレスからのネットワークトラフィックが検出された場合、リクエストは恒久的にブロックされるか、より安全なサイトへリダイレクトされます。
コマンドアンドコントロールの実例
バンキング型トロイの木馬:「TrickBot」
TrickBotは、銀行認証情報やその他の個人情報を盗むために使用され、フィッシングメールを通じて拡散されることがよくあります。2019年には、米国、英国、カナダの金融機関を標的としたTrickBotマルウェアを用いた攻撃が複数発生しました。法執行機関とセキュリティ専門家が協力してTrickBotネットワークを摘発しましたが、マルウェアの作成者は依然として手法を進化させ続けています。多要素認証とアンチマルウェアソフトウェアの導入は、この種の攻撃を防ぐための重要な予防策です。詳細はこちらのブログ記事をご参照ください。
ボットネット:「Mirai」
2016年に米国全域でインターネット接続を遮断した大規模なDDoS攻撃は
Miraiボットネットによって実行されました。Miraiボットネットは脆弱なIoTデバイスをマルウェアに感染させることで構築されました。詳細はこちらのページをご覧ください。
マルバタイジング:「カイル&スタン」
2014年に発覚した「カイル&スタン」マルバタイジングキャンペーンは、信頼できるウェブサイト上で悪意のある広告が表示され、マルウェアを拡散させ個人情報を窃取する手法の一例です。このキャンペーンでは、人気テレビ番組のストリーミングサービスを提供するふりをした広告が表示されましたが、消費者がクリックすると、実際にはマルウェアで端末を感染させようとするウェブサイトへ誘導されていました。マルウェアの拡散にはドライブバイダウンロードが使用され、個人データを窃取するよう設計されていました。詳細についてはこちらのブログ記事をご参照ください。
結論
近年、コマンドアンドコントロールサーバーは組織のITシステムに対する可視性を高め、管理効率を向上させるため、ますます普及しております。その最も有用な機能の一つは、セキュリティ管理者が一元化された場所からインフラを監視・管理できる点です。これにより、潜在的な問題を迅速に特定し、消費者に影響が及ぶ前に是正措置を講じることが可能となります。