@port139 Blog

基本的にはデジタル・フォレンジックの技術について取り扱っていますが、記載内容には高確率で誤りが含まれる可能性があります。

SANSからの練習問題を試す プロセスの確認

SANS の Blogでメモリフォレンジック問題の解答が示されているのですが、この解答内容がとても興味深く技術的にも考える上でも楽しめます。

APT Memory and Malware Challenge Solution

http://digital-forensics.sans.org/blog/2014/02/08/apt-memory-and-malware-analysis-solution

上記では男らしく?Volarilityで解析しているのですが、FOR508コースで覚えた内容を復習する意味でも、いきなりVolatilityではなく、Mandiant Redlineで解析してみることにします。(利用バージョンは現時点で最新の1.11.0)

 

プロセス一覧を眺めてもわかりにくいというのが正直なところですので、Hierarchical Processを使い階層構造でプロセス一覧を確認してみます。

トレーニングではこの段階でMRI Scoreが高いものが表示されて分かりやすかったわけですが、このイメージでは残念ながらそういった結果は表示されません。

しかしながら、上記解説記事でもあるように、svchost.exe配下にiexplore.exeが存在するという親子関係としては通常でないものが確認できます。*1

f:id:hideakii:20140223182404j:plain

Pathで確認すると正しいパスから実行されているように見えますが、プロセス情報の詳細を確認してみると、SIDがS-1-5-18となっており、SYSTEM権限で実行されている事もわかります。

f:id:hideakii:20140223182414j:plain

Volarilityでも複数コマンドを使えば同じ情報を得られますが、このレベルでの初期確認という面では、Redlineの方が簡単そうです。ただし、この親子関係の不自然さに気がつく事ができるのか?はまた別問題としてありそうです。例えば、svchost.exe配下の名前がiexplore.exeではなく、よりまっとうな名前?のプロセスであった場合には、一見しただけでは気がつかないのではないかと思うわけです。

プロセス一覧と、Pathを確認する中で、例えば temp 配下から実行されているような不審なものは見当たりません。

RedLineとVolarilityではプロセス情報の検索方法に差異があるコマンドもあり、RedLineでは見えてないプロセス情報をVolatilityで得られる可能性もありますので、念のため確認しておきます。volatilityのpslistはRedlineと同じ結果になりますがシグネチャベースのpsscanでは件数としてはもう少し多くのデータが出力されます。ただし、PIDなどを確認していくと重複している部分もあり、pslistで出力されていたプロセス以外を発見できるイメージデータではないようです。

プロセス関連では、もう一つsvchost.exeの引数がどうなっているか、引数が無いようなものがあるかもRedlineで確認しておきたいと思います。

f:id:hideakii:20140223182423j:plain

先ほどの不審なiexplore.exe(PID 796)の親はPID 884のsvchost.exeですが、引数としては"C:\WINDOWS\system32\svchost -k DcomLaunch"となっています。

SANS Blogの解説では、この親プロセスについての調査は特に触れられてない所なのですが、これが問題ないのかどうかは別途確認していくのをmemoしておきたいと思います。

*1:通常はExplorer.exeが親となっている