実行されたプログラムを調査しよう!【ShimCache解析編】

男がプログラムを作成
※当サイトはプロモーションが含まれています

こんにちは、ぎんたです。

  • 過去端末上で実行された不正なプログラムの実行履歴を調査したい!
  • 社員がコンプライアンスに違反したアプリを勝手に端末にインストールし、実行した履歴がないか調査したい!

このように思うことがあるかもしれませんね。

フォレンジックの技術・知識を使えば、このような要望に応えることができますよ。

今回は、ShimCacheを用いて端末上で実行されたプログラムを調査する方法について解説していきます。

目次

ShimCacheの内容と解析対象の場所

ShimCacheは、OSとアプリケーションの互換性を保つために使用されます。

このアーティファクトを追跡することで、このマシン上で起動したアプリケーションを追跡できます。

また、ShimCacheはApplication Compatibility Cache(AppCompatCache)と呼ばれたりもします。

こころ

プログラムの実行履歴はShimCacheだけを見ていけば充分かな?

ぎんた

PrefetchやUserAssistなどプログラムの実行痕跡は他にもあるよ。
実際の解析ではそれらも併せて見ていき、端末上で実行されたプログラムを総合的に判断するかな。

このアーティファクトはSYSTEMハイブ内の以下の場所にあります。

SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache
(Win7/8/10)

SYSTEMハイブはレジストリファイルの一つで、フォレンジックツールを使用して抽出できます。

レジストリの解説や、フォレンジックツールを使用した抽出のやり方については今後執筆する別の記事で紹介できればと思います。

さて解析に使用するツールですが、今回はEric Zimmerman氏のツールAppCompatCache Parserを用いた解析方法を紹介します。

このツールは無料で公開されており、以下のリンクからダウンロードできます。

Eric Zimmerman’s toolsのダウンロードサイト

AppCompatCache Parserを用いたShimCacheの解析

解析して出力された結果を見てみましょう!

使い方は簡単で、以下のコマンドを実行し、事前に抽出したSYSTEMハイブファイルを読み込むだけです。

AppCompatCacheParser.exe –csv <結果の保存先> -f <事前に抽出したSYSTEMハイブファイルのパス>

コマンドの実行例は以下の画像のとおりです。

AppCompatCache Parserコマンド実行例

ここでは、Desktop上に事前に抽出した「Systemハイブファイル」を解析し、「testapp.csv」という名前のフォルダを作成しcsvで解析結果を出力しています。

※ちょっと紛らわしいですが、名前の付け方をミスしています。

上記のコマンドを実行した結果、testapp.csvというフォルダができて、その配下にcsvファイルを出力していました。

AppCompatCache Parserが出力したcsvファイル

エクセルで開いた画面は以下のとおりです。

AppCompatCache Parserの解析結果で判明した実行ファイル

2年以上前にアプリケーションを実行した履歴を確認できました

このファイルは僕が以前作成したC2サーバへ接続するテスト用の悪性のエージェントです。

すでにこのファイルは削除していましたが、プログラム実行痕跡として残っていたようです。

2020年12月1日に該当の悪性プログラムが実行されたと言えそうです。

まとめ

今回は、ShimCacheを使った実行されたプログラム調査を解説しました。

振り返り
  • ShimCacheを解析することで、過去に端末上で実行されたプログラムが判明する
  • AppCompatCache Parserを用いてShimCacheの解析ができる

参考になりましたら幸いです。

以上、ぎんたでした。

サイバーセキュリティを学ぶ上で必要な攻撃と解析に関する他の記事は、以下のリンクで確認できます。

学習に関しましては、以下のセキュリティの勉強法、おすすめの学習本・動画の記事が多くの方に読まれています。

資格の記事については以下の記事がおすすめです。

ITエンジニアへの転職については以下の記事がおすすめです。

その他学習・転職関連に関しましては、以下の記事もあわせて読まれています。

ぜひご覧ください!

よかったらシェアしてね!
目次