ページの本文へ

Hitachi

Hitachi Incdent Response Team

HIRT-PUB14012:遠隔操作ツール(RAT)の変遷

更新日:2015年03月23日

はじめに

標的型攻撃という用語が広がり始めたのは2005年頃で、US-CERTが発行した注意喚起「TA05-189A: Targeted Trojan Email Attacks」がきっかけだと思います。また、2007年以降、国内でも標的型攻撃に関する調査報告が出始めたことにより、身近な用語となりました。2010年に入ると、標的型攻撃も進化し、APT(Advanced Persistent Threat)という名称で広く知れ渡るようになりました。APTは、「特定組織を対象とし(標的型攻撃)、組織内ネットワークを活動基点とする(潜伏型手法の)侵害活動」の総称です。特に、侵入したシステムを遠隔から操作するためのプログラム、遠隔操作ツール(RAT: Remote Access Trojan/Remote Administration Tool)は、APT世代の標的型攻撃において重要な役割を果たしています。

本レポートでは、Windows環境の遠隔操作ツールの変遷を外部との接続通信に着目して紹介します。

1. 遠隔操作ツール

Windows環境の遠隔操作ツールは、大きく2つの世代「攻撃側発呼型」「攻撃側着呼型」に分けることができます。
ここでは、世代毎の特徴を見ていきたいと思います。

図1:遠隔操作ツール(RAT)の変遷
図1:遠隔操作ツール(RAT)の変遷

1.1 攻撃側発呼型

攻撃側発呼型の世代は、クライアント(攻撃者PC)からサーバ(攻撃対象PC)に通信確立した後、攻撃者PCから遠隔操作を指示します(図 2)。

図 2:攻撃側発呼型
図 2:攻撃側発呼型

Windows環境の遠隔操作ツールは、1998年、Cult of the Dead Cowと呼ばれるグループによって開発された「Back Orifice」によって大きく動き始めることになります。Back Orificeは、サーバプログラム(デフォルトポート番号31337)がインストールされたPCを、クライアントプログラムがインストールされたPCからGUI操作できる攻撃側発呼型の遠隔操作ツールでした。コマンドの実行、ファイルの一覧表示、ファイルのアップロードとダウンロード、レジストリ操作、プロセス停止、プロセスの一覧表示などの操作が可能でした。同様な機能を持ったものとして、NetBus(デフォルトポート番号12345)、翌1999年にはBack Orifice 2000(BO2K)(デフォルトポート番号54320/tcp、54321/udp)、SubSeven(デフォルトポート番号27374)が出回りました。

図 3:BO2KのクライアントプログラムGUI
図 3:BO2KのクライアントプログラムGUI

図 3は、BO2KのクライアントプログラムのGUIです。IPアドレス192.168.4.169が記載されている領域には、攻撃対象PCの一覧が表示され、この中からPCを選択して通信確立した後、遠隔操作を指示します。  攻撃側発呼型の世代は、Back Orificeなどのサーバプログラムの稼動ポート番号と利用パスワードが分かれば、誰でも、そのPCを遠隔操作できることから、これらサーバプログラムが稼動しているPCを探査する侵害活動が発生しました。

1.2 攻撃側着呼型

攻撃側着呼型の世代は、サーバ(攻撃対象PC)からクライアント(攻撃者PC)にコネクション確立した後、攻撃者PCから遠隔操作を指示します(図 4)。通信確立の方向が反転した要因の一つに、インターネットとイントラネットとの境界にファイアウォールが設置されたり、PCにパーソナルファイアウォールが導入されたりしたことが挙げられます。

図 4:攻撃側着呼型
図 4:攻撃側着呼型

APT世代の標的型攻撃で使用されている代表的な遠隔操作ツールの一つが「Poison Ivy」です。Poison Ivyは、サーバプログラムがインストールされたPCを、クライアントプログラム(デフォルトポート番号3460/tcp)がインストールされたPCからGUI操作できる攻撃側着呼型の遠隔操作ツールです。Back Orifice以上の機能を備えています。

図 5は、Poison IvyのクライアントプログラムのGUIです。IPアドレス192.168.70.104が記載されている画面中央にある拡大図は、攻撃者PCに通信確立してきた攻撃対象PCの一覧です。すでに通信確立は終了しているので、この中からPCを選択して、遠隔操作を指示します。
攻撃側着呼型の世代は、ボットが出現した後の時期にあたり、ボットの機能が拡張されていると言えます。

図 5:Poison IvyのクライアントプログラムGUI
図 5:Poison IvyのクライアントプログラムGUI

2. 2013年以降の攻撃側着呼型の特徴

攻撃側着呼型は、攻撃対象PCが接続されているネットワーク構成の影響を受けることになります。ここでは、イントラネットに接続された攻撃対象PCから、インターネット上の攻撃者PCに向けて外部との通信確立する際に影響を与えるポート番号、通信プロトコル、プロキシ対応の3つの項目についての変遷を見ていきたいと思います。

2.1 ポート番号

文献[1][ 2]によれば、外部との通信確立に使用するポート番号は、一般的な53/tcp、80/tcp、443/tcp、8080/tcpが選択され(図 6)、さらに、複数のポート番号を利用できるようにしている傾向が見られます。

図 6:外部との通信確立に使用するポート番号

図 6:外部との通信確立に使用するポート番号
図 6:外部との通信確立に使用するポート番号

2.2 通信プロトコル

通信プロトコルについては、ポート番号に対応する既知プロトコル(HTTP、HTTPSなど)と独自プロトコルが使用されています。
インターネットとイントラネットとの境界にルータ型ファイアウォールを使用しているネットワーク構成の場合、53/tcp(DNS、独自プロトコル)、80/tcp(HTTP、独自プロトコル)、443/tcp(HTTPS、独自プロトコル)を用いた外部との通信確立が可能となります。また、プロキシを導入している場合には、CONNECT接続可能なポート番号を443/tcp、563/tcpに限定していても、80/tcp(HTTP)、443/tcp(HTTPS、独自プロトコル)を用いた外部との通信確立が可能となります。
攻撃者は、このようなネットワーク構成の傾向を把握しているものと推測できます。

2.3 プロキシ対応

攻撃側着呼型は、攻撃対象PCが接続されている多様なネットワーク構成下においても、外部との通信確立を可能とするために、プロキシ構成に対応できるよう実装されてきています。Poison Ivyでは、攻撃対象PC上で稼働するサーバプログラムに、プロキシ構成情報を事前に設定したり、攻撃対象PCから自動的にプロキシ構成情報を窃取したりできるようになっています。  
特に、注目したいのは、2013年前後から出現し始めた新型PlugXで、認証プロキシを通過できる機能が実装されてきたことです。

2013年10月頃に流布した新型PlugXでは、Internet Explorerから、自動的にプロキシの認証情報を窃取する機能と、Firefox、Chrome、Operaなどのブラウザの場合には、ブラウザの通信を盗聴して、プロキシの認証情報を窃取する機能が実装されました[3 ]。もちろん、新型PlugXの中には、HTTP要求のヘッダ部に窃取したプロキシの認証情報が設定されているのですが、HTTP要求のヘッダ部の改行が適切ではないために、認証プロキシの認証処理に失敗する事例も確認しています(図 7)。

図 7:新型PlugXが送信するHTTP要求のヘッダ部が適切ではない事例
図 7:新型PlugXが送信するHTTP要求のヘッダ部が適切ではない事例

さらに、2014年6月頃に流布した新型PlugXには、Firefoxから、自動的にプロキシの認証情報を窃取する機能が実装されてきています[4]。

おわりに

APT世代の標的型攻撃で使用される遠隔操作ツール(RAT)は、インターネットとイントラネットの境界にファイアウォールが設置されていることを想定した攻撃側着呼型世代のツールです。遠隔操作ツールには、防御側の対策を回避する機能が追加されるだけではなく、攻撃者自身が、防御側のネットワーク構成の傾向を把握して使用する機能を選択しています。このようなAPT世代の標的型攻撃に立ち向かうためには、多層防御の中に、攻撃者の活動傾向を常に反映して行く必要があります。

参考文献

1) トレンドマイクロ:2012年上半期国内における持続的標的型攻撃の傾向(2012)
2) トレンドマイクロ:2013年上半期国内における持続的標的型攻撃の分析(2013)
3) IIJ-SECT:新型PlugXの出現(2013), https://sect.iij.ad.jp/d/2013/11/197093.html
4) トレンドマイクロ:標的型サイバー攻撃で使用される遠隔操作ツール「PlugX」のさらなる亜種を確認(2014),http://blog.trendmicro.co.jp/archives/9748

7. 更新履歴

2015年3月23日
  • このページを新規作成しました。

担当:寺田、大西/HIRT