世の中にはいろいろなフォレンジックツールがあるが、多くのエンジニアにとってメインウェポンとなるのが統合型のフォレンジックツールだろう。
今回は無料の統合型ツールAutopsyのインストール方法や基礎的な使用法を紹介したい。
Autopsyとは
概要
Autopsyは、BasisTechnologyが提供している統合型のフォレンジックツール。
統合型ということで、単一のアーティファクトを解析するタイプではなく、HDDやイメージデータまるごと解析するタイプのツールになる。
犬のマークでおなじみなので、セキュリティ業界の人であれば一度は見たことがあるかもしれない。

特徴
無料
Autopsyの一番の特徴は無料なこと。
統合型のフォレンジックツールといえば、Xways、Axiom、UFEDなどが有名だが、どれも有償。
まともに買おうとすると、〇〇~〇〇〇万円ほどするような値段。
練習やお勉強のために買うのはちょっと無理がある。
その点Autopsyであれば完全無料なので、いつでも気軽に使用できる。
会社の自由研究(強制)でツールの勉強などする場合に使ってみるのもいいかもしれない。
どうせお金だしてくれないでしょ?
日本語化
このツールは日本語化されていて、誰でも使いやすくできているのも素晴らしい。
日本語化には特別な設定は必要なく、インストール後に自動的にローカライズされるので大変お手軽。
有志プラグイン
また、有志作成の追加プラグインもたくさんあっておもしろい。
Githubにまとめられていたりするので、興味があったら見てみると面白いかもしれない。
解析できる媒体
Autopsyでは、たいていの媒体を解析できる。
イメージデータ、HDD、SSD、Windows、Mac、Linux、モバイル機器…
無料と思えないほどの充実度!すごすぎ!
インストール方法
まずは下のサイトでインストーラをDL。

DLが完了すれば、インストーラを実行する。

つぎへ。

つぎへ、つぎへ、と何度も押したらすぐにインストールは完了する。

インストール自体はこれで終了。簡単。
HDDイメージの解析例
Autopsyでイメージデータを解析
それでは、サンプルとして最もシンプルな解析を行ってみる。
あらかじめ、VirtualBox上のNTFSボリュームをFTKImagerでイメージ化しておいた。
これを解析してみよう。
まずは先ほどインストールしたAutopsyを起動する。
この時点からすでに日本語化されていて、製作者たちのユーザー愛を感じることができる。
起動すれば新規ケースを選択。

ここでいうケースとは、一般的には「株式会社むちぽぽのケース」「むちぽぽ商会のケース」などと事件単位を区切るときに使う表現。
適当にケース名を設定し、ケースフォルダを「ベースディレクトリ」のところに設定する。
設定出来れば次へ進む。

次はケースの詳細情報を入力する。
番号と調査員名を適当入力して次へ。

するとしばらくケース用のDB設定が行われる。
だいたい1~2分で出来上がる。

次の画面ではホストを設定する。
基本的にそのままで次へ。

データソースタイプを選択する。
今回はFTKで作成したディスクイメージなので、「ディスクイメージまたはVMファイル」を選択する。

そしてデータソースとして、あらかじめ作っておいたイメージデータを指定する。
このとき、タイムゾーンを設定することができるので、忘れずに日本時間にしておく。

次はAutopsyで解析する項目を設定する。
解析時間を短くするために項目を絞っている。

項目の設定が済むと、こんな画面に。
いろいろと設定をしているよう。(雑)

データソースの追加が完了すると、いよいよ解析がスタートする。
下の画面ではすでに解析が始まっている。
終了ボタンをクリックする。

これが解析結果画面になる。
画面右下の%が100になれば解析完了するのでしばらく待とう。
ちなみに解析途中でも左側のカラムから解析結果を見ることができる。

これで解析までは終了。
解析結果の確認
解析の完了
しばらく放置していると解析が完了した。下の解析完了後画面を見てみると、右下の%表示がなくなっているのがわかるはず。
参考までに、メモリ8GBのVMで75GBのイメージを解析して10時間くらいかかっている。

削除されたファイルの復元
画面左側のツリーから解析対象アーティファクトを選択すると、右側に結果が表示される仕様となっている。
アーティファクトはたくさんあるので代表的なものをいくつかピックアップして紹介。
まずは削除されたファイルを表示。
これらはファイルシステムからカービングされたもの。

過去にExplorerで開いたフォルダ
次にShellBagを紹介。
これはレジストリに含まれるデータで、ユーザがWindowsExplorerを使って開いたフォルダを記録しているアーティファクト。
不届き者を追及するときに使うと面白いかもしれない。(そういう場面があるかはわからない)

Webブラウザでのアクセス履歴
お次はWeb履歴。アクセス先URLやアクセス日時が保存されている。
おまけ要素としてリファラなんかも表示される。

Webフォームの入力履歴
つぎ。下はWebフォームの入力データ。
ブラウザは入力データを自前アーティファクトに記録することがあるため、パッと見た感じだがそれを解析しているんだと思う。
右下の枠(詳細項目)を見てみると、過去に入力した覚えのある文字列を発見できる。

ゴミ箱のデータ
これはゴミ箱のデータ。
いわゆるRecycle.bin。
Recycle.binのデータには$Iタイプと$Rタイプがあり、ここでは$Rタイプとして表示されているが、$Iらしきデータも一緒に…
($Rには削除前の実データが記録されている)

ネットからダウンロードしたファイル
続けてADS Zone.Identifier。
NTFSにおける代替データストリーム(Alternate Data Stream)。
よく知らない人向けに簡単に説明しておくと、Zone.IdentifierとはNTFS(Windowsが使っているファイルシステム)でのメタデータの一つで、ファイルの入手元を示す役割がある。
例えば、ネットからダウンロードしてきたファイルは「ネット」、端末内で作ったファイルであれば「この端末で作った」と示すような数字が入る。
Autopsyでは、ネット上からダウンロードしたデータを「ウェブダウンロード」という項目で抽出することができる。
この解析にはおそらく(というかほぼぜったい)Zone.Identifierが使われている。

実行ファイルの履歴
皆さんお待ちかね。
実行ファイルの履歴を表示する。
Autopsyでは、PrefetchやSRUM等、実行ファイル関連のアーティファクトを複数解析してくれる。
以下の画像では、データソースはPrefetchとなっているが、もちろんその他のアーティファクトもある。
データソースごとに表示される情報量は異なるが、以下の例ではソースがPrefetchなので、過去8回分の履歴を追うことができる。

【Prefetchを単体で詳細解析する記事はこちら】
【SRUMの紹介はこちら】
長くなってきたので今回はここまで。
まとめ
Autopsyのインストールから解析実行、そして結果確認の方法まで紹介した。
内容は基礎的な使い方にとどまってしまったが、実際に触ればもっといろいろなことがわかるので、結構面白かったりする。
また、Autopsyはプラグインも充実しているため、いいツールを探してどんどん機能アップさせることもできるがいいところ。
Autopsy関係の記事はまた今後もいくつか書いてみたい。
コメント