アンタイ・フォレンジック妖怪の独り言

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

フォレンジック

コピー手順におけるミスやトラブルからキーポイントを考える

デジタル・データの(正しい)コピー手順とキーポイントを考える際に、過去の失敗から何か学ぶ事ができるのか?と思い整理してみています。 小ネタとしてお話するには良いかもしれませんが、こういった事に注意してください!!と手順書に書いたところで意味…

プログラムの通信履歴を残す

皆さんの組織では、マルウェア感染したWindows PCが(組織内の)何処と通信したか?、を追跡できるログを取っていますでしょうか? 先日のプログラム実行履歴についてTwitterで呟いたところ「次のトピックはSysmonですねw」と Haruyama さんから突っ込みを…

プログラムの実行履歴を残す

皆さん、プログラムの実行履歴って取られてますか? Windows が標準で搭載している監査機能を利用すると、プログラムの実行をセキュリティログに残す事ができます。 具体的にはローカルセキュリティポリシーなどで、「プロセス作成の監査」を有効にすればイ…

ホワイトリストによる通信制限

マルウェアへの感染が発覚した場合、該当端末を一時的にネットワークから隔離し、その後、より詳細に調査を行うという手順が一般的に取られるかと思います。 明確な対応手順が決まってない組織では、ネットワークからの隔離後に色々と操作をしてしまい、せっ…

メールの添付ファイルを実行禁止にする

年金機構における標的型攻撃による情報漏えい事件を受け、様々な組織で同様のウイルス、マルウェアへの感染が無いか、一斉に点検や対応が行われているようです。 報道発表によれば、一連の攻撃で使われたマルウェアは Emdivi と呼ばれているマルウェアという…

例題「電子メールに添付されたマルウェア」に感染を分解する

例えばトレーニングで「電子メールに添付されたマルウェアに感染」したケースを説明しなければいけないとします。 受講者が事前に学習する必要がある項目には何があるのでしょうか?、関連する技術要素として、どこまで事前に知っている必要があるのか?とい…

2015年時点での自分的 EnCaseスキルセットを棚卸し(2)

基本的な処理(調査を開始する前に行う下ごしらえ?と言えるのかもしれませんが)に関する項目は以下でしょうか。 主にはファイルの種類を特定したり、既知ファイルを除外する、検索を行い関連するデータを特定するといった部分になり、アーティファクトのパ…

2015年時点での自分的 EnCaseスキルセットを棚卸し(1)

EnCase を使い始めてかなりの年数が経過していますが、他のツールも使うようになりつつあるので、一度 EnCase に対して(自分にとって)必要な項目を棚卸ししてみたいと思います。まずは、データの取得から表示辺りまで。 ■インストール・設定・ケース作成 …

sqlparse v.1.1 を試す(2)

引き続き、sqlparse v.1.1 のテストを行ってみます。 昨日はページ内の削除レコードを検出する部分を試したわけですが、ページ内での上書きが発生した場合やページ再利用時にどうなるかテストしてみます。 まず、昨日と同じくサンプルのデータベースファイル…

sqlparse v.1.1 を試す

SQLite の削除データをパースするツール sqlparse v.1.1 を試してみたいと思います。 sqlparse v.1.1https://github.com/mdegrazia/SQLite-Deleted-Records-Parser/releases/tag/v.1.1 コマンドライン、GUI、Python スクリプトが提供されていますが、今回は …

Android の自動バックアップ(写真や動画)

Android のバックアップについては下記 URL で説明されていますが、写真や動画、については自動バックアップの設定を行う事ができます。 データをバックアップ、消去するhttps://support.google.com/nexus/answer/2819582?hl=ja 自動バックアップのオン/オフ…

Android のマルチユーザと adb backup (2)

Android のマルチユーザー機能に関連して「制限付きプロフィール」というユーザーを作成する事ができます。このユーザーは、Owner と同じ Google アカウントなどを使用しつつ使えるアプリケーションを制限したりする事ができます。ぺレンタルコントロールな…

Android のマルチユーザと adb backup (1)

AVD 上の Android でマルチユーザーを設定し、adb install コマンドで LINE をインストールしてみました。Owner と新しいユーザーの両方から LINE アプリケーションを起動する事ができますが、それぞれアプリケーションデータの保管場所は異なっています。 …

マルチユーザーのAVDを作成する

手元の Android 端末(Xperia Z Ultra)は、マルチユーザーに対応していませんので、マルチユーザー環境で adb backup がどの様に動作するかテストできません。 その為、SDK の Android Virtual Devie(AVD)を使い、エミュレータ上にマルチユーザー環境を作…

Android_ID の確認と LINE のリストア

adb backup でバックアップしたアプリケーション(例えば LINE)のデータを、adb restore で(エミュレータ上の仮想Androidへ)リストアすると、アプリケーションがエラーで起動しなくなります。 この点について、Android_ID が異なる影響を受けるといった情…

Android で LINE のバックアップをリストアする

adb backup を使えばアプリケーションのバックアップを取ることができ、バックアップしたデータは adb restore コマンドを使うことでリストアできます。 通常はバックアップを取得した実機へバックアップデータをリストアする事になりますが、いま使っている…

Android で LINE のバックアップを作成する(2)

LINE の標準機能によるトークのバックアップですが、[すべてバックアップ]を使ってバックアップを取ってみたいと思います。 バックアップの選択で[すべてバックアップ]を選択した場合、画面上に以下のようなメッセージが表示されます。 トーク履歴ファイル…

Android で LINE のバックアップを作成する(1)

adb backup でアプリケーションのバックアップを取るのではなく、アプリケーションが個別に持っているバックアップ機能によりバックアップを取ることも出来ます。 例えば LINE であれば、指定したトークルームのメッセージをバックアップする事が出来ます。 …

adb backup で Android 端末のバックアップを作成する(14)

adb backup では個別のファイルを指定してバックアップを取ることはできません。adb コマンドには pull コマンドがありますので、個別ファイルは adb pull コマンドを使うことで取得できます。 しかし、コマンドラインから対象ファイルのフルパスを指定する…

adb backup で Android 端末のバックアップを作成する(13)

Androidデバイスの内蔵ストレージとSDカードのデータをバックするのに、adb backup -shared オプションを使わずとも、PC に USB ケーブルで MTP(Media Transfer Protocol) モードで接続すれば Windows 上のエクスプローラから簡単にアクセスすることができ…

adb backup で Android 端末のバックアップを作成する(12)

Content Provider 経由でアクセス可能な標準的なデータのバックアップを取る方法として、アプリケーションをインストールし、アプリケーション経由でデータをコピーする方法も案としてはあります。 HOWTO: Use AFLogical OSE for Logical Forensics of an An…

adb backup で Android 端末のバックアップを作成する(11)

adb backup で取れないデータについても、Content Provider 経由でデータをバックアップする事ができる場合があります。 Facebook のほうで知ったのですが、adb shell conetnt コマンドというものがあり、このコマンド経由でアクセスする事が出来るようです…

adb backup で Android 端末のバックアップを作成する(10)

adb backup コマンドによるバックアップでは、root を取得しているわけではありませんので、バックアップされていないデータも存在するようです。基本的な部分として、SMSやカレンダー、コンタクトが含まれてこないと下記では注記があります。 Full Backup o…

adb backup で Android 端末のバックアップを作成する(9)

adb backup の -shared オプションですが、内蔵ストレージ、SDカード含めストレージのバックアップを取る事ができる点は便利なのですが、古いバージョンでは不具合があったり少し注意が必要なオプションです。 十分確認できていないのですが、Andrillerの作…

adb backup で Android 端末のバックアップを作成する(8)

adb backup のオプションには -shared | -noshared があり、SDカード内データのバックアップを指定できます。 Android Backup Extractor の Readme.txt には下記記述があり、どうやら古いバージョン?のバックアップには問題があるようです。 Creating a bac…

adb backup で Android 端末のバックアップを作成する(7)

adb backup のオプションで パッケージ名を指定する事で、個別アプリケーションのバックアップを行う事ができます。 デバイス内のアプリケーションを確認するには、adb shell pm list packages コマンドを使うことが出来ます。下記では -3オプションによりサ…

adb backup で Android 端末のバックアップを作成する(6)

adb backup で取得したバックアップデータ内にあるパッケージフォルダと、adb shell pm list packages で取得したリストを比較してみます。 手元の Xperia Ultra Z には幾つかのアプリケーションを追加でインストールしていますが、adb shell pm list packag…

adb backup で Android 端末のバックアップを作成する(5)

ここまでの adb backup コマンドでは、-apk は指定していませんでした。今回は -apk を指定して実行してみます。 adb backup -apk -all オプションとして apk を指定した場合、インストールされているアプリケーションの apk ファイルもバックアップ対象に含…

adb backup で Android 端末のバックアップを作成する(4)

adb backup コマンドでバックアップを取る際、端末側の確認画面でパスワードを指定する事により、バックアップファイルを暗号化する事ができます。 Android Backup Extractor に添付されている Reame.txt には以下の記載があります。 - Android debugging br…

adb backup で Android 端末のバックアップを作成する(3)

adb backup コマンドを使いバックアップファイルを作成しましたが、このバックアップファイルの内容を展開・確認するには環境の準備が必要になります。 ①Java 環境、②Cygwin環境 を手元の Windows 環境で設定しておく必要がありますので、それぞれ配布元のペ…

adb backup で Android 端末のバックアップを作成する(2)

adb devices コマンドでデバイスが認識できている状況が確認できましたので、次にバックアップを作成してみます。 adb backup には幾つかのオプションがありますが、まずはオプション指定せずにそのまま実行してみたいと思います。 adb backup -all コマンド…

adb backup で Android 端末のバックアップを作成する(1)

手元の Android 端末は SONY Experia Z Ultra なのですが、adb backup を使いバックアップを作成しておきたいと思いますので、そのメモとなります。 Android のバージョンは 4.4.2 になりますので、Android 4.0 以降に搭載されたという adb backup コマンド…

SANS ポスター:Windows Artifact Analysis(36) CFB(Compound File Binary)

Jumpリスト、LNKファイルに関連し、CFB(Compound File Binary)形式のデータを扱えるツールをメモしておきたいと思います。 Structured Storage Viewerhttp://www.mitec.cz/ssv.html Compound File Explorerhttp://sourceforge.net/projects/openmcdf/files…

SANS ポスター:Windows Artifact Analysis(34) Jump Lists

customDestinations の内部構造としては SHLINK 構造ですが、ツールによっては一部パースしていない情報があるようですので、少し確認しておきます。下記は 4119a98bddddcdb4.customDestinations-ms の ShellLinkHeader(76byte分)を抜粋したものになります…

SANS ポスター:Windows Artifact Analysis(33) Jump Lists

Jump Listsには、AutomaticDestinationsフォルダとは別にCustomDestinationsフォルダがあり、こちらにも 4119a98bddddcdb4.customDestinations-ms といったファイルが保存されています。AutomaticDestinations は CFB 形式でしたが、customDestinations の内…

SANS ポスター:Windows Artifact Analysis(32) Jump Lists

LinkInfo構造の続きとしては、VolumeID構造に続きLocalBasePath (variable)が続きます。LocalBasePathにファイルパスが記録されています。 データとしては更にPage 28のExtraData構造が続く形になります。ExtraDataには幾つかのプロパティデータブロックがあ…

SANS ポスター:Windows Artifact Analysis(31) Jump Lists

LinkInfo構造の内容を確認してみます。(MS-SHLINK の Page 15)先頭4バイトがLinkInfoSizeですので、下記では 7F 00 00 00 という値から 128byte分のデータ範囲を抜粋しています。 7F 00 00 00 1C 00 00 00 01 00 00 00 1C 00 00 002D 00 00 00 00 00 00 00…

SANS ポスター:Windows Artifact Analysis(30) Jump Lists

Jump Listsファイルの内部では、データとしてMS-SHLINK構造でデータが保存されていますが、ShellLinkHeader のオフセット 20 からの 4byte LinkFlags を確認する事で LinkInfo が存在するか確認できます。下記は ShellLinkHeader の 76byte 分ですが、LinkFl…

SANS ポスター:Windows Artifact Analysis(29) Jump Lists

Jump Listsファイルの内部では、データとして MS-SHLINK 構造でデータが保存されていますが、ShellLinkHeader の後には(ヘッダ内のLinkFlagsの値に依存しますが)LinkTargetIDList と LinkInfo 構造が続く事になります。 下記は ShellLinkHeader の後に続い…

SANS ポスター:Windows Artifact Analysis(28) Jump Lists

Windows 7 の Jump Lists ファイルである、 <ApplicationID>.automaticDestinations-ms ファイル構造の続きになります。Jump Listsファイルの内部では、データとしてMS-SHLINK構造でデータが保存されています。下記はディレクトリエントリ名 1 の 128byte 分になります。 31</applicationid>…

SANS ポスター:Windows Artifact Analysis(27) Jump Lists

Windows 7 の Jump Lists ファイルである、 89b0d939f117f75c.automaticDestinations-ms ファイル構造の続きになります。ここまでは通常のセクタを見てきましたが、MS-CFBには Mini FAT と Mini sector(Mini stream)というデータ構造も存在します。Compoun…

SANS ポスター:Windows Artifact Analysis(26) Jump Lists

Windows 7 の Jump Lists ファイルである、 89b0d939f117f75c.automaticDestinations-ms ファイル構造の続きになります。オフセット 1024 からの1セクタ分は[MS-CFB]のPage 23 に記載がある Compound File Directory Entry になります。ディレクトリエントリ…

SANS ポスター:Windows Artifact Analysis(25) Jump Lists

Windows 7 の Jump Lists ファイルである、 89b0d939f117f75c.automaticDestinations-ms ファイル構造の続きになります。 オフセット 512 からの1セクタ分は FAT になります。いわゆるFATファイルシステムの管理方法と基本的な考え方は同じようで、使われて…

SANS ポスター:Windows Artifact Analysis(24) Jump Lists

Windows 7 の Jump Lists ですが、AutomaticDestinations フォルダ配下にあるファイルは [MS-CFB] Compound File Binary File Format の構造になっています。MS-CFB についてはマイクロソフトからフォーマットに関する資料が提供されています。 [MS-CFB]: Co…

SANS ポスター:Windows Artifact Analysis(23) Jump Lists

Program Execution カテゴリにある Win7 Jump Lists について確認してみます。Windows 7 の Jump リストはポスターの Location で示されている下記パス配下に存在しています。 C:\Users\<user>\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations[Ap</user>…

SANS ポスター:Windows Artifact Analysis(22) AppCompatCache

Program Execution カテゴリにある AppCompatCache について確認してみます。この値は SYSTEM レジストリ ハイブの下記キー配下に値として存在しています。 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache REG_BINARY…

SANS ポスター:Windows Artifact Analysis(21) UserAssist

Program Execution カテゴリの最初に出てくるのが UserAssist になります。GUIベースのプログラムに関する実行履歴が、各ユーザーの NTUSER.DAT ファイル内に記録されていますので、その内容を確認する事になります。 HKEY_CURRENT_USER\Software\Microsoft\…

SANS ポスター:Windows Artifact Analysis(20) Program Execution

SANS Windows Artifact Analysis ポスターにあるカテゴリ、Program Executionについて見ていきたいと思います。プログラム実行に関するアーティファクトという事で、以下の項目がリストアップされています。 UserAssist Last-Visited MRU RunMRU Start->Run …

SANS ポスター:Windows Artifact Analysis(19) Chrome Download

ポスターには記載がありませんが、Google Chrome についても確認しておきたいと思います。 Google Chrome では以下のフォルダ配下に SQLite3 形式で History ファイルが存在しています。 Win7 %userprofile%\AppData\Local\Google\Chrome\User Data\Default …

SANS ポスター:Windows Artifact Analysis(18) FireFox Download

ポスターでは FireFox 経由でダウンロードしたファイルの履歴情報として、downloads.sqlite が記述されています。 しかし、これは古いバージョンのお話で(Wiki によると FireFox 21辺りまで?)、手元で確認した FireFox 29.0.1 では downloads.sqlite ファ…