AuditDを使用して次のタスクを完了しようとしています。
catを使用するか sudo catを使用するかは、/etc/passwdへのすべてのアクセスを監視する必要があります。まあ、簡単です。ただし、auditdが/ etc / passwdにアクセスするために使用されていない他のsudoコマンドを記録しないようにする必要もあります。
私は今完全に迷子になりました。 -S execveを介してすべてのsudoコマンドを記録するのは簡単ですが、sudo /etc/passwdだけを使用すると頭が痛くなる可能性があります。
答え1
監査ログのフィールドはauid
これを正確に示しています。execve
このために通話を確認する必要はありません。
~からRHEL監査システムリファレンス:
auid - 監査ユーザーIDを記録します。このIDは、ユーザーがログインしたときにユーザーに割り当てられ、ユーザーのIDが変更されても(たとえば、su -johnを使用してユーザーアカウントを切り替えることによって)、各プロセスから継承されます。
たとえば、下の行ではuidがルートですが、オエド(sudoを実行している元のユーザー)はjohnです。
$ ausearch -i -k passwd |grep cat
type=SYSCALL msg=audit(10/25/22 14:49:05.149:376) : arch=x86_64 syscall=openat success=yes exit=3 a0=0xffffff9c a1=0x7fffffffe268 a2=O_RDONLY a3=0x0 items=1 ppid=10413 pid=10418 auid=john uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root tty=pts8 ses=21750 comm=cat exe=/usr/bin/cat subj==unconfined key=passwd
見逃した場合の関連部分は次のとおりです。auid=john uid=root