最近、CentOS 7.3サーバーでauditdを有効にし、いくつかの基本的なレポートを見て、1日に約10,000個の失敗したイベントがたくさん発生することがわかりました。
# aureport -x --failed | grep 03/29 | wc -l
10454
私はこれらの失敗した出来事のいくつかを理解しようとしましたが、まだ遠くには行きませんでした。より一般的なイベントの1つであるイベント8339524の例:
grep 8339524 audit.log
audit.log:node=hostname1.internal type=SYSCALL msg=audit(1490796601.096:8339524): arch=c000003e syscall=2 success=no exit=-6 a0=4a9037 a1=802 a2=6eb028 a3=7ffe761484d0 items=1 ppid=16090 pid=16094 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=301903 comm="sh" exe="/usr/bin/bash" subj=system_u:system_r:system_cronjob_t:s0-s0:c0.c1023 key="root"
audit.log:node=hostname1.internal type=PATH msg=audit(1490796601.096:8339524): item=0 name="/dev/tty" inode=1036 dev=00:05 mode=020666 ouid=0 ogid=5 rdev=05:00 obj=system_u:object_r:devtty_t:s0 objtype=NORMAL
ユーザーのルートが "sh"コマンドを実行したことがわかりますが、正確に何が起動したのか、つまりシステムで何が起こりましたか? ausearchはイベントを人間が読める形式に解釈することを知っていますが、これは新しい情報をあまり伝えないようです。
# ausearch --interpret -a 8339524
----
node=hostname1.internal type=PATH msg=audit(03/29/2017 16:10:01.096:8339524) : item=0 name=/dev/tty inode=1036 dev=00:05 mode=character,666 ouid=root ogid=tty rdev=05:00 obj=system_u:object_r:devtty_t:s0 objtype=NORMAL
node=hostname1.internal type=SYSCALL msg=audit(03/29/2017 16:10:01.096:8339524) : arch=x86_64 syscall=open success=no exit=ENXIO(No such device or address) a0=0x4a9037 a1=O_RDWR|O_NONBLOCK a2=0x6eb028 a3=0x7ffe761484d0 items=1 ppid=16090 pid=16094 auid=root uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root tty=(none) ses=301903 comm=sh exe=/usr/bin/bash subj=system_u:system_r:system_cronjob_t:s0-s0:c0.c1023 key=root
/dev/ttyを開くのに問題がありますか?デバイスファイルがそこにあり、他の端末と同じように見えるからです。また、subj = system_u:system_r:system_cronjob_tは、これがcronジョブに関連していることを示していますか?サーバーのcrontabの唯一の項目は* / 3毎時間実行されるように設定されているため、イベントの16:10タイムスタンプと一致しません。