ちょっとThe Sleuth Kit使ってみたその2

## はじめに
この記事はその2ということでその1があります！見てほしいです。
[ちょっとThe Sleuth Kit使ってみたその1](https://qiita.com/iria_piyo/items/8863452c4320f47e7cb3)

今回は調査用のイメージ(hiyoko_sample.001)を作りました。ファイルシステムはNTFSです。
では、[The Sleuth Kit](https://www.sleuthkit.org/sleuthkit/)のコマンドを紹介していこうと思います。
※今回は調査対象のファイルシステムがNTFSなので説明文ではエントリ番号(inode)と表記しています。
UNIX系の場合はinode番号、NTFSの場合はエントリ番号。
今回紹介するのはファイルの詳細情報を調査する際に便利なコマンドです。

##ファイルの詳細情報の調査
### istat
`istat [-b num][-f fstype][-i imgtype][-o imgoffset][-b dev_sector_size][-vV][-z zone][-s seconds] image [images] entry(inode)`

このコマンドはイメージ内のファイル、フォルダのタイムスタンプや属性など詳細情報を見ることができます。
`istat`コマンドを使用する際に必ず指定しなければいけないのは調査したいファイルのイメージとそのファイルのエントリ番号(inode)です。
例えば、前回の[ちょっとThe Sleuth Kit使ってみたその1](https://qiita.com/iria_piyo/items/8863452c4320f47e7cb3)で使用したflsコマンドを使用して先に調べたいファイルのinode番号を調べます。
hiyoko_sample.001内の「hogehoge.docx」についてistatコマンドで調査していきます。
`grep`コマンドを活用することによって多くのファイルの中から探したいファイルを特定しやすくなります。
(`fls -pr`は`-p`で出力されるファイルのフルパス、`-r`で再帰的にファイルを出力することができます。)

```sh
$ fls -pr hiyoko_sample.001 | grep hogehoge.docx 
r/r 43-128-1:   test/hogehoge.docx
```

これで「hogehoge.docx」のエントリ番号(inode)が`43-128-1`ということがわかったので`istat`コマンドを使用してファイルの詳細情報を調べていきたいと思います。

```sh
$ istat hiyoko_sample.001 43-128-1

MFT Entry Header Values:
Entry: 43        Sequence: 1
$LogFile Sequence Number: 1067967
Allocated File
Links: 1

$STANDARD_INFORMATION Attribute Values:
Flags: Archive
Owner ID: 0
Security ID: 265  (S-1-5-21-3763767945-1047358448-4033639875-8282)
Last User Journal Update Sequence Number: 3576
Created:        2018-06-25 14:15:40.809259200 (DST)
File Modified:  2018-06-25 14:15:40.809259200 (DST)
MFT Modified:   2018-06-25 14:15:43.391863500 (DST)
Accessed:       2018-06-25 14:15:40.809259200 (DST)

$FILE_NAME Attribute Values:
Flags: Archive
Name: hogehoge.docx
Parent MFT Entry: 40    Sequence: 2
Allocated Size: 0       Actual Size: 0
Created:        2018-06-25 14:15:40.809259200 (DST)
File Modified:  2018-06-25 14:15:40.809259200 (DST)
MFT Modified:   2018-06-25 14:15:40.809259200 (DST)
Accessed:       2018-06-25 14:15:40.809259200 (DST)

$OBJECT_ID Attribute Values:
Object Id: 832b9474-13a8-6684-11e8-78352668cc1f

Attributes:
Type: $STANDARD_INFORMATION (16-0)   Name: N/A   Resident   size: 72
Type: $FILE_NAME (48-3)   Name: N/A   Resident   size: 92
Type: $OBJECT_ID (64-4)   Name: N/A   Resident   size: 16
Type: $DATA (128-1)   Name: N/A   Resident   size: 0
```

hiyoko_sample.001はNTFSフォーマットなので出力されるファイル情報がNTFSの属性のタイムスタンプになっています。
ここで出力されるタイムスタンプの情報を見ることでファイルがローカル内で移動したか、名前の変更があったかなどのファイルの動きを調査したり、タイムスタンプの改ざんの調査に利用することができます。


### icat
`icat [-hrsvV][-f fstype][-i imgtype][-o imgoffset][-b dev_sector_size] image [images] entry(inode)`

このコマンドは指定したinode番号(エントリ番号)のファイルの内容を出力する。復元も可能。
ここではイメージ内の削除済みファイル(himitsu.txt)を取り扱っていきます。
istatと同じようにエントリ番号(inode)の指定をする必要があるので最初にflsコマンドを使用します。

```sh
$ fls -pr hiyoko_sample.001 | grep himitsu.txt
-/r * 48-128-1: hiyoko/same/hiyoko02/himitsu.txt
```

この「*」の表記は、削除ファイルを意味しています。
指定するエントリ番号(inode)がわかったところで`icat`コマンドを使用します。

```sh
$ icat hiyoko_sample.001 48-128-1
himitsupiyo
``` 

このように、ファイルの内容を出力することができます。
`icat -r`を使用することで削除ファイルを復元することも可能です。
先程のhimitsu.txtを`icat`コマンドで復元してみます。
今、カレントディレクトリには調査用のイメージファイルのみが置いてあります。

```sh
$ ls
hiyoko_sample.001
```

先程の調査で指定する番号がわかっているので`icat -rs`(`-r`削除ファイルの復元、`-s`スラックスペースを含めた復元)で復元したファイルをrestoration.txtに結果を保存します。

```sh
$ icat -rs  hiyoko_sample.001 48-128-1 > restoration.txt

$ ls
hiyoko_sample.001  restoration.txt

$ cat restoration.txt
himitsupiyo
```

このように削除ファイルの内容をコピーし、保存することができます。

### ifind
`ifind [-avVl][-f fstype][-d data_unit][-n file][-p par_inode][-z ZONE][-i imgtype][-o imgoffset][-b dev_sector_size] image [images]`

このコマンドは指定したデータユニット(割り当て済みのブロック、クラスタ)またはファイル名に割り当てられているメタデータの構造を探索するコマンドです。
オプションで指定すれば未割り当てであっても探索します。
先程から私がエントリ番号(inode)を検索する際にflsを使用していますが、こちらでも番号を見つけることが可能です。
コマンドを使用する際に必須となるのはエントリ番号(inode)とイメージファイルとオプションを`-d`または`-n`または`-p`のどれか一つを指定する必要があります。

`ifind -d`は、指定した割当済みのデータユニット(ブロック、クラスタ)のエントリ番号(inode)を出力します。
NTFSの最初のクラスタには「$Boot」の情報が格納されているので`ifind -d 0 hiyoko_sample.001`で「$Boot」のエントリ番号(inode))を調べます。

```sh
$ ifind -d 0 hiyoko_sample.001
7-128-1
```

これでエントリ番号(inode)がわかったので、`istat`コマンドでファイルの内容を確認してみます。

```sh
$ istat hiyoko_sample.001 7-128-1

MFT Entry Header Values:
Entry: 7        Sequence: 7
$LogFile Sequence Number: 0
Allocated File
Links: 1

$STANDARD_INFORMATION Attribute Values:
Flags: Hidden, System
Owner ID: 0
Security ID: 0  ()
Created:        2018-06-25 14:14:51.338568500 (DST)
File Modified:  2018-06-25 14:14:51.338568500 (DST)
MFT Modified:   2018-06-25 14:14:51.338568500 (DST)
Accessed:       2018-06-25 14:14:51.338568500 (DST)

$FILE_NAME Attribute Values:
Flags: Hidden, System
Name: $Boot
Parent MFT Entry: 5     Sequence: 5
Allocated Size: 8192    Actual Size: 8192
Created:        2018-06-25 14:14:51.338568500 (DST)
File Modified:  2018-06-25 14:14:51.338568500 (DST)
MFT Modified:   2018-06-25 14:14:51.338568500 (DST)
Accessed:       2018-06-25 14:14:51.338568500 (DST)

Attributes:
Type: $STANDARD_INFORMATION (16-0)   Name: N/A   Resident   size: 48
Type: $FILE_NAME (48-2)   Name: N/A   Resident   size: 76
Type: $SECURITY_DESCRIPTOR (80-3)   Name: N/A   Resident   size: 104
Type: $DATA (128-1)   Name: N/A   Non-Resident   size: 8192  init_size: 8192
0 1
```

`$FILE_NAME`の`Name:`に「$Boot」とかいてあります。
これで最初のクラスタには「$Boot」が入っていることがわかります。

`ifind -p`は、指定したエントリ番号(inode)を親として持つ未割当のMFTエントリを探索します。
`-l`(タイムスタンプ等の詳細情報を表示)と`-z`(`-l`で表示されるタイムスタンプを指定したタイムゾーンに設定)を一緒に指定することで、未割当ファイルの詳細情報を得ることができます。
未割当ファイルというのは削除ファイルのことです。
今回は、エントリ番号42のhiyokoフォルダを親にもつ未割当ファイル(削除ファイル)を`ifind`で検索してみます。

```sh
$ ifind -lp 42 -z JST hiyoko_sample.001
-/d * 45-144-1: same    2018-06-25 05:43:19 (JST)       2018-06-25 05:43:19 (JST)   　 2018-06-25 05:43:19 (JST)       2018-06-25 05:41:52 (JST)       48       0       0
```

hiyokoフォルダも未割当の状態なのですが、探索ができます。
指定したエントリ番号が未割当でも、そのエントリを親に持つ未割当エントリの探索は可能です。
この結果を見るとエントリ42番のフォルダの中にはsameフォルダが未割当のエントリとしてあることがわかりました。

`ifind -n`は、指定したファイル名のエントリ番号(inode)を探索することができます。
指定するときに注意することはフルパスで書く必要があるということです。
ルートディレクトリ以外にある場合はただファイル名を入れただけでは、探索できません。

今回は`/test`内にある「hogehoge.docx」のエントリ番号(inode)を調べてみます。

```sh
$ ifind -n /test/hogehoge.docx hiyoko_sample.001
43

$ istat hiyoko_sample.001 43

MFT Entry Header Values:
Entry: 43        Sequence: 1
$LogFile Sequence Number: 1067967
Allocated File
Links: 1

$STANDARD_INFORMATION Attribute Values:
Flags: Archive
Owner ID: 0
Security ID: 265  (S-1-5-21-3763767945-1047358448-4033639875-8282)
Last User Journal Update Sequence Number: 3576
Created:        2018-06-25 14:15:40.809259200 (DST)
File Modified:  2018-06-25 14:15:40.809259200 (DST)
MFT Modified:   2018-06-25 14:15:43.391863500 (DST)
Accessed:       2018-06-25 14:15:40.809259200 (DST)

$FILE_NAME Attribute Values:
Flags: Archive
Name: hogehoge.docx
Parent MFT Entry: 40    Sequence: 2
Allocated Size: 0       Actual Size: 0
Created:        2018-06-25 14:15:40.809259200 (DST)
File Modified:  2018-06-25 14:15:40.809259200 (DST)
MFT Modified:   2018-06-25 14:15:40.809259200 (DST)
Accessed:       2018-06-25 14:15:40.809259200 (DST)

$OBJECT_ID Attribute Values:
Object Id: 832b9474-13a8-6684-11e8-78352668cc1f

Attributes:
Type: $STANDARD_INFORMATION (16-0)   Name: N/A   Resident   size: 72
Type: $FILE_NAME (48-3)   Name: N/A   Resident   size: 92
Type: $OBJECT_ID (64-4)   Name: N/A   Resident   size: 16
Type: $DATA (128-1)   Name: N/A   Resident   size: 0
```

このようにどの情報を得ているかによって、コマンドを使い分けていくといいと思います。

### ils
`ils [-emOpvV] [-aAlLzZ] [-f fstype] [-i imgtype] [-b dev_sector_size] [-o imgoffset] [-s seconds] image [images] [inum[-end]]`

イメージファイルのエントリ番号(inode)のタイムスタンプや割当、未割当等の情報を表示します。
デフォルトで実行すると、削除された未割当のエントリ番号(inode)のみを表示します。
上2行はデータ元に関する情報、3行目からイメージファイルのエントリ番号(inode)に関する情報が表示されています。

* `st_ino`: エントリ番号(inode)
* `st_alloc`: `a`- 割当済みエントリ番号(inode)、`f`- 未割当のエントリ番号(inode)
* `st_uid`: 所有者のユーザID
* `st_gid`: 所有グループのグループID
* `st_mtime`: ファイルの最終変更時刻
* `st_atime`: ファイルの最終アクセス時刻
* `st_ctime`: ファイルのエントリ(inode)ステータスの最終変更時刻
* `st_crtime`: ファイルの作成時刻
* `st_mode`: ファイルタイプとパーミッション(8進数)
* `st_nlink`: ハードリンク数
* `st_size`: ファイルサイズ

```sh
$ ils hiyoko_sample.001

class|host|device|start_time
ils|hogehoge||1530178004
st_ino|st_alloc|st_uid|st_gid|st_mtime|st_atime|st_ctime|st_crtime|st_mode|st_nlink|st_size
42|f|0|0|1529905399|1529905399|1529905399|1529903731|777|1|48
45|f|0|0|1529905399|1529905399|1529905399|1529905312|777|1|48
46|f|0|0|1529905399|1529905399|1529905399|1529905329|777|1|48
47|f|0|0|1529905347|1529905347|1529905352|1529905347|777|1|0
48|f|0|0|1529905384|1529905362|1529905384|15299053c62|777|1|13
```

このように削除ファイルのみが表示されます。

`ils -e`は全てのエントリ番号(inode)に関する情報を表示します。

```sh
$ ils -e hiyoko_sample.001

class|host|device|start_time
ils|hogehoge||1530265294
st_ino|st_alloc|st_uid|st_gid|st_mtime|st_atime|st_ctime|st_crtime|st_mode|st_nlink|st_size
0|a|0|0|1522391976|1522391976|1522391976|1522391976|555|1|262144
1|a|0|0|1522391976|1522391976|1522391976|1522391976|555|1|4096
2|a|0|0|1522391976|1522391976|1522391976|1522391976|555|1|2097152
3|a|0|0|1522391976|1522391976|1522391976|1522391976|555|1|0
4|a|48|0|1529903691|1529903691|1529903691|1529903691|555|1|2560
5|a|0|0|1529905399|1529905399|1529905399|1529903691|555|1|56
6|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|3200
7|a|48|0|1529903691|1529903691|1529903691|1529903691|555|1|8192
8|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
9|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
10|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|131072
11|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|656
12|a|80|0|1529903691|1529903691|1529903691|1529903691|555|0|0
13|a|80|0|1529903691|1529903691|1529903691|1529903691|555|0|0
14|a|80|0|1529903691|1529903691|1529903691|1529903691|555|0|0
15|a|80|0|1529903691|1529903691|1529903691|1529903691|555|0|0
16|f|0|0|0|0|0|0|0|0|0
17|f|0|0|0|0|0|0|0|0|0
18|f|0|0|0|0|0|0|0|0|0
19|f|0|0|0|0|0|0|0|0|0
20|f|0|0|0|0|0|0|0|0|0
21|f|0|0|0|0|0|0|0|0|0
22|f|0|0|0|0|0|0|0|0|0
23|f|0|0|0|0|0|0|0|0|0
24|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
25|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
26|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
27|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|336
28|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
29|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|48
30|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|568
31|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|48
32|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|100
33|a|0|0|1529903691|1529903691|1529903691|1529903691|777|1|65536
34|a|0|0|1529903691|1529903691|1529903691|1529903691|777|1|2097152
35|a|0|0|1529903691|1529903691|1529903691|1529903691|777|1|2097152
36|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
37|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|152
38|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|152
39|a|0|0|1529903691|1529903691|1529903691|1529903691|777|1|7168
40|a|0|0|1529903889|1529903889|1529903889|1529903706|777|1|160
41|a|0|0|1529903896|1529903896|1529903896|1529903715|777|1|152
42|f|0|0|1529905399|1529905399|1529905399|1529903731|777|1|48
43|a|0|0|1529903740|1529903740|1529903743|1529903740|777|1|0
44|a|0|0|1529903823|1529903823|1529903838|1529903823|777|1|0
45|f|0|0|1529905399|1529905399|1529905399|1529905312|777|1|48
46|f|0|0|1529905399|1529905399|1529905399|1529905329|777|1|48
47|f|0|0|1529905347|1529905347|1529905352|1529905347|777|1|0
48|f|0|0|1529905384|1529905362|1529905384|1529905362|777|1|13
49|f|0|0|0|0|0|0|0|0|0
50|f|0|0|0|0|0|0|0|0|0
51|f|0|0|0|0|0|0|0|0|0
52|f|0|0|0|0|0|0|0|0|0
53|f|0|0|0|0|0|0|0|0|0
54|f|0|0|0|0|0|0|0|0|0
55|f|0|0|0|0|0|0|0|0|0
56|f|0|0|0|0|0|0|0|0|0
57|f|0|0|0|0|0|0|0|0|0
58|f|0|0|0|0|0|0|0|0|0
59|f|0|0|0|0|0|0|0|0|0
60|f|0|0|0|0|0|0|0|0|0
61|f|0|0|0|0|0|0|0|0|0
62|f|0|0|0|0|0|0|0|0|0
63|f|0|0|0|0|0|0|0|0|0
64|f|0|0|0|0|0|0|0|0|0
65|f|0|0|0|0|0|0|0|0|0
66|f|0|0|0|0|0|0|0|0|0
67|f|0|0|0|0|0|0|0|0|0
68|f|0|0|0|0|0|0|0|0|0
69|f|0|0|0|0|0|0|0|0|0
70|f|0|0|0|0|0|0|0|0|0
71|f|0|0|0|0|0|0|0|0|0
72|f|0|0|0|0|0|0|0|0|0
73|f|0|0|0|0|0|0|0|0|0
74|f|0|0|0|0|0|0|0|0|0
75|f|0|0|0|0|0|0|0|0|0
76|f|0|0|0|0|0|0|0|0|0
77|f|0|0|0|0|0|0|0|0|0
78|f|0|0|0|0|0|0|0|0|0
79|f|0|0|0|0|0|0|0|0|0
80|f|0|0|0|0|0|0|0|0|0
81|f|0|0|0|0|0|0|0|0|0
82|f|0|0|0|0|0|0|0|0|0
83|f|0|0|0|0|0|0|0|0|0
84|f|0|0|0|0|0|0|0|0|0
85|f|0|0|0|0|0|0|0|0|0
86|f|0|0|0|0|0|0|0|0|0
87|f|0|0|0|0|0|0|0|0|0
88|f|0|0|0|0|0|0|0|0|0
89|f|0|0|0|0|0|0|0|0|0
90|f|0|0|0|0|0|0|0|0|0
91|f|0|0|0|0|0|0|0|0|0
92|f|0|0|0|0|0|0|0|0|0
93|f|0|0|0|0|0|0|0|0|0
94|f|0|0|0|0|0|0|0|0|0
95|f|0|0|0|0|0|0|0|0|0
96|f|0|0|0|0|0|0|0|0|0
97|f|0|0|0|0|0|0|0|0|0
98|f|0|0|0|0|0|0|0|0|0
99|f|0|0|0|0|0|0|0|0|0
100|f|0|0|0|0|0|0|0|0|0
101|f|0|0|0|0|0|0|0|0|0
102|f|0|0|0|0|0|0|0|0|0
103|f|0|0|0|0|0|0|0|0|0
104|f|0|0|0|0|0|0|0|0|0
105|f|0|0|0|0|0|0|0|0|0
106|f|0|0|0|0|0|0|0|0|0
107|f|0|0|0|0|0|0|0|0|0
108|f|0|0|0|0|0|0|0|0|0
109|f|0|0|0|0|0|0|0|0|0
110|f|0|0|0|0|0|0|0|0|0
111|f|0|0|0|0|0|0|0|0|0
112|f|0|0|0|0|0|0|0|0|0
113|f|0|0|0|0|0|0|0|0|0
114|f|0|0|0|0|0|0|0|0|0
115|f|0|0|0|0|0|0|0|0|0
116|f|0|0|0|0|0|0|0|0|0
117|f|0|0|0|0|0|0|0|0|0
118|f|0|0|0|0|0|0|0|0|0
119|f|0|0|0|0|0|0|0|0|0
120|f|0|0|0|0|0|0|0|0|0
121|f|0|0|0|0|0|0|0|0|0
122|f|0|0|0|0|0|0|0|0|0
123|f|0|0|0|0|0|0|0|0|0
124|f|0|0|0|0|0|0|0|0|0
125|f|0|0|0|0|0|0|0|0|0
126|f|0|0|0|0|0|0|0|0|0
127|f|0|0|0|0|0|0|0|0|0
128|f|0|0|0|0|0|0|0|0|0
129|f|0|0|0|0|0|0|0|0|0
130|f|0|0|0|0|0|0|0|0|0
131|f|0|0|0|0|0|0|0|0|0
132|f|0|0|0|0|0|0|0|0|0
133|f|0|0|0|0|0|0|0|0|0
134|f|0|0|0|0|0|0|0|0|0
135|f|0|0|0|0|0|0|0|0|0
136|f|0|0|0|0|0|0|0|0|0
137|f|0|0|0|0|0|0|0|0|0
138|f|0|0|0|0|0|0|0|0|0
139|f|0|0|0|0|0|0|0|0|0
140|f|0|0|0|0|0|0|0|0|0
141|f|0|0|0|0|0|0|0|0|0
142|f|0|0|0|0|0|0|0|0|0
143|f|0|0|0|0|0|0|0|0|0
144|f|0|0|0|0|0|0|0|0|0
145|f|0|0|0|0|0|0|0|0|0
146|f|0|0|0|0|0|0|0|0|0
147|f|0|0|0|0|0|0|0|0|0
148|f|0|0|0|0|0|0|0|0|0
149|f|0|0|0|0|0|0|0|0|0
150|f|0|0|0|0|0|0|0|0|0
151|f|0|0|0|0|0|0|0|0|0
152|f|0|0|0|0|0|0|0|0|0
153|f|0|0|0|0|0|0|0|0|0
154|f|0|0|0|0|0|0|0|0|0
155|f|0|0|0|0|0|0|0|0|0
156|f|0|0|0|0|0|0|0|0|0
157|f|0|0|0|0|0|0|0|0|0
158|f|0|0|0|0|0|0|0|0|0
159|f|0|0|0|0|0|0|0|0|0
160|f|0|0|0|0|0|0|0|0|0
161|f|0|0|0|0|0|0|0|0|0
162|f|0|0|0|0|0|0|0|0|0
163|f|0|0|0|0|0|0|0|0|0
164|f|0|0|0|0|0|0|0|0|0
165|f|0|0|0|0|0|0|0|0|0
166|f|0|0|0|0|0|0|0|0|0
167|f|0|0|0|0|0|0|0|0|0
168|f|0|0|0|0|0|0|0|0|0
169|f|0|0|0|0|0|0|0|0|0
170|f|0|0|0|0|0|0|0|0|0
171|f|0|0|0|0|0|0|0|0|0
172|f|0|0|0|0|0|0|0|0|0
173|f|0|0|0|0|0|0|0|0|0
174|f|0|0|0|0|0|0|0|0|0
175|f|0|0|0|0|0|0|0|0|0
176|f|0|0|0|0|0|0|0|0|0
177|f|0|0|0|0|0|0|0|0|0
178|f|0|0|0|0|0|0|0|0|0
179|f|0|0|0|0|0|0|0|0|0
180|f|0|0|0|0|0|0|0|0|0
181|f|0|0|0|0|0|0|0|0|0
182|f|0|0|0|0|0|0|0|0|0
183|f|0|0|0|0|0|0|0|0|0
184|f|0|0|0|0|0|0|0|0|0
185|f|0|0|0|0|0|0|0|0|0
186|f|0|0|0|0|0|0|0|0|0
187|f|0|0|0|0|0|0|0|0|0
188|f|0|0|0|0|0|0|0|0|0
189|f|0|0|0|0|0|0|0|0|0
190|f|0|0|0|0|0|0|0|0|0
191|f|0|0|0|0|0|0|0|0|0
192|f|0|0|0|0|0|0|0|0|0
193|f|0|0|0|0|0|0|0|0|0
194|f|0|0|0|0|0|0|0|0|0
195|f|0|0|0|0|0|0|0|0|0
196|f|0|0|0|0|0|0|0|0|0
197|f|0|0|0|0|0|0|0|0|0
198|f|0|0|0|0|0|0|0|0|0
199|f|0|0|0|0|0|0|0|0|0
200|f|0|0|0|0|0|0|0|0|0
201|f|0|0|0|0|0|0|0|0|0
202|f|0|0|0|0|0|0|0|0|0
203|f|0|0|0|0|0|0|0|0|0
204|f|0|0|0|0|0|0|0|0|0
205|f|0|0|0|0|0|0|0|0|0
206|f|0|0|0|0|0|0|0|0|0
207|f|0|0|0|0|0|0|0|0|0
208|f|0|0|0|0|0|0|0|0|0
209|f|0|0|0|0|0|0|0|0|0
210|f|0|0|0|0|0|0|0|0|0
211|f|0|0|0|0|0|0|0|0|0
212|f|0|0|0|0|0|0|0|0|0
213|f|0|0|0|0|0|0|0|0|0
214|f|0|0|0|0|0|0|0|0|0
215|f|0|0|0|0|0|0|0|0|0
216|f|0|0|0|0|0|0|0|0|0
217|f|0|0|0|0|0|0|0|0|0
218|f|0|0|0|0|0|0|0|0|0
219|f|0|0|0|0|0|0|0|0|0
220|f|0|0|0|0|0|0|0|0|0
221|f|0|0|0|0|0|0|0|0|0
222|f|0|0|0|0|0|0|0|0|0
223|f|0|0|0|0|0|0|0|0|0
224|f|0|0|0|0|0|0|0|0|0
225|f|0|0|0|0|0|0|0|0|0
226|f|0|0|0|0|0|0|0|0|0
227|f|0|0|0|0|0|0|0|0|0
228|f|0|0|0|0|0|0|0|0|0
229|f|0|0|0|0|0|0|0|0|0
230|f|0|0|0|0|0|0|0|0|0
231|f|0|0|0|0|0|0|0|0|0
232|f|0|0|0|0|0|0|0|0|0
233|f|0|0|0|0|0|0|0|0|0
234|f|0|0|0|0|0|0|0|0|0
235|f|0|0|0|0|0|0|0|0|0
236|f|0|0|0|0|0|0|0|0|0
237|f|0|0|0|0|0|0|0|0|0
238|f|0|0|0|0|0|0|0|0|0
239|f|0|0|0|0|0|0|0|0|0
240|f|0|0|0|0|0|0|0|0|0
241|f|0|0|0|0|0|0|0|0|0
242|f|0|0|0|0|0|0|0|0|0
243|f|0|0|0|0|0|0|0|0|0
244|f|0|0|0|0|0|0|0|0|0
245|f|0|0|0|0|0|0|0|0|0
246|f|0|0|0|0|0|0|0|0|0
247|f|0|0|0|0|0|0|0|0|0
248|f|0|0|0|0|0|0|0|0|0
249|f|0|0|0|0|0|0|0|0|0
250|f|0|0|0|0|0|0|0|0|0
251|f|0|0|0|0|0|0|0|0|0
252|f|0|0|0|0|0|0|0|0|0
253|f|0|0|0|0|0|0|0|0|0
254|f|0|0|0|0|0|0|0|0|0
255|f|0|0|0|0|0|0|0|0|0
256|a|0|0|0|0|0|0|0|1|0
```

`ils -a`は、割当済みのエントリ番号(inode)のみを表示します。
削除ファイルが表示された場合は、そのファイルが開かれている、または実行中であると考えられます。

```sh
$ ils -a hiyoko_sample.001

class|host|device|start_time
ils|hogehoge||1530266728
st_ino|st_alloc|st_uid|st_gid|st_mtime|st_atime|st_ctime|st_crtime|st_mode|st_nlink|st_size
0|a|0|0|1522391976|1522391976|1522391976|1522391976|555|1|262144
1|a|0|0|1522391976|1522391976|1522391976|1522391976|555|1|4096
2|a|0|0|1522391976|1522391976|1522391976|1522391976|555|1|2097152
3|a|0|0|1522391976|1522391976|1522391976|1522391976|555|1|0
4|a|48|0|1529903691|1529903691|1529903691|1529903691|555|1|2560
5|a|0|0|1529905399|1529905399|1529905399|1529903691|555|1|56
6|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|3200
7|a|48|0|1529903691|1529903691|1529903691|1529903691|555|1|8192
8|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
9|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
10|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|131072
11|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|656
12|a|80|0|1529903691|1529903691|1529903691|1529903691|555|0|0
13|a|80|0|1529903691|1529903691|1529903691|1529903691|555|0|0
14|a|80|0|1529903691|1529903691|1529903691|1529903691|555|0|0
15|a|80|0|1529903691|1529903691|1529903691|1529903691|555|0|0
24|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
25|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
26|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
27|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|336
28|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
29|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|48
30|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|568
31|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|48
32|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|100
33|a|0|0|1529903691|1529903691|1529903691|1529903691|777|1|65536
34|a|0|0|1529903691|1529903691|1529903691|1529903691|777|1|2097152
35|a|0|0|1529903691|1529903691|1529903691|1529903691|777|1|2097152
36|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|0
37|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|152
38|a|0|0|1529903691|1529903691|1529903691|1529903691|555|1|152
39|a|0|0|1529903691|1529903691|1529903691|1529903691|777|1|7168
40|a|0|0|1529903889|1529903889|1529903889|1529903706|777|1|160
41|a|0|0|1529903896|1529903896|1529903896|1529903715|777|1|152
43|a|0|0|1529903740|1529903740|1529903743|1529903740|777|1|0
44|a|0|0|1529903823|1529903823|1529903838|1529903823|777|1|0
256|a|0|0|0|0|0|0|0|1|0
```

`ils -z`は、使われていない未割当のエントリ番号(inode)が表示されます。

```sh
$ ils -z hiyoko_sample.001

class|host|device|start_time
ils|hogehoge||1530268385
st_ino|st_alloc|st_uid|st_gid|st_mtime|st_atime|st_ctime|st_crtime|st_mode|st_nlink|st_size
16|f|0|0|0|0|0|0|0|0|0
17|f|0|0|0|0|0|0|0|0|0
18|f|0|0|0|0|0|0|0|0|0
19|f|0|0|0|0|0|0|0|0|0
20|f|0|0|0|0|0|0|0|0|0
21|f|0|0|0|0|0|0|0|0|0
22|f|0|0|0|0|0|0|0|0|0
23|f|0|0|0|0|0|0|0|0|0
42|f|0|0|1529905399|1529905399|1529905399|1529903731|777|1|48
45|f|0|0|1529905399|1529905399|1529905399|1529905312|777|1|48
46|f|0|0|1529905399|1529905399|1529905399|1529905329|777|1|48
47|f|0|0|1529905347|1529905347|1529905352|1529905347|777|1|0
48|f|0|0|1529905384|1529905362|1529905384|1529905362|777|1|13
49|f|0|0|0|0|0|0|0|0|0
50|f|0|0|0|0|0|0|0|0|0
51|f|0|0|0|0|0|0|0|0|0
52|f|0|0|0|0|0|0|0|0|0
53|f|0|0|0|0|0|0|0|0|0
54|f|0|0|0|0|0|0|0|0|0
55|f|0|0|0|0|0|0|0|0|0
56|f|0|0|0|0|0|0|0|0|0
57|f|0|0|0|0|0|0|0|0|0
58|f|0|0|0|0|0|0|0|0|0
59|f|0|0|0|0|0|0|0|0|0
60|f|0|0|0|0|0|0|0|0|0
61|f|0|0|0|0|0|0|0|0|0
62|f|0|0|0|0|0|0|0|0|0
63|f|0|0|0|0|0|0|0|0|0
64|f|0|0|0|0|0|0|0|0|0
65|f|0|0|0|0|0|0|0|0|0
66|f|0|0|0|0|0|0|0|0|0
67|f|0|0|0|0|0|0|0|0|0
68|f|0|0|0|0|0|0|0|0|0
69|f|0|0|0|0|0|0|0|0|0
70|f|0|0|0|0|0|0|0|0|0
71|f|0|0|0|0|0|0|0|0|0
72|f|0|0|0|0|0|0|0|0|0
73|f|0|0|0|0|0|0|0|0|0
74|f|0|0|0|0|0|0|0|0|0
75|f|0|0|0|0|0|0|0|0|0
76|f|0|0|0|0|0|0|0|0|0
77|f|0|0|0|0|0|0|0|0|0
78|f|0|0|0|0|0|0|0|0|0
79|f|0|0|0|0|0|0|0|0|0
80|f|0|0|0|0|0|0|0|0|0
81|f|0|0|0|0|0|0|0|0|0
82|f|0|0|0|0|0|0|0|0|0
83|f|0|0|0|0|0|0|0|0|0
84|f|0|0|0|0|0|0|0|0|0
85|f|0|0|0|0|0|0|0|0|0
86|f|0|0|0|0|0|0|0|0|0
87|f|0|0|0|0|0|0|0|0|0
88|f|0|0|0|0|0|0|0|0|0
89|f|0|0|0|0|0|0|0|0|0
90|f|0|0|0|0|0|0|0|0|0
91|f|0|0|0|0|0|0|0|0|0
92|f|0|0|0|0|0|0|0|0|0
93|f|0|0|0|0|0|0|0|0|0
94|f|0|0|0|0|0|0|0|0|0
95|f|0|0|0|0|0|0|0|0|0
96|f|0|0|0|0|0|0|0|0|0
97|f|0|0|0|0|0|0|0|0|0
98|f|0|0|0|0|0|0|0|0|0
99|f|0|0|0|0|0|0|0|0|0
100|f|0|0|0|0|0|0|0|0|0
101|f|0|0|0|0|0|0|0|0|0
102|f|0|0|0|0|0|0|0|0|0
103|f|0|0|0|0|0|0|0|0|0
104|f|0|0|0|0|0|0|0|0|0
105|f|0|0|0|0|0|0|0|0|0
106|f|0|0|0|0|0|0|0|0|0
107|f|0|0|0|0|0|0|0|0|0
108|f|0|0|0|0|0|0|0|0|0
109|f|0|0|0|0|0|0|0|0|0
110|f|0|0|0|0|0|0|0|0|0
111|f|0|0|0|0|0|0|0|0|0
112|f|0|0|0|0|0|0|0|0|0
113|f|0|0|0|0|0|0|0|0|0
114|f|0|0|0|0|0|0|0|0|0
115|f|0|0|0|0|0|0|0|0|0
116|f|0|0|0|0|0|0|0|0|0
117|f|0|0|0|0|0|0|0|0|0
118|f|0|0|0|0|0|0|0|0|0
119|f|0|0|0|0|0|0|0|0|0
120|f|0|0|0|0|0|0|0|0|0
121|f|0|0|0|0|0|0|0|0|0
122|f|0|0|0|0|0|0|0|0|0
123|f|0|0|0|0|0|0|0|0|0
124|f|0|0|0|0|0|0|0|0|0
125|f|0|0|0|0|0|0|0|0|0
126|f|0|0|0|0|0|0|0|0|0
127|f|0|0|0|0|0|0|0|0|0
128|f|0|0|0|0|0|0|0|0|0
129|f|0|0|0|0|0|0|0|0|0
130|f|0|0|0|0|0|0|0|0|0
131|f|0|0|0|0|0|0|0|0|0
132|f|0|0|0|0|0|0|0|0|0
133|f|0|0|0|0|0|0|0|0|0
134|f|0|0|0|0|0|0|0|0|0
135|f|0|0|0|0|0|0|0|0|0
136|f|0|0|0|0|0|0|0|0|0
137|f|0|0|0|0|0|0|0|0|0
138|f|0|0|0|0|0|0|0|0|0
139|f|0|0|0|0|0|0|0|0|0
140|f|0|0|0|0|0|0|0|0|0
141|f|0|0|0|0|0|0|0|0|0
142|f|0|0|0|0|0|0|0|0|0
143|f|0|0|0|0|0|0|0|0|0
144|f|0|0|0|0|0|0|0|0|0
145|f|0|0|0|0|0|0|0|0|0
146|f|0|0|0|0|0|0|0|0|0
147|f|0|0|0|0|0|0|0|0|0
148|f|0|0|0|0|0|0|0|0|0
149|f|0|0|0|0|0|0|0|0|0
150|f|0|0|0|0|0|0|0|0|0
151|f|0|0|0|0|0|0|0|0|0
152|f|0|0|0|0|0|0|0|0|0
153|f|0|0|0|0|0|0|0|0|0
154|f|0|0|0|0|0|0|0|0|0
155|f|0|0|0|0|0|0|0|0|0
156|f|0|0|0|0|0|0|0|0|0
157|f|0|0|0|0|0|0|0|0|0
158|f|0|0|0|0|0|0|0|0|0
159|f|0|0|0|0|0|0|0|0|0
160|f|0|0|0|0|0|0|0|0|0
161|f|0|0|0|0|0|0|0|0|0
162|f|0|0|0|0|0|0|0|0|0
163|f|0|0|0|0|0|0|0|0|0
164|f|0|0|0|0|0|0|0|0|0
165|f|0|0|0|0|0|0|0|0|0
166|f|0|0|0|0|0|0|0|0|0
167|f|0|0|0|0|0|0|0|0|0
168|f|0|0|0|0|0|0|0|0|0
169|f|0|0|0|0|0|0|0|0|0
170|f|0|0|0|0|0|0|0|0|0
171|f|0|0|0|0|0|0|0|0|0
172|f|0|0|0|0|0|0|0|0|0
173|f|0|0|0|0|0|0|0|0|0
174|f|0|0|0|0|0|0|0|0|0
175|f|0|0|0|0|0|0|0|0|0
176|f|0|0|0|0|0|0|0|0|0
177|f|0|0|0|0|0|0|0|0|0
178|f|0|0|0|0|0|0|0|0|0
179|f|0|0|0|0|0|0|0|0|0
180|f|0|0|0|0|0|0|0|0|0
181|f|0|0|0|0|0|0|0|0|0
182|f|0|0|0|0|0|0|0|0|0
183|f|0|0|0|0|0|0|0|0|0
184|f|0|0|0|0|0|0|0|0|0
185|f|0|0|0|0|0|0|0|0|0
186|f|0|0|0|0|0|0|0|0|0
187|f|0|0|0|0|0|0|0|0|0
188|f|0|0|0|0|0|0|0|0|0
189|f|0|0|0|0|0|0|0|0|0
190|f|0|0|0|0|0|0|0|0|0
191|f|0|0|0|0|0|0|0|0|0
192|f|0|0|0|0|0|0|0|0|0
193|f|0|0|0|0|0|0|0|0|0
194|f|0|0|0|0|0|0|0|0|0
195|f|0|0|0|0|0|0|0|0|0
196|f|0|0|0|0|0|0|0|0|0
197|f|0|0|0|0|0|0|0|0|0
198|f|0|0|0|0|0|0|0|0|0
199|f|0|0|0|0|0|0|0|0|0
200|f|0|0|0|0|0|0|0|0|0
201|f|0|0|0|0|0|0|0|0|0
202|f|0|0|0|0|0|0|0|0|0
203|f|0|0|0|0|0|0|0|0|0
204|f|0|0|0|0|0|0|0|0|0
205|f|0|0|0|0|0|0|0|0|0
206|f|0|0|0|0|0|0|0|0|0
207|f|0|0|0|0|0|0|0|0|0
208|f|0|0|0|0|0|0|0|0|0
209|f|0|0|0|0|0|0|0|0|0
210|f|0|0|0|0|0|0|0|0|0
211|f|0|0|0|0|0|0|0|0|0
212|f|0|0|0|0|0|0|0|0|0
213|f|0|0|0|0|0|0|0|0|0
214|f|0|0|0|0|0|0|0|0|0
215|f|0|0|0|0|0|0|0|0|0
216|f|0|0|0|0|0|0|0|0|0
217|f|0|0|0|0|0|0|0|0|0
218|f|0|0|0|0|0|0|0|0|0
219|f|0|0|0|0|0|0|0|0|0
220|f|0|0|0|0|0|0|0|0|0
221|f|0|0|0|0|0|0|0|0|0
222|f|0|0|0|0|0|0|0|0|0
223|f|0|0|0|0|0|0|0|0|0
224|f|0|0|0|0|0|0|0|0|0
225|f|0|0|0|0|0|0|0|0|0
226|f|0|0|0|0|0|0|0|0|0
227|f|0|0|0|0|0|0|0|0|0
228|f|0|0|0|0|0|0|0|0|0
229|f|0|0|0|0|0|0|0|0|0
230|f|0|0|0|0|0|0|0|0|0
231|f|0|0|0|0|0|0|0|0|0
232|f|0|0|0|0|0|0|0|0|0
233|f|0|0|0|0|0|0|0|0|0
234|f|0|0|0|0|0|0|0|0|0
235|f|0|0|0|0|0|0|0|0|0
236|f|0|0|0|0|0|0|0|0|0
237|f|0|0|0|0|0|0|0|0|0
238|f|0|0|0|0|0|0|0|0|0
239|f|0|0|0|0|0|0|0|0|0
240|f|0|0|0|0|0|0|0|0|0
241|f|0|0|0|0|0|0|0|0|0
242|f|0|0|0|0|0|0|0|0|0
243|f|0|0|0|0|0|0|0|0|0
244|f|0|0|0|0|0|0|0|0|0
245|f|0|0|0|0|0|0|0|0|0
246|f|0|0|0|0|0|0|0|0|0
247|f|0|0|0|0|0|0|0|0|0
248|f|0|0|0|0|0|0|0|0|0
249|f|0|0|0|0|0|0|0|0|0
250|f|0|0|0|0|0|0|0|0|0
251|f|0|0|0|0|0|0|0|0|0
252|f|0|0|0|0|0|0|0|0|0
253|f|0|0|0|0|0|0|0|0|0
254|f|0|0|0|0|0|0|0|0|0
255|f|0|0|0|0|0|0|0|0|0
```

### img_stat
`img_stat [-i imgtype] [-b dev_sector_size] [-tvV] image [images]`

指定したイメージファイルのtype(raw,aff,afd等)とサイズが出力されます。

```sh
$ img_stat hiyoko_sample.001

IMAGE FILE INFORMATION
--------------------------------------------
Image Type: raw

Size in bytes: 104857600
```

### img_cat
`img_cat [-vV] [-i imgtype] [-b dev_sector_size] [-s start_sector] [-e stop_sector] image`

指定したイメージファイルのメタデータだけを出力します。
`-s`(開始セクタ番号)と`-e`(終了セクタ番号)とを指定すると指定のセクタ番号のメタデータを出力します。
`-v`(詳細情報を出力)を指定することで、イメージファイルの詳細情報が出力されます。

```sh
$ img_cat -s 68350 -e 68351 -v hiyoko_sample.001

tsk_img_open: Type: 0   NumImg: 1  Img1: hiyoko_sample.001
tsk_img_findFiles: hiyoko_sample.001 found
tsk_img_findFiles: 1 total segments found
raw_open: segment: 0  size: 104857600  max offset: 104857600  path: hiyoko_sample.001
raw_read: byte offset: 34995200 len: 65536
raw_read: found in image 0 relative offset: 34995200 len: 65536
raw_read_segment: opening file into slot 0: hiyoko_sample.001
FILE0  K       8  X                +             `           H      [C[CC[C                        
h o g e h o g e . d o c x     @   (                h&5xft+                   yG    
```

正直このコマンドの使いどころがわからなかったので、「hogehoge.docx」のFILEレコードがあるセクタ番号を求めて出力させてみました。


## 参考資料
https://rationallyparanoid.com/articles/sleuth-kit.html
https://www.kazamiya.net/