auditorは、暗号ハッシュ関数を使用した高速整合性監査用のフォレンジック ツールです 。
これは他の一般的なツール (fsum、hashdeep、sha256sum など) に似ていますが、デジタル データの監査をよりシンプルかつ 高速にする機能を備えています。
auditorは複数のハッシュアルゴリズムをサポートしています。デフォルトはsha256、2015年からNISTが推奨するハッシュアルゴリズムです(
NISTのハッシュ関数に関するポリシーを参照)。
デフォルトでは、
thash
method
有効になっていますが、このモードを無効にすることもできます。
が使用する監査プロセスは、整合性情報を格納する監査ファイルによって提供される整合性チェーンauditorの概念に基づいています 。
このプロセスに関係する用語は次のとおりです: Audit_FullList: は、処理された各元のデータ
ファイルの整合性情報を含む監査ファイルです。 : は、ファイル
Stampの実際の整合性情報です。は、関連するアクションを実行するときに常に再計算されて表示されます。
: は、作成時に を保存する監査ファイルです。Audit_FullListStamp
Audit_StampStampAudit_FullList
整合性チェーンは次の順序で生成されます (デフォルトの動作)。
内部のデータ ファイルinput_pathが処理され、整合性情報 (ハッシュ、サイズ、相対ファイル パスなど)
が生成され、 に保存されますAudit_FullList。
Audit_FullListも処理され、
が生成されますStamp。これは端末に印刷され、 に保存されますAudit_Stamp。
整合性チェーンのチェックは、上記のプロセスとは逆の順序Stampで実行され、ファイルを再処理し、監査ファイルに対して整合性をチェックします。も再計算され、ターミナルに出力され、
に保存されているものと比較されAudit_Stamp、一致するかどうかが確認されます。
監査ファイルの生成を続行し、整合性チェーンの将来の検証が正しく安全に実行されるようにするには、次の手順に従います。
input_path)に整理します。Auditor
がインストールされている場合は、コマンドターミナルを開いて
を実行します 。デフォルトでは、このコマンドは input_path
フォルダのルート内に監査ファイルと
auditor hash input_pathを作成します。(必要に応じて変更できます。)
Audit_FullListAudit_Stamp
Audit_Stampか、
デジタル署名してください。auditor check、前述の整合性チェーンが実行されます。プロセスの最後に、
からの整合性データ
Audit_FullListが再計算され、端末に表示されます。
この値は、前のステップで印刷またはデジタル署名された値と完全に一致する必要があります。
一致しない場合、整合性チェックは無効です。
Audit_FullList。
の使用法セクションの例を参照してください
auditor check。
auditorシステムにインストールする
と、次のように使用できます。
auditor subcommands:
hashフォレンジック監査の最初のステップです。ファイルの整合性を検証できる監査ファイルを生成します。
auditor hash input_path
これにより、次のようになります。
input_pathデフォルトのアルゴリズムで ファイルをハッシュする(
sha256)
input_path):
Audit_FullList:
のファイルの整合性データ(ハッシュ、サイズ、名前)が含まれます
input_path。デフォルト名:
_auditor_hashes.txt
Audit_Stamp:
の整合性データのみが含まれますAudit_FullList。デフォルト名:
_auditor_stamp.txt。これは、すべての整合性チェーンのチェックを確実にするために印刷またはデジタル署名する必要があるファイルです。
Audit_FullList
その後hash、整合性を検証するコマンドを実行できます
check。今後の整合性チェックを適切に行うには、
「整合性チェーン」セクションを読み、そこに記載されているアドバイスに従ってください。
ハッシュのみ生成し、ファイルは作成しません (-l)
auditor hash input_path -l
デフォルトのアルゴリズムで高速ディスク (-z) を使用して監査ファイルを上書きします (SSD ディスクの場合は高速なので便利です)。
auditor hash input_path -o -z
上記と同じですが、厳密モードを有効にして、input_path 内のすべてのファイルがハッシュされるようにします。
auditor hash input_path -o -z --strict
監査ファイルを上書きします (-o)、thash メソッドを使用せずに (-d)。
auditor hash input_path -o -d
監査ファイルを上書きし (-o)、ルート フォルダー (-u 1) 内の txt ファイルのみ (-i "**/*.txt") を含めます (フラグ -i および -e は glob パターンを使用します。詳細については注記を参照してください)。
auditor hash input_path -o -i "**/*.txt" -u 1
監査ファイルを上書きします (-o)、txt ファイルを除くすべてのファイルを含めます (-e "**/*.txt")
auditor hash input_path -o -e "**/*.txt"
監査ファイルを上書きします (-o)。「file1.doc」(-i "**/*/file1.doc") と「file2.xls」(-i "**/*/file2.xls") という名前のファイルのみを含めます。
auditor hash input_path -o -i "**/*/file1.doc" -i "**/*/file2.xls"
監査ファイルを上書きします(-o)。$RECYCLE.BINフォルダ内のファイルと「System Volume Information」を除くすべてのファイルが含まれます。注意:$RECYCLE.BIN内の文字$はnameに属しており、正しく解析するには文字\でエスケープする必要があります。
auditor hash input_path -o -e "**/\$RECYCLE.BIN/**" -e "**/System Volume Information/**"
監査ファイルを上書きし(-o)、folder1という名前のディレクトリ内のファイルを除くすべてのtxtファイル(-i "**/*/*.txt")を含めます(-e "**/*/folder1/*")。
auditor hash input_path -z -o -a blake3 -i "**/*/*.txt" -e "**/*/folder1/*"
監査ファイルを上書き (-o)、高速ディスク (-z) とアルゴリズム 'blake3' (非常に高速) を使用します。
auditor hash input_path -o -z -a blake3
監査ファイルを上書き(-o)、ブロックサイズ10MB、'whirlpool'ハッシュ関数を使用する
auditor hash input_path -o -b 10MB -a whirlpool
lock既存の監査ファイルを保存する必要がある場合に便利です。これは
after hashコマンドで使用でき
、誤って新しい監査ファイルが生成されるのを防ぐことができますinput_path。
auditor lock input_path
これにより、次のようになります。
_auditor_lock.txt作成タイムスタンプ付きの ファイルを作成しますinput_path
。
input_path。
ロックを解除するにはinput_path、ファイルを手動で削除する必要があります_auditor_lock.txt
checkフォレンジック監査の2番目のステップです。監査ファイルの情報を用いてデータの整合性をチェックし、ハッシュ化後に使用できます。
auditor check input_path
これにより、次のようになります。
input_path):
Audit_Stamp、 と照合しますAudit_FullList。
Audit_FullList、 の元のファイルと照合しますinput_path。
Audit_FullList。
デフォルトの監査ファイルを使用して、高速ディスク モード (-z) でチェックインします。
auditor check input_path -z
上記と同じですが、厳密モードが有効になっているため、input_path 内のすべてのファイルが検証されます。
auditor check input_path -z --strict
デフォルトの監査ファイルを使用して、txt ファイルのみをチェックします (-i "**/*.txt") (フラグ -i および -e は glob パターンを使用します。詳細については注記を参照してください)。
auditor check input_path -i "**/*.txt"
デフォルトの監査ファイルを使用して、静かなモード (-q) でチェックし、最初のエラー (-x) で停止します。
auditor check input_path -q -x
特定の名前の監査ファイルを使用して F:\data_path をチェックします。(<Audit_FullList> に -f、<Audit_Stamp> に -s)
auditor check F:\data_path -f C:\other_path\personal_fullList.txt -s C:\other_path\personal_stamp.txt -q -x
<input_path> 内の 1 つのファイルのみの整合性を監査ファイルと比較してチェックします。
auditor check F:\data_path\file1.txt -f C:\other_path\some_audit.txt -q -x
注:監査チェックは fsum 形式と互換性があります。
)
clone内部のデータのコピーinput_pathとdest_path、コピーされたデータの整合性の検証に使用されます。
auditor clone input_path dest_path
これにより、次のようになります。
input_path、整合性データ (ハッシュ、サイズ、名前) を生成します。
dest_path。
dest_pathで生成された整合性データに対して 、
のファイルの整合性をチェックしますinput_path。
input_path監査ファイルが存在しない場合は、-g オプションを使用して または で
作成できますdest_path。監査ファイルが存在する場合は、作成できません。
エラーの場合は再試行します (デフォルトは 3 回ですが、変更できます)。
高速ディスク モード (-z)。
auditor clone input_path dest_path -z
上記と同じですが、厳密モードを有効にして、input_path 内のすべてのファイルが複製されるようにします。
auditor clone input_path dest_path --strict
静音モード (-q) で、最初のエラーで停止します (-x)。
auditor clone input_path dest_path -q -x
input_path と dest_path の両方に監査ファイルを生成するクローン作成 (注を参照)。
auditor clone input_path dest_path -g both
dest_path にのみ監査ファイルを生成するクローン作成。
auditor clone input_path dest_path -g dest
input_path にのみ監査ファイルを生成するクローン作成。
auditor clone input_path dest_path -g input
-i および/または -e を使用して、プロセスのファイルを含めたり除外したりできます (--strict と併用できません)。
auditor clone input_path dest_path -q -x -i "**/*.txt" -e "**/dir1/**/*
注意:監査ファイルを生成するには、input_path監査ファイル (Audit_FullList および Audit_Stamp)
を含めることはできません。これは、既存の監査ファイルとの混乱を防ぐためです。
auditor clone --help のすべてのオプションを参照してください
)
chkcopyinput_pathは、内部のデータを監査ファイルと照合して にコピーしdest_path、同時に
にコピーされたデータの整合性を検証するために使用されますdest_path。
auditor chkcopy input_path dest_path
これにより、次のようになります。
input_path、監査ファイルの整合性データと照合します。
dest_path。
dest_path監査ファイルからの整合性データに対して
ファイルの整合性をチェックします。
エラーの場合は再試行します (デフォルトは 3 回ですが、変更できます)。
高速ディスク モード (-z) では、SSD、M.2 などの高速ディスクになります。
auditor chkcopy input_path dest_path -z
Same that above, but with strict mode enable, to ensure that ALL files in input_path are checked and copied:
auditor chkcopy input_path dest_path --strict
In quiet mode (-q) and stop on first error (-x).
auditor chkcopy input_path dest_path -q -x
You can use -i and/or -e to include or exclude files of process (Can´t be used with --strict).
auditor clone input_path dest_path -q -x -i "**/*.txt" -e "**/dir1/**/*
Note:
input_path must to have audit files
(Audit_FullList / Audit_Stamp)!
info does not perform hash
integrity check. It only tests the audit files and the content of
input_path and shows useful
information. Can be used after hash was performed.
auditor info input_path
This will:
input_path ):
Audit_Stamp and
Audit_FullList exists.
Audit_Stamp and
Audit_FullList exists and listed
size is the same that in
input_path.
input_path are listed in
Audit_FullList.
Audit_FullList and check against
audit file Audit_Stamp
\。必要に応じて、末尾に二重のバックスラッシュを使用してください\\。これは、単一のバックスラッシュが末尾の引用符をエスケープし、ターミナルがパスを正しく解釈できないためです。
これは機能します:
"C:\My Data Path"または"C:\My Data Path\\"
これは失敗します:
"C:\My Data Path\"
バイナリのダウンロードと整合性データ(zip 内):
免責事項:このバージョンのはauditor開発段階のソフトウェアとして提供されており、いかなる保証やサポートも提供されません。また、
非商用目的のみに無料でご利用いただけます。自己責任でご利用ください。
ライセンス:このバージョンのは非商用利用のみauditorにライセンスされています
。詳細については、
ライセンス条項全文をご確認ください。
監査ファイルの形式はシンプルです。各行には以下の内容が含まれます。
hash_value ?ALGORITHM[<THASH-BlockSize>]|file_size[:hex]*relative_filepath
ここで[ ]はオプションです。
hash_value: ハッシュの値。
ALGORITHM[<THASH-BlockSize>]:
ハッシュ化に使用されたアルゴリズム。他のツールとの互換性を保つため、大文字で格納されます。<THASH-BlockSize>
パラメータはオプションで、ハッシュ化手法とブロックサイズが使用されたことを示します。ブロックサイズはKB、MB、GB、またはTB単位で指定する必要があります。例:10MB。
file_size:
ハッシュ化された元のファイルのファイルサイズ。サイズが一致しない場合のチェックや速度向上に役立ちます。元のファイルとサイズが一致しないことが既に分かっているのに、なぜ大きなファイルをハッシュ化するのでしょうか?
[:hex]:
ファイルパスが16進形式であることを示すオプションのフラグ。これは、一部のOSでは「\n」、「\r」、「\0」などの文字が許可されており、結果のフォーマットに関する問題を回避できるため必要です。
relative_filepath:
ハッシュされたファイルの相対ファイルパス。
例1:メソッドの使用 thashアルゴリズムsha256、ブロックサイズ50MBの場合:
281d5d93464f1165ea7c403ca99d63ff4bf9a360864f8df4bd0e8e6c03774e98 ?SHA256<THASH-50MB>|500000*file_hashed.bin
例 2:通常の方法を使用し、アルゴリズム blake3 のみを使用し、ファイルパスを 16 進形式で指定します。
7357b67824d086dc53f5e1ded565f500456bea1812783f1fbcddc08fddc3944c ?BLAKE3|2233:hex*1aCb344356e4e2b2b6
将来的には他の形式も実装される可能性があります。
超微細構造 を用いて 、auditor、fsum、rhash、hashdeep64 を実行し、結果を以下に示します。
Machine configs:
S.O.: Windows 11 Home 64bits
Processor: AMD Ryzen 7 (7800X3D 4.20 GHz)
RAM: 64 GB of RAM (Corsair Vengeance DDR5 64GB - 5200MHz)
Disk: SSD M.2 2TB (Corsair MP600 Pro NVMe)
Data Source 1:
Benchmarks using Data Source 1:
Data Source 2
Benchmarks using Data Source 2: