タイムラインの謎
sonodamさんが書かれている「調査中出てきたおもろネタ」のタイムラインですが、ネタバレしちゃうと*1
まず調査のきっかけというかネタ振りになっている .bash_history の一部が以下のような記述になっています。
.bash_historyの記述内容
vi pin.sh sh -v pin.sh
キャプチャされていた ARP パケットの発生時刻、/bin/vi の Atime 変化と、ping の Atime 変化に注目し、該当時刻帯のタイムラインを Autopsy で確認するとこんな感じ↓になります。
時刻:MAC変化項目:inode番号:ファイル名
20:04:47 mac 32429.a. 32427 .a. 36223 /5/bin/vi .a. 66760 /2/share/vim/vim57/macros/vimrc 20:06:02 m.c 32427 m.. 32428 20:07:56 .a. 44207 /5/lib/libnss_dns.so.2 -> libnss_dns-2.1.93.so .a. 26111 /5/etc/host.conf .a. 26159 /5/etc/resolv.conf .a. 44206 /5/lib/libnss_dns-2.1.93.so 20:08:08 .a. 44220 /5/lib/libresolv.so.2 -> libresolv-2.1.93.so .a. 36198 /5/bin/ping .a. 44219 /5/lib/libresolv-2.1.93.so 20:08:09 .a. 32428
ちなみに、pin.sh はディレクトリエントリからは削除された状態となっており、Autopys 上からファイル名 pin.sh では存在を確認することができません。*2
しかし、先ほどのタイムラインで vi の起動後にデッドリンクとなっている、inode 32428番のエントリ のメタ情報確認すると以下のようになっています。
inode: 32428 Not Allocated Group: 16 Generation Id: 1519935856 uid / gid: 0 / 0 mode: -rw-r--r-- size: 475 num of links: 0 Inode Times: Accessed: Tue Sep 5 20:08:09 2006 File Modified: Tue Sep 5 20:06:02 2006 Inode Modified: Tue Sep 5 20:08:30 2006 Deleted: Tue Sep 5 20:08:30 2006 Direct Blocks: 138359
割り当てられているブロック番号 138359 の内容を確認してみると、以下の pin.sh ファイルのデータ内容だったと推測できる文字列が確認できます。
ping -c 4 192.168.1.1 ping -c 4 192.168.1.2 ping -c 4 192.168.1.3
さて、inode 32428 番が元ファイル名 pin.sh であったとすると、なぜ /bin/ping の Atime より後ろ(未来)になっているのかという部分に違和感ないですか?
流れ的には vi の編集後、sh が pin.sh を読み込んでから ping が実行されるわけですから、pin.sh の Atime が ping より 1秒後に変化する理由は何か?という事です。
回答例:「スレッガーさんかい? 早い!早いよ!」