フューチャー技術ブログ

IPAの過去問で学ぶC & C(Command & Control)サーバの手法と対応策

はじめに

こんにちは。TIG 村瀬です。
前回に引き続き、情報処理推進機構(IPA)のネットワークスペシャリスト試験の過去問からC&C(Command & Control)サーバの手法と対応策が興味深かったので自分の知識を整理するためブログにしてみました。

対象の試験は ネットワークスペシャリスト試験 令和元年度 午後Ⅱ 問2
過去問はこちらからダウンロード可能です。

当たり前ですが、このブログでは犯罪行為を推奨するものではなく、セキュリティ意識、対策の向上を目的として記載しております。

C&C(Command & Control)サーバとは

インターネットを経由してボットネットやPC上のマルウェアに対して命令(Command)を送信し、遠隔操作(Control)するサーバです。

なぜインターネットから内部LANのPCに遠隔操作できるのか

適切にファイアウォールの設定がされていればインターネットから内部LAN上のPCにはアクセスできないはずです。しかしながら内部LANのPC(のマルウェア)からインターネット上のC&Cサーバにアクセスすることでファイアウォールを突破しCommandを取得します。プロトコルはHTTPS,HTTPなどが利用されるので一般のWEBページと見分けがつきません。WEBページの閲覧は許容されている企業が多いため、一度マルウェアの侵入を許してしまうと継続的にCommandを受け付けてしまうことになります。

candc1.png

試験問題に基づく対応方法 IPアドレスを指定した遮断

ネットワークスペシャリスト試験 令和元年度 午後Ⅱ 問2 から抜粋

C&CサーバのIPアドレスが特定できれば、FPサーバでC&Cサーバとの通信は遮断できる。

問題文にあるとおり、C&Cサーバとの通信はIPアドレスが特定できればFP(フォワードプロキシ)サーバで遮断できます。

candc2.png

攻撃者による攪乱 Fast Flux

通信遮断のため、IPアドレスを特定したいのですが、攻撃者はFast Fluxと呼ばれる手法を用いてIPアドレスの特定を困難にします。

Fast Fluxとは

ネットワークスペシャリスト試験 令和元年度 午後Ⅱ 問2 から抜粋

Fast Fluxは、特定のドメインに対するDNSレコードを短時間に変化させることによって、サーバの追跡を困難にさせる手法である。

マルウェアが、一定間隔でfast-flux.example.comへアクセスを行えば、毎回、異なるIPアドレスで、ボットを経由してC&Cサーバと通信することになる。

問題文にあるとおりfast-flux.example.comに対するIPアドレスを複数設定し、かつ短時間でIPアドレスを変更します。
前回説明したDNSキャッシュポイズニングでは攻撃者から攻撃を受けにくくするための施策として大量の送信元ポート番号を利用しましたが、反対にそれを悪用された感じがしますね。
これをやられるとIPアドレスの特定が困難になってしまいます。

candc3

試験問題に基づく対応方法 FQDNを指定した遮断

IPアドレスの特定が困難なので、IPアドレスではなくマルウェアがアクセスするFQDN(fast-flux.example.com)を特定することで通信の遮断を試みます。

攻撃者による攪乱 Domain Flux

攻撃者はこれを避けるためにDomain Fluxと呼ばれる手法を用います。

Domain Fluxとは

ネットワークスペシャリスト試験 令和元年度 午後Ⅱ 問2 から抜粋

Domain Fluxは、ドメインワイルドカードを用いて、あらゆるホスト名に対して、同一のIPアドレスを応答する手法である。Fast FluxとDomain Fluxを組み合わせることによって、C&CサーバのFQDNとIPアドレスの両方を隠蔽できる。

なんということでしょう。FQDNが特定できません。マルウェアはきっとホスト名の部分(fast-flux)を定期的に変更してC&Cと通信することでしょう。
candc4

これに関しては確かにFQDNは特定できませんがワイルドカードを用いて*.example.comへのアクセスを遮断すればよさそうです。
すごい手法だと思いましたが、ドメイン名を指定して遮断できるので怖くないですね。

candc5

試験問題に基づく対応方法 プロキシ認証の導入

ネットワークスペシャリスト試験 令和元年度 午後Ⅱ 問2 から抜粋

このような攻撃が行われた場合を想定し、2人は、現行のFPサーバをHTTPS通信の復号機能をもつ機種に交換し、プロキシ認証を併せて行うことにした。

プロキシ認証を設けることでIPアドレスやFQDNが何であれ、プロキシの認証情報を知らないマルウェアはC&Cサーバと通信できなくなります。
マルウェアがもし動作していたらFPサーバのログに認証失敗のログが短時間に大量に出力されることでしょう。
この対応により通信の遮断と感染の検知ができるようになりました。

candc6

対応に関して

試験問題という特性上、効果の低い対応からしていきましたが、本来であれば費用対効果が高い施策から打てると良いですね。
また、問題文においてもアプライアンスを交換していました。セキュリティの重要さを分かった人がスピーディーに対応できる組織は強いですね。

さいごに

試験問題なので通常は読み物として面白くありませんが、この問題に関しては攻撃者とネットワーク運用担当の攻防が見られ、ハラハラドキドキし小説を読んでいるかのように面白かったです。

加えてネットワークだけではなくセキュリティの知識向上に繋がるのでとても良い問題だと思いました。

セキュリティは重要ですが、やみくもに恐れてはセキュリティ対策コストがいくらあっても足りません。どういった仕組みで攻撃が成功するかを適切に理解しておくことで、費用対効果の高いセキュリティ対策やインフラ設計ができるようになるはずです。

日々新たな脆弱性が見つかる状況であるため、100%安全と言い切れるネットワークを作ることは不可能です。しかしそのような状況であっても攻撃に合う確率を如何に0%に近づけるかがネットワーク(セキュリティ)エンジニアの腕の見せ所かと思います。