audit: log module name on delete_module
authorRichard Guy Briggs <rgb@redhat.com>
Tue, 2 May 2017 14:16:04 +0000 (10:16 -0400)
committerPaul Moore <paul@paul-moore.com>
Tue, 2 May 2017 14:16:04 +0000 (10:16 -0400)
When a sysadmin wishes to monitor module unloading with a syscall rule such as:
 -a always,exit -F arch=x86_64 -S delete_module -F key=mod-unload
the SYSCALL record doesn't tell us what module was requested for unloading.

Use the new KERN_MODULE auxiliary record to record it.
The SYSCALL record result code will list the return code.

See: https://github.com/linux-audit/audit-kernel/issues/37
    https://github.com/linux-audit/audit-kernel/issues/7
    https://github.com/linux-audit/audit-kernel/wiki/RFE-Module-Load-Record-Format

Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
Acked-by: Jessica Yu <jeyu@redhat.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
kernel/module.c

index 7eba6dea4f417dbf363731cf2a3cc374ce1d703b..23224d8ba00df1497667859f110739503d2a35d6 100644 (file)
@@ -947,6 +947,8 @@ SYSCALL_DEFINE2(delete_module, const char __user *, name_user,
                return -EFAULT;
        name[MODULE_NAME_LEN-1] = '\0';
 
+       audit_log_kern_module(name);
+
        if (mutex_lock_interruptible(&module_mutex) != 0)
                return -EINTR;