@port139 Blog

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

Autopsy 4.4.0 における文書ファイル・メタデータの扱い(パスワード付き DOCX)

パスワードが設定されているDOCXファイルのメタ情報

文書ファイル(DOCX)にパスワードが設定されている場合に、Autopsy の「キーワード検索」でファイルのテキストがどの様に処理されているか。

パスワードを設定したDOCXファイルを処理した後、「インデックス化されたテキスト」のタブでデータを確認すると、先頭部分は下記状況になっており、単純にファイルから文字列が抽出されたように見える。

Root Entry
EncryptedPackage
؀䐀愀琀愀匀瀀愀挀攀猀
Version
Microsoft.Container.DataSpaces
EncryptedPackage2
StrongEncryptionDataSpace
StrongEncryptionTransform
{FF9A3F03-56EF-4613-BDD5-5A41C1D07246}N
Microsoft.Container.EncryptionTransform
DataSpaceMap
DataSpaceInfo

抽出されたテキストを確認しても、Tika によりメタデータが抽出された項目は見当たらない。「インデックス化されたテキスト」の最後は下記のようになっており、メタデータの記載がない。

encryptedHmacKey="Q+z2b4wO9V6OO7y7rWg0+ujFtImhW4FQsueDnCvcU3XfZGqrBgGuX5PqszLuq/8z7Ur8zJRDRAseyVAjI2v/kw==" encryptedHmacValue="RSj2nNvO828MpgmISsfVt3XoVbEJk8YgAckQUpSShvLgUvMYUmDmtFj1XiA+jgnDpSja1ioIqqHsvSZOtsqDLw=="/><keyEncryptors><keyEncryptor uri="http://schemas.microsoft.com/office/2006/keyEncryptor/password"><p:encryptedKey spinCount="100000" saltSize="16" blockSize="16" keyBits="256" hashSize="64" cipherAlgorithm="AES" cipherChaining="ChainingModeCBC" hashAlgorithm="SHA512" saltValue="an/GDIINQOhnC7w4C+ciiw==" encryptedVerifierHashInput="Uyn8vKG8Q18Yloe+dxYumw==" encryptedVerifierHashValue="x4w5EHY/0imsXffowFDhYSNEEB5s8Jo7nrmXdOVTb661gF2tLwKB9p0CWzoatK8A3ZowkHmGvtMfIZ3aZeBU1A==" encryptedKeyValue="2T3ypeyqHBzGx9ErSVJoBMJOVDc9s2BEanzcRCzZ5Jk="/></keyEncryptor></keyEncryptors></encryption>aS
鰮牨㎤亅措
瑐躖焊虡楘濄梶
2\+g

Autopsyでタブを「ストリング」に切り替えて抽出されたテキストを確認すると、先頭部分は下記状態になっている。

Root Entry
EncryptedPackage
DataSpaces
Version
Microsoft.Container.DataSpaces
EncryptedPackage2
StrongEncryptionDataSpace
StrongEncryptionTransform
{FF9A3F03-56EF-4613-BDD5-5A41C1D07246}N
Microsoft.Container.EncryptionTransform
DataSpaceMap
DataSpaceInfo

先ほど、「インデックス化されたテキスト」で確認した先頭部分と同じく抽出したデータが確認できる。スクリプトのプルダウンメニューを切り替えて確認することで、デフォルトの Latin - Basic 以外の内容も確認できる。

 このような出力結果は、パスワード設定されている DOC ファイルにおいても同じ結果となる。

DOCX または DOC ファイルがパスワード設定されている場合、メタ情報は Tika により取得されず、「不明なファイル」としてオプションの“ストリング抽出”に従った処理が実施されている。

DOCX または DOC ファイルにパスワードが設定されている場合、本文テキストは抽出されない。また、Autopsy には「パスワード保護されたファイル」という項目でフィルタする機能がない。

この為、キーワード検索でヒットしない文書ファイル自体を確認するという意味では、“ストリング抽出”の結果として得られる文字列 『 Root Entry 』 を検索する方法も考えられる。

しかし、実際のケースデータに対して 『 Root Entry 』 を検索した場合、DLL や MSI ファイル内でも文字列が一致してくるため、結果を確認する場合には拡張子 DOCX でかつ文字列が存在する場合などで絞り込む必要がある。または、他の特徴的な文字列を検索KWとして指定する。

パスワード設定されているZIPファイル等

 パスワード設定されている ZIP や RAR ファイルについても、DOCX と同じく「不明なファイル」として“ストリング抽出”の処理が行われる。圧縮ファイル内のファイル名文字列などは部分的に抽出されるが、日本語部分は欠落する場合がある。

 パスワードが設定されている、ZIPファイルや RARファイルの検出については、「埋め込みファイルの抽出ツール」のエラーから確認ができる。インジェストモジュールを実行すると、パスワードが設定されている ZIP ファイルであれば下記のエラーが出力される。

アーカイブ: ファイル名.zipの一部のファイルは暗号化されています。 埋め込みファイルの抽出ツール エクストラクターがこのアーカイブの全てのファイルを抽出できませんでした。

また、該当ファイルの「結果」タブを参照することで、「暗号化検出済」や名前として「完全な暗号化」という記載を確認できる。(これらの文字列はインデクスされていない為、キーワード検索からの検索はできない)

f:id:hideakii:20170812071452p:plain

 

 調査対象のデータ内に存在する、パスワード保護や暗号化されているデータを効率よく発見するには、どのような手順を組み込めばよいですか?