On 3/4/21 9:09 PM, Alan Evangelista wrote: > If I run the rmdir command with a directory path with a slash at its > end, Audit doesn't record the deleted directory path. > > Audit rule: > -a always,exit -F dir=/sasdata -F arch=b64 -S creat -S open -S openat > -S unlink -S unlinkat -S symlink -S symlinkat -S link -S linkat -S > rename -S renameat -S chmod -S fchmod -S fchmodat -S chown -S fchown > -S fchownat -S mkdir -S mkdirat -S rmdir -S setxattr -S lsetxattr -S > fsetxattr -S removexattr -S lremovexattr -S fremovexattr -k filesystem_op > > Test command: > rmdir /sasdata/testdir > > Audit output: > > type=SYSCALL msg=audit(1614912311.117:4136): arch=c000003e syscall=84 > success=yes exit=0 a0=7ffcf6e5c757 a1=2 a2=7f200050f280 > a3=7ffcf6e5b660 items=3 ppid=17590 pid=22579 auid=201327714 uid=0 > gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts1 ses=269 > comm=\"rmdir\" exe=\"/usr/bin/rmdir\" key=\"filesystem_op\"","type=CWD > msg=audit(1614912311.117:4136): cwd=\"/home/aevangelista\"" > > type=PATH msg=audit(1614912311.117:4136): item=0 name=\"/sasdata/\" > inode=100916940 dev=08:04 mode=040775 ouid=0 ogid=201327708 rdev=00:00 > objtype=PARENT cap_fp=0000000000000000 cap_fi=0000000000000000 > cap_fe=0 cap_fver=0 > > type=PATH msg=audit(1614912311.117:4136): item=1 name=(null) > inode=100916940 dev=08:04 mode=040775 ouid=0 ogid=201327708 rdev=00:00 > objtype=PARENT cap_fp=0000000000000000 cap_fi=0000000000000000 > cap_fe=0 cap_fver=0 > > type=PATH msg=audit(1614912311.117:4136): item=2 name=(null) > inode=1181650 dev=08:04 mode=040755 ouid=0 ogid=0 rdev=00:00 > objtype=DELETE cap_fp=0000000000000000 cap_fi=0000000000000000 > cap_fe=0 cap_fver=0 > > type=PROCTITLE msg=audit(1614912311.117:4136): > proctitle=726D646972002F736173646174612F746573746469722F > > Shouldn't the directory path be recorded somewhere, regardless if > there is a slash at the end of the directory path? > > I found this issue while using Auditbeat, a collector of Linux Audit > events used for integration with Elasticsearch. Related > discussion: > https://discuss.elastic.co/t/rmdir-syscall-event-and-file-path/266015/3 > <https://discuss.elastic.co/t/rmdir-syscall-event-and-file-path/266015/3>
I tested this on a 3.10.0 kernel with userspace 2.8.5 and it works as advertised. The "proctitle" event in my search was the first one and I used the "-i" interpret flag. I could decode the raw ascii above but I suspect it would say "rmdir /sasdata/testdir/", since "72" is "r", "6D" is "m" and "2F", the last char, is "/" . LCB -- Lenny Bruzenak MagitekLTD -- Linux-audit mailing list [email protected] https://listman.redhat.com/mailman/listinfo/linux-audit
