[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2190308.cDvYnDs5iT@x2>
Date: Thu, 04 Jun 2020 14:51:54 -0400
From: Steve Grubb <sgrubb@...hat.com>
To: Richard Guy Briggs <rgb@...hat.com>
Cc: Linux-Audit Mailing List <linux-audit@...hat.com>,
LKML <linux-kernel@...r.kernel.org>,
netfilter-devel@...r.kernel.org, Paul Moore <paul@...l-moore.com>,
omosnace@...hat.com, fw@...len.de, twoerner@...hat.com,
eparis@...isplace.org, tgraf@...radead.org
Subject: Re: [PATCH ghak124 v3] audit: log nftables configuration change events
On Thursday, June 4, 2020 1:57:56 PM EDT Richard Guy Briggs wrote:
> > > diff --git a/kernel/auditsc.c b/kernel/auditsc.c
> > > index 468a23390457..3a9100e95fda 100644
> > > --- a/kernel/auditsc.c
> > > +++ b/kernel/auditsc.c
> > > @@ -75,6 +75,7 @@
> > > #include <linux/uaccess.h>
> > > #include <linux/fsnotify_backend.h>
> > > #include <uapi/linux/limits.h>
> > > +#include <uapi/linux/netfilter/nf_tables.h>
> > >
> > > #include "audit.h"
> > >
> > > @@ -136,9 +137,26 @@ struct audit_nfcfgop_tab {
> > > };
> > >
> > > static const struct audit_nfcfgop_tab audit_nfcfgs[] = {
> > > - { AUDIT_XT_OP_REGISTER, "register" },
> > > - { AUDIT_XT_OP_REPLACE, "replace" },
> > > - { AUDIT_XT_OP_UNREGISTER, "unregister" },
> > > + { AUDIT_XT_OP_REGISTER, "xt_register"
> >
> > },
> >
> > > + { AUDIT_XT_OP_REPLACE, "xt_replace"
> > > }, + { AUDIT_XT_OP_UNREGISTER, "xt_unregister"
> > > }, + { AUDIT_NFT_OP_TABLE_REGISTER,
> > > "nft_register_table">
> > },
> >
> > > + { AUDIT_NFT_OP_TABLE_UNREGISTER, "nft_unregister_table"
> > > }, + { AUDIT_NFT_OP_CHAIN_REGISTER,
> > > "nft_register_chain">
> > },
> >
> > > + { AUDIT_NFT_OP_CHAIN_UNREGISTER, "nft_unregister_chain"
> > > }, + { AUDIT_NFT_OP_RULE_REGISTER,
> > > "nft_register_rule">
> > },
> >
> > > + { AUDIT_NFT_OP_RULE_UNREGISTER, "nft_unregister_rule"
> >
> > },
> >
> > > + { AUDIT_NFT_OP_SET_REGISTER, "nft_register_set"
> >
> > },
> >
> > > + { AUDIT_NFT_OP_SET_UNREGISTER, "nft_unregister_set"
> >
> > },
> >
> > > + { AUDIT_NFT_OP_SETELEM_REGISTER, "nft_register_setelem"
> > > }, + { AUDIT_NFT_OP_SETELEM_UNREGISTER,
> > > "nft_unregister_setelem" }, + { AUDIT_NFT_OP_GEN_REGISTER,
> > > "nft_register_gen" }, + {
> > > AUDIT_NFT_OP_OBJ_REGISTER, "nft_register_obj" }, +
> > > { AUDIT_NFT_OP_OBJ_UNREGISTER, "nft_unregister_obj"
> > > }, + { AUDIT_NFT_OP_OBJ_RESET, "nft_reset_obj"
> > > }, + { AUDIT_NFT_OP_FLOWTABLE_REGISTER,
> > > "nft_register_flowtable" }, + {
> > > AUDIT_NFT_OP_FLOWTABLE_UNREGISTER, "nft_unregister_flowtable" }, +
> > > { AUDIT_NFT_OP_INVALID, "nft_invalid"
> >
> > },
> >
> > > };
> >
> > I still don't like the event format because it doesn't give complete
> > subject information. However, I thought I'd comment on this string
> > table. Usually it's sufficient to log the number and then have the
> > string table in user space which looks it up during interpretation.
>
> That is a good idea that would help reduce kernel cycles and netlink
> bandwidth, but the format was set in 2011 so it is a bit late to change
> that now:
> fbabf31e4d48 ("netfilter: create audit records for x_tables
> replaces")
Nothing searches/interprets that field name. So, you can redefine it by
renaming it. Or just go with what you have. My preference is push that to
user space. But not a showstopper "as is".
-Steve
Powered by blists - more mailing lists