根岸氏 C2の通信の中にもいろいろ種類がありますよね。
辻氏 そうですね。C2にはWebサービスを立ち上げているものもあれば、実行(exe)ファイル単体がサーバとして動いているものもあります。また、既存のサービスを使うパターンもあります。例えば、“Twitterの特定アカウントのツイートが命令になっている”ケースや、“Gmailの受信ボックス内のメールを指令に使う”ケースなどがあります。
宮田 なるほど。企業から見れば、普通にSNSやメールを閲覧しているようにしか見えないと。
根岸氏 不正な通信だと見破られないための偽装の一種ですね。
辻氏 TwitterやGmailを見ていることまでは分かっても、基本的にHTTPS通信ですから、通信の中身まで見ることはありません。
根岸氏 ブラックリストなどでブロックしようにも、Twitterなどを閲覧することまでブロックするのはなかなか難しいところです。
宮田 指令を送るのに、IRC(Internet Relay Chat)を使うものもありましたよね?
根岸氏 はい。「Slack」など新しいチャットサービスがいろいろ出てきて、IRCは現在ではあまり使用されていないイメージがあるかもしれませんが、実は、意外と現役で使われています。
辻氏 私が自宅で運用しているハニーポットでも、いまだにIRCに参加させるためのボットプログラムをインストールしてくる攻撃が見られます。実際にIRCにログインして確認してみると、大体数百ぐらいのボットがいました。
根岸氏 アノニマスも「LOIC(Low Orbit Ion Cannon)」を用いた攻撃でIRCを使っていましたね。
宮田 企業がこうしたC2の通信を止めたいというときには、どんな手があるんでしょうか?
辻氏 マルウェアの種類にもよるのですが、全て止めるのは難しいと思います。JTBの事件でも使われた「PlugX」などの場合は、これまでのナレッジが蓄積されているので、マルウェア自体は検知できなくても通信の振る舞いから「おかしい」と判断することができます。ただ、SNSやブログを見にいくようなものは検知するのが難しい可能性があります。外部との通信だけで全てを検知しようとするよりも、その先も含めた一連の動きに対して網を張っていく方が現実的でしょう。
根岸氏 PlugXやEmdivi、Poison IvyのようなRAT(Remote Access Tool)は、過去の調査などを見る限り、半分程度がHTTPを使って外部と通信するようです。従って、見ようと思えば通信の中身を見ることはできるのですが、それで怪しいと気付けるかというと、「ものによる」と言わざるを得ません。これは推測ですが、JTBの事案でも、PlugXの通信は検知できたが、ELIRKSの方はできなかったのではないかと考えています。
辻氏 外部との通信というのは、最終的な被害を軽減するための1つの観点でしかないでしょうね。ログを見るなど他の方法も使うことで、RATを見つけられなかったとしても、その後入ってきた別のツールは見つけることはできるかもしれません。「全体を見て大きな網を張る」。難しいかもしれませんが、それが現実的だと思います。
根岸氏 それから、たとえ外部との通信を検知したとしても、「何をどこまでやられているか」を判断するのは簡単ではありません。最悪の場合、「検知したときには既に情報は取られてしまっている」可能性もあります。外部との通信を見つけて、それが重要な情報をやりとりしていなかったからといって、軽々に「大丈夫だ」と判断すると、影響を見誤る危険性があります。
辻氏 見つけたときが攻撃の始まりだとは限らない。
根岸氏 その通りです。「検知したときには既に侵入から何年もたっている」という可能性も十分にあります。
宮田 「外部との不正な通信」といってもその中にはいろいろな種類があり、その1つがC2の通信だということですね。これだけを見て全ての攻撃を検知するのは難しいかもしれませんが、この動画をきっかけに、C2やマルウェアの動作についていろいろ調べてみていただければと思います。
Copyright © ITmedia, Inc. All Rights Reserved.