AIDE
AIDE はホストベースの侵入検知システム (HIDS) でファイルの整合性をチェックします。最初の実行時にファイルのベースラインとなるデータベースを作成して、次の実行時にはシステムに対してデータベースで確認することで侵入検知します。パーミッション、変更日時やファイルの中身など、様々なファイルのプロパティをチェックできます。
設定の見方
チェックできるデフォルトルールの組み合わせ で 対象のディレクトリをチェックしていく
- ルール
ftype ファイルタイプ
p パーミッション
i iノード
n リンク数
u ユーザ
g グループ
s サイズ
b ブロック数
m ファイル更新時間
a ファイルアクセス時間
c フィアル作成時間
S 増分サイズ
acl アクセスコントロールリスト
selinux SELinuxセキュリティコンテキスト
xattrs 拡張ファイル属性
md5 md5チェックサム
sha1 sha1チェックサム
sha256:sha256チェックサム
sha512 sha512チェックサム
rmd160 rmd160チェックサム
tiger tigerチェックサム
havel havelチェックサム
gost gostチェックサム
crc32 crc32チェックサム
whirlpool whirlpoolチェックサム
R p+i+n+u+g+s+m+c+acl+selinux+xattrs+md5
L p+i+n+u+g+acl+selinux+xattrs
E Empty Group
> p+u+g+i+n+S+acl+selinux+xattrs
- カスタムルール
ルールを組み合わせたもの
MyRule = p + i + n + u + g + s + b + m + c + md5 + sha1
チェックサムとは?
誤り検出符号の一つで、データ列を整数値の列とみなして和を求め、これをある定数で割った余り(余剰)を検査用データとするもの。
最も単純な誤り検出方式の一種で、誤りの検出精度は低いが原理が簡単で容易に実装でき、計算コストも低いため、簡易な誤り検出方式として広く普及。
要は、ファイルの「同一性」を確認できる。
ローカルで検証
何も変更がないとチェックサムは変わらない
❯ shasum -a 256 hoge.txt
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 hoge.txt
~/Desktop
❯ shasum -a 256 hoge.txt
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 hoge.txt
~/Desktop
❯ shasum -a 256 hoge.txt
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 hoge.txt
ファイルを更新すると変わる
~/Desktop
❯ echo "hoge" >> hoge.txt
~/Desktop
❯ shasum -a 256 hoge.txt
678e851755589c2ed8905b10e0e8302a694af7e40ee86abacfa4bddfba859bb1 hoge.txt
内容を元に戻す
~/Desktop
❯ vim hoge.txt
~/Desktop
❯ shasum -a 256 hoge.txt
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 hoge.txt
参考
https://aide.github.io/doc/
https://hacknote.jp/archives/20260/
https://wiki.archlinux.jp/index.php/AIDE