用auditd找到在Linux中乱建文件的家伙!
最近有一台服务器上的日志在切割之后新日志属主经常会变成root, 那么,监控是哪个家伙来改的吧!
使用auditd针对/data/logs/app/进行监控 :
auditctl -w /data/logs/app/ -p wxa -k php_app_change
第二天查看监控结果
ausearch -k php_app_change | less
用/搜索CREATE 有用内容如下:
time->Mon Mar 23 23:59:02 2015
type=PATH msg=audit(1427126342.023:1289345): item=1 name="/data/logs/app/http_access.log" inode=3418062 dev=fd:00 mode=0100644 ouid=0 ogid=0 rdev=00:00 obj=unconfined_u:object_r:default_t:s0 nametype=CREATE
type=PATH msg=audit(1427126342.023:1289345): item=0 name="/data/logs/app/" inode=3417449 dev=fd:00 mode=040755 ouid=500 ogid=500 rdev=00:00 obj=unconfined_u:object_r:default_t:s0 nametype=PARENT
type=CWD msg=audit(1427126342.023:1289345): cwd="/root"
type=SYSCALL msg=audit(1427126342.023:1289345): arch=c000003e syscall=2 success=yes exit=5 a0=c271098 a1=441 a2=1b6 a3=1e items=2 ppid=8923 pid=14003 auid=501 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=152893 comm="php" exe="/usr/local/php/bin/php" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key="php_app_change"
由此可见,是用root运行的php导致,再看对应的ppid(父进程号):
#21#root@ctc-bjlg-xoyo-web19-KIDC160630 ~]$ ps aux | grep 8923
root 8923 0.0 0.0 106232 1472 ? S Mar15 11:05 sh /data/cli/watchdog.sh
watchdog.sh脚本中有许多运行php脚本的地方
找到这个坏家伙了!