10章ツール:ファイルシステム監視

マルウェアの侵入やその他の活動は、ファイルシステムの変更によって検知できることが多い。暗号学的ハッシュ関数の機能や小さなコマンドラインのツールを用いることで、追加、削除、変更されたファイルを特定することができる。このテクニックはサーバや組み込みシステムなど、通常それほどファイルの変更が行われないシステムにおいて有用である。

本章では、ファイルシステムのベースラインを作成した上で、システムの最新状況と比較することで、追加、削除、変更されたファイルを特定するためのツールを作成する。以下の要件を記述する。

  1. システムの各ファイルのパスを記録する。
  2. システムの各ファイルのSHA-1ハッシュを生成する。
  3. ツールを後で再実行することで、変更、削除、移動、新規作成されたファイルを出力する。

10.1 利用するコマンド

本章では、ファイル比較を行うsdiffを紹介する。

10.1.1 sdiff

sdiffコマンドは2つのファイルを比較し、差異を出力する。

10.1.1.1 主要なコマンドオプション

-a
すべてのファイルをテキストファイルとして扱う。
-i
大文字と小文字の差異を無視する。
-s
2つのファイルで共通の行の出力を抑止する。
-w
1行あたりに出力する文字数の最大値。

10.1.1.2 コマンド実行例

2つのファイルを比較し、差異のある行だけを出力する。

sdiff -s file1.txt file2.txt

10.2 ステップ1:ファイルシステムのベースライン取得

ファイルシステムのベースラインの取得作業には、システムに存在する各ファイルのメッセージダイジェスト(ハッシュ値)の算出および結果のファイルへの記録が含まれる。これを行うためには、 ...

Get 実践 bashによるサイバーセキュリティ対策 ―セキュリティ技術者のためのシェルスクリプト活用術 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.