第230号コラム:杉山 一郎 幹事(株式会社サイバーディフェンス研究所
フォレンジックエバンジェリスト)
題:「フォレンジック調査の現場にて最近思うこと」

突然ですが、フォレンジック業務に携わっている(特に現場で解析されている)皆さんに質問です。解析対象に採用されている技術や、その解析手法等の動向はどの様に追跡し吸収していますか?スマートフォン、Windows 8、オンラインストレージ、SNSと様々なモノが日々解析対象に追加されていくキツイ状況ですが、全部吸収できていますか?僕は挫けそうです、、

冗談はさておき、僕は主にメーリングリスト、RSS、LinkedIN等のSNSを中心に日々追跡し、可能な限り情報吸収するようにしていますが、ほとんどが海外発信のソースで、言語の問題だけでなく日本固有の問題(文字コードだけでなく、日本独自のサービス等)にも悩まされています。

分かりやすい例を挙げてみます、内部犯行による情報漏えいの可能性を調査の一つとしてWebサービスやチャット等の使用状況をチェックしたいとします。海外の有志などがまとめた情報や海外製の自動化された製品だと日本独自のサービスが漏れてしまう可能性が高まるため、普段から解析者(チーム)はある程度の情報収集と吸収(対応準備)をしておく必要があります。もちろん、解析する時期が明確であればその様な情報がなくてもタイムライン解析などで特定時期のアクティビティは分かります。しかし、実際の案件で情報漏えいの正確な時期が分かっているケースはそう多くはないです(あくまで私の経験です)。そのため、前述の様な情報収集と、収集した情報を解析に使える状態にすることが普段から必要となります。口で言うのは簡単ですが、行動にするのは大変です(調査や講師など別の業務もしないといけないわけですし…)。
単にツールやアーティファクトに関する情報収集だけでなく、現場で起きたトラブル等の経験も共有できると嬉しいなと思ったりするんですが、日本ではあまりそういった場が無いように思います(海外はたくさんあります)。
もちろん、「無いから誰か作ってください」とか他力本願にならないように自分で数年前からフォレンジック技術者のコミュニティを作る努力していますが、なかなか大変です…

さて、関係無い前置きが長くなりましたが、本題です。
弊社だけではなく皆様の周囲もそうかなと思いますが、インシデント対応依頼が昨年から急増しています。その対応にて思ったこと(愚痴とも言う?)をことをツラツラと書かせて頂きたいと思います。

●データの収集について

これまでの対応では、IDEやSATA等のHDDを搭載したPCやサーバーがメインでしたが、最近は少しずつクラウドやスマートデバイス上のデータも解析せざるを得ないケースが出てきています。前者においては、サービスの種類に依存しますが、サービスで用意されている管理コンソール経由で収集したり、ネットワーク・フォレンジックのエージェント経由でデータを収集したりと色々と苦労しています。
後者においても、OSによって採用できる手法が変わってきますが、基本はエージェントを端末にインストールしてデータ収集する方法か(場合により、一時的なroot権限を取得するためにexploitを使用)、同期用のプロトコル経由でのデータ収集、フォレンジック用にカスタマイズしたブートイメージを使ったデータ収集のいずれの方法になると思います。特に最後の手法は、機種に依存する手法になるため、それ以外の手法が主となる気がしています。

これらの手法を採用せざるを得ないことは、従来のフォレンジックで使えていた手法がそのまま使用できない、ライブ(稼働状態)でデータを取らざるをえないケースが増えているということになります。
この辺りについては証拠保全ガイドラインの次期改定などにおいて議論され、ある程度の業界基準みたいなのが見えてくるといいなと思いつつ、現状は独自の判断で現場で取れる最善の対応をしている今日この頃です。

●複雑になる解析について

私は業務としてマルウェア感染、内部不正など様々なインシデントに対応していますが、特に最近では「情報搾取を目的としたマルウェア感染インシデント」が増えています。昔のマルウェア感染のインシデントでは端末一台の解析(とそのマルウェア解析)でクローズする案件が殆どでしたが、最近はネットワーク・フォレンジックやメモリ解析などの手法を組み合わせていかなければ状況が把握できない案件が増えています。マルウェアの検知あるいは感染の疑いが早い段階であれば、ネットワーク・フォレンジックのデータソースである各種ログファイルはもちろん、ファイルシステムのジャーナル等が豊富に残っており、情報の上書きが少ないため、解析が早期かつ詳細に実施できます。

ところが、感染時期が古いと状況が変わってきます。ネットワーク・フォレンジックを行うにも、各種ログファイルが不十分であることが少なくありません。そうなってくると、ディスクの解析だけで対応しなければなりません。当然、解析対象のコンピュータは感染してからもずっと使用しているケースが多いため、多くのファイルやデータが上書きされています。そのため、弊社ではこういったケースでは単純なファイルカービング(各種ファイルタイプのシグネチャ情報を検索するデータリカバリ)に加え、検索したい情報(例えば、レジストリの特定キーやログファイルのエントリ等)の特徴を使ったカービングも行なっています。このカービングで発見した痕跡をバイナリレベルで参照して、それが意味するものを解釈します。単純な例ですと、NTFSのインデックスバッファに検索データが発見された場合、以前特定のディレクトリにその名前のファイルが保存されていて、そのメタ情報が○○だったとか推測できますし、シャドウコピーにて検索データを発見したなら単に以前のバージョンからキーワードを含んだファイルを復元できるかもと推測できます。この様に、ファイルシステムやシャドウコピーのような場所にあたればいいが、さほど普及していない(見る機会が少ない)バイナリ形式にあたることも想定されます。それをどう解釈できるかで調査の方向が変わってきますので、このバイナリを解釈する能力と各種ファイル構造の知識は、非常に重要だと思います。これはセキュリティインシデントに限らず、不正調査でフォレンジックを行う場合も同様だと思います。

では、この解析能力をどう上げていくかですが、これは情報収集に加えて現場での経験、更にはDC3 Digital Forensic Challenges(http://www.dc3.mil/challenge/)の様なコンテストへの挑戦等が良いのではと個人的に思っています。

●最近多いなと思う案件(以下は、弊社で対応した類似する複数の事例から)

ある組織にて数年前からマルウェアに感染している事象が、最近導入した監視システムによって発覚しました。このマルウェアは既知のダウンローダーで、通信先のサーバーもダウンしていたため、クライアントは問題ないと推測していましたが、「マルウェアが何故そこにあるのか、本当にそのマルウェアだけなのか」ということをお話して、結果的に弊社にて解析を実施することになりました。詳細な内容を書くと長くなりますので割愛し、結果の概要だけをお伝えすると、最初にハードディスクの未使用領域のバイナリを解析し、他のマルウェアやBATファイルの痕跡を確認しました。更に解析を進め、RARやSysinternalsなどの「使い方によっては悪用できる」ユーティリティツールがダウンロードされ、使用されているのも確認しました。最終的に確認できた情報から、数年前から複数のマルウェアに感染しており、マルウェアが別のマルウェアをダウンロードしては削除したり、収集した情報をRARなどで圧縮及び分割し外部へ送付されており、たまたま消し忘れたマルウェアの通信を補足したという事象が推測できました。

この様に複数のマルウェアとユーティリティを使い組織内のネットワークにてコソコソとデータを搾取するアクティビティは、最近のインシデント対応にて多く見ます。この様なケースは気付きにくいだけでなく、当然解析も一筋縄ではいかない。そして、この様な調査をワンボタンで解析できるフォレンジックツールは存在せず、開発されることもないです(多分)。最終的にはヒトがやらなければならないんですが、そこには経験のみならず、常に最新動向の把握する努力や大量のデータを根気よく解析する精神等も求められ、誰でもできるわけではありませんし、すぐに何でも解析できる人間が育つわけではありません。そのせいか、フォレンジック調査を専門とする方が非常に少ない印象があります。

これから先、攻撃やアンチフォレンジックの手法が発達し、ユーザが使うデバイスやサービスの多様化が更に進んだ時に、今よりもっとインシデント対応や不正調査で使用するフォレンジック技術が細分化するのは目に見えています。このままインシデント対応やフォレンジックが出来る人間が少ない状況ですと、近い将来大変なことになるのでは危惧しています。このことを少しでも多くの方(特に組織や団体における役職の方)に知って頂き、この状況が改善されることを願っております。

【著作権は杉山氏に属します】