summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Grubb <sgrubb@redhat.com>2020-01-24 17:29:16 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-10-01 13:14:33 +0200
commit67fd417f961254a409c2e64e026b9f2b41434c40 (patch)
tree0d4455d448c7eb514fd04a2a33807bc9819aa172
parent1fea0234984c39748386a8b2eebaf8a1561e3075 (diff)
downloadlinux-stable-67fd417f961254a409c2e64e026b9f2b41434c40.tar.gz
linux-stable-67fd417f961254a409c2e64e026b9f2b41434c40.tar.bz2
linux-stable-67fd417f961254a409c2e64e026b9f2b41434c40.zip
audit: CONFIG_CHANGE don't log internal bookkeeping as an event
[ Upstream commit 70b3eeed49e8190d97139806f6fbaf8964306cdb ] Common Criteria calls out for any action that modifies the audit trail to be recorded. That usually is interpreted to mean insertion or removal of rules. It is not required to log modification of the inode information since the watch is still in effect. Additionally, if the rule is a never rule and the underlying file is one they do not want events for, they get an event for this bookkeeping update against their wishes. Since no device/inode info is logged at insertion and no device/inode information is logged on update, there is nothing meaningful being communicated to the admin by the CONFIG_CHANGE updated_rules event. One can assume that the rule was not "modified" because it is still watching the intended target. If the device or inode cannot be resolved, then audit_panic is called which is sufficient. The correct resolution is to drop logging config_update events since the watch is still in effect but just on another unknown inode. Signed-off-by: Steve Grubb <sgrubb@redhat.com> Signed-off-by: Paul Moore <paul@paul-moore.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--kernel/audit_watch.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/kernel/audit_watch.c b/kernel/audit_watch.c
index 4f7262eba73d..50952d6d8120 100644
--- a/kernel/audit_watch.c
+++ b/kernel/audit_watch.c
@@ -317,8 +317,6 @@ static void audit_update_watch(struct audit_parent *parent,
if (oentry->rule.exe)
audit_remove_mark(oentry->rule.exe);
- audit_watch_log_rule_change(r, owatch, "updated_rules");
-
call_rcu(&oentry->rcu, audit_free_rule_rcu);
}