Offline Process Stack/Heap Search for Non-English-speaking People
以前書いたように、HBGaryはダンプしたWindowsメモリイメージのスタックやヒープ領域を含むVAD(Virtual Address Descriptor)ツリーを走査する文字列検索機能を持っているが、日本語など多言語のコードページに対応していなかった。ので、EnScriptで実装してみた。
「memoryforensictools_v0.01.zip」をダウンロード
IA32アーキテクチャのWindows XP SP2/SP3に対応。PAE(Physical Address Extension)対応。
上記zipには以下のファイルが含まれる。
- PsList.EnScript ブルーチェックしたメモリイメージのプロセス名、プロセスIDなどを表示
- VadSearch.EnScript ブルーチェックしたメモリイメージの特定プロセス内で検索を実行
- MFT_Lib.EnScript 上記2つのEnScriptがincludeするライブラリ
これらをEnCaseのインストールフォルダ内にあるEnScriptフォルダに放り込む。これでインストール終了。
まず、PsListで検索したいメモリイメージのプロセス情報を得る。
ブルーチェックしたメモリイメージファイルの各エントリについて、プロセス情報をコンソールに出力する(ブックマークも行う)。
次に、EnCaseのKeywordタブから検索したいキーワードを生成する。各言語に対応したコードページを指定。
生成したキーワードをチェックして、VadSearch実行。最初に検索するプロセスのIDを入力。
検索が終了すると、コンソールに検索したプロセス名・IDと結果のヒット数が表示される。
結果はSearch Hitsタブでハイライト表示で確認できる。
そもそもこのツールを作ろうと思ったのが、HBGary Responderのデモに対して「メッセンジャーやブラウザでユーザが入力した内容を調査したい」という意見があったからだが、HBGaryはmemory forensicsの機能に対してmalware解析機能ほど熱心に作る気が無いので、彼らを動かすよりも自分で作るほうが早いだろうと。
個人的には情報漏洩などの内部犯罪も含めるとmalwareによる犯罪は一部だと思っているので(重要だとは思うが)、もっと大局的な視点でものづくりをして欲しいなあと思う。Digital DNAとかいい技術は持ってるわけだし。
ところで、今回の実装はVolatility Frameworkのvaddumpコマンドをベースに作っているのだが、その過程でVolatilityは検索対象プロセスのVAD Rootアドレスを抽出する際、EPROCESSのリンクリスト(ActiveProcessLinks)を単純に参照しているだけであることが分かった。これはDKOM(Direct Kernel Object Manipulation)みたいな隠ぺいに耐性が無いんじゃなかろうか?要確認。典型的なのはFU Rootkitだったっけ。
P.S.
英語用エントリ(なぜかこっちは本名w)も作ってみたが、日本のブログサーバ?の優秀さを実感。使いにく過ぎる・・
2009/09/21 追記
Volatilityはpslistとpsscan*の出力を見比べて、マルウェアによる隠ぺいを発見してね、という趣旨らしい。いまさら知ったorz
つまり、Volatilityは*list系の実装はlink listを追うだけ、*scan系の実装はsignature analysis的な手法の両方を用いたハイブリッドアプローチ。WFTとかはもはや不要?
« Some EnScripts | トップページ | EnCase Certified Examiner »
「Digital Forensics」カテゴリの記事
- Bug Fixed: NTFS SI/FN Timeline EnScript(2012.05.11)
- Update: Memory Forensic EnScript(2011.05.06)
- Memoryze: Missing Connections (Settled)(2011.03.05)
- Making Filename Attribute Timeline(2010.11.18)
- Reserved Address Space in Windows Physical Memory(2011.05.11)
トラックバック
この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/401548/31213044
この記事へのトラックバック一覧です: Offline Process Stack/Heap Search for Non-English-speaking People:







コメント