標的型攻撃に使われるマルウエアを検知するVolatility Plugin(2015-10-28)

今回は、マルウエアを検知し、検知されたマルウエアの設定情報を抽出するためのツール「apt17scan.py」について解説します。このツールは、JPCERT/CCが作成したもので、メモリフォレンジックツールであるThe Volatility Framework(以下Volatilityと略す)のPluginとして実現されています。2015年10月28日に開催されたCODE BLUE 2015で発表した「日本の組織をターゲットにした攻撃キャンペーンの詳細」と題した講演の中でも紹介しました。
なお、ツールはソフトウエア開発プロジェクトのための共有ウェブサービスGitHubで公開していますので、次のWebページからダウンロードしてご利用ください。


JPCERTCC/aa-tools・GitHub
https://github.com/JPCERTCC/aa-tools

検知対象のマルウエアについて

apt17scan.pyは、日本の組織をターゲットとして活動している特定の攻撃グループが使用している次のマルウエアを、メモリイメージを探索して検知し、検知したマルウエアの設定情報を抽出するために開発されました。

  • Agtid
  • Hikit
  • McRAT
  • Preshin
  • BlackCoffee
  • Derusbi


このマルウエアを使っている攻撃グループについては、多くのセキュリティベンダーがAPT17(FireEye)[1]やAurora Panda(CrowdStrike)などと名付けて調査しています。
この攻撃グループの特徴の1つに、メモリ上にしか存在しない(ファイルとして保存されない)マルウエアを使うことがあります。そのため、インシデントの調査を行う場合、ハードディスクを調べるだけではマルウエアを発見できない可能性があります。発見できた場合にも、マルウエアの設定情報が攻撃者の命令によって変更されている可能性があります。そのため、ダンプしたメモリイメージをオフライン調査し、メモリ上にしか存在しないマルウエアを検知したり、実行中のマルウエアの設定情報を抽出したりする必要があります。apt17scan.pyは、こうした背景から開発されました。


apt17scan.py

apt17scan.pyは、次の機能を持っています。

  • apt17scan: メモリイメージからAgtid、Hikit、McRAT、Preshin、BlackCoffee、Derusbiを検知する
  • derusbiconfig: メモリイメージからDerusbiを検知し、マルウエアの設定情報を抽出する
  • hikitconfig: メモリイメージからHikitを検知し、マルウエアの設定情報を抽出する
  • agtidconfig: メモリイメージからAgtidを検知し、マルウエアの設定情報を抽出する

実行する際は、apt17scan.pyをVolatility内の”contrib/plugins/malware”フォルダに保存し、以下のように実行します。

$python vol.py [apt17scan|derusbiconfig|hikitconfig|agtidconfig] -f <memory.image> --profile=<profile>

 

図1がapt17scanの実行結果の例です。検知したプロセス名(Name)やプロセスID(PID)、マルウエア検知名(Malware Name)が表示されています。

図1: apt17scan実行結果

図2がderusbiconfigの実行結果の例です。多くの場合、Derusbiは内部ネットワークのプロキシ情報を持っています。また、IDにはターゲットとなった組織を識別する文字列などが含まれています。

図2: derusbiconfig実行結果

hikitconfig、agtidconfigに関しても同様にマルウエアの設定情報を表示することができます。



おわりに

apt17scan.pyが検知対象としているマルウエアは前述の6種類ですが、この攻撃グループはそれ以外にPlugXやその他のマルウエアも使用していることを確認しています。今後、他のマルウエアについても検知できるようにする予定です。
ツールに関するご意見や、フィードバックをお待ちしています。


分析センター 朝長 秀誠


参考情報
[1] FireEye - APT17: Hiding in Plain Sight - FireEye and Microsoft Expose Obfuscation Tactic
  https://www2.fireeye.com/WEB-2015RPTAPT17.html

Appendix 検体のSHA-256ハッシュ値

  • Agtid: b33ffbec01b43301edd9db42a59dcd33dd45f638733e2f92f0cb5bfe86714734
  • Hikit: 8da8dce703bc66d6ce57046151403f0972216b6b9d7b0127e8f1d5c788fea1ba
  • McRAT: cc985872fe35fbb70b99c4adc5e51b52bc8358df08b4193e7b30251f967604f4
  • Preshin: feafe1e3c9d93667e11712793f6c95fe953a1058519cfefb81f95ea2626af267
  • BlackCoffee: 20cd49fd0f244944a8f5ba1d7656af3026e67d170133c1b3546c8b2de38d4f27
  • Derusbi: 6d02c109b76267101c0d48c89b762d15b85c0eda4bbcd9f27bd76a905db202cd
≪ 前へ
トップに戻る
次へ ≫