TOP ▲ itcore TOPTIPSaudit.php

ファイル監査ログ audit CentOS7 | itcore 2018年

監視対象の設定

# mkdir /etc/audit/rules.d/rireki
# cp -ip /etc/audit/rules.d/audit.rules /etc/audit/rules.d/rireki/audit.rules_`date "+%Y%m%d"`
# vi /etc/audit/rules.d/audit.rules
以下を追加
-w /pool/ -p r -k pool_read -F success=1
-w /pool/ -p w -k pool_write -F success=1
-w /pool/ -p x -k pool_execute -F success=1
-e 2
# shutdown -r now
# auditctl -l
-a always,exit -S all -F dir=/pool -F perm=r -F success=1 -F key=pool_read
-a always,exit -S all -F dir=/pool -F perm=w -F success=1 -F key=pool_write
-a always,exit -S all -F dir=/pool -F perm=x -F success=1 -F key=pool_execute

参考
AUDIT ルールの定義
AUDIT ログファイルについて

監査ログの参照

readログ
# grep pool_read /var/log/audit/audit.log
type=SYSCALL msg=audit(1518078536.758:2352): arch=c000003e syscall=2 success=yes exit=36 a0=55930ad391d0 a1=20000 a2=1f0 a3=55930ad5cd40 items=1 ppid=20890 pid=21763 auid=4294967295 uid=1001 gid=0 euid=1001 suid=0 fsuid=1001 egid=1001 sgid=0 fsgid=1001 tty=(none) ses=4294967295 comm="smbd" exe="/usr/sbin/smbd" key="pool_read"

一意ID(1518078536.758:2352)で一連のログを検索
# grep 1518078536.758:2352 /var/log/audit/audit.log
type=SYSCALL msg=audit(1518078536.758:2352): arch=c000003e syscall=2 success=yes exit=36 a0=55930ad391d0 a1=20000 a2=1f0 a3=55930ad5cd40 items=1 ppid=20890 pid=21763 auid=4294967295 uid=1001 gid=0 euid=1001 suid=0 fsuid=1001 egid=1001 sgid=0 fsgid=1001 tty=(none) ses=4294967295 comm="smbd" exe="/usr/sbin/smbd" key="pool_read"
type=CWD msg=audit(1518078536.758:2352): cwd="/pool/share/prj2018"
type=PATH msg=audit(1518078536.758:2352): item=0 name="test.txt" inode=8 dev=00:23 mode=0100760 ouid=1001 ogid=1002 rdev=00:00 objtype=NORMAL
type=PROCTITLE msg=audit(1518078536.758:2352): proctitle="/usr/sbin/smbd"

対象ファイル(/pool/share/prj2018/test.txt)
cwd="/pool/share/prj2018"
name="test.txt"

対象ユーザ(uid=1001)
# grep x:1001: /etc/passwd
yamada:x:1001:1001::/home/yamada:/bin/bash

システムコール(syscall=2)の種類
# ausyscall --dump|grep "^2\s"
2 open