linux-audit.redhat.com archive mirror
 help / color / mirror / Atom feed
From: Lenny Bruzenak <lenny@magitekltd.com>
To: linux-audit@redhat.com
Subject: Re: multicast listeners and audit events to kmsg
Date: Thu, 16 Apr 2020 12:46:22 -0600	[thread overview]
Message-ID: <0512fcf8-de73-2334-5179-7a37605c04fb@magitekltd.com> (raw)
In-Reply-To: <20200416120612.GA52165@gardel-login>

On 4/16/20 6:06 AM, Lennart Poettering wrote:

>
>> I'm regretting having developped this feature due to the problems it has
>> caused the audit developpers and innocent bystanders.  Instead, an audit
>> daemon plugin should have been used to direct log records to
>> journald.
> I am sorry, but this doesn't work for us. We do not want to do IPC to
> some audit daemon (journald runs during early boot and in the initrd,
> it has a very special relationship with early boot stuff and PID1, and
> thus being a client to other daemons is highly problematic, if those
> other daemons are managed by systemd as well, and run only during later
> boot). In fact we don't even want the dependency on the audit
> userspace package at all.
>
> In systemd we just think that audit information is pretty interesting
> even if you don't want to buy into the whole government regulation
> stuff, even if you don't want the auditd to run, and the full audit
> package installed. i.e. we want to collect the data as one of our
> various data streams, as a secondary consumer of it, and leave it to
> the audit package itself to do everything else and be the primary
> consumer of it.
>
> Using the multicast group is our way of saying: "we don't want to own
> the audit stream, you can keep it; we just want to have a look
> too".
>
> I believe that there are plenty of systems where audit logs should be
> collected but the whole auditd daemon should not be around, i.e. where
> the usefulness of the data is acknowledged without acknowledging that
> government regulations matter or the audit package should exist on
> every single system.

I do not understand "I believe that there are plenty of systems where 
audit logs should be collected but the whole auditd daemon should not be 
around..."... and without supportive data, tend to think that is untrue. 
Unless of source, the real desire is to provide a "better" audit logging 
system.

The "whole audit daemon" sounds like it is huge, which it isn't ... and 
regardless, if logs are collected, doesn't this imply _something_ is 
managing the logs? We currently call that "auditd".

>> Well, Steve, Paul and myself are all fairly firmly on the side of the
>> problem being in systemd and its overreach.
> We explicitly don#t want to own the audit stream, that's why we don#t
> use the unicast stuff, but only subscribe via the mcast stuff, so that
> we don't interfere with auditd's own processing if it is running, and
> we don't exlcude auditd from running. we want a mode where audit is
> collected, just like that without any auditd package installed, but if
> you decide to install auditd things just work too.
>
>>> For Richard and the "explicit configuration" approach in particular, I'm
>>> missing some further details:
>>>   * Is the current behavior considered buggy, or is that intended to be
>>>     kept as the default?
>> The current systemd behaviour of unilatterally enabling audit logging is
>> considered buggy.  The current audit kernel behaviour is considered
>> intentional.
> Well, we try hard to not step on your toes and do not use the unicast
> stuff and do not pretend to be auditd, so that auditd can be installed
> and run in parallel to journald with us being in the backseat. It's my
> understanding that the mcast stuff was added for this kind of thing,
> except that it never became useful, since it also means that kmsg is
> spammed by audit.
>
> THere's a usecase for collecting audit but not running the whole audit
> userspace suite, can't you see that?

I must admit that I cannot see a use case outside the realm of "because 
I want to".

> i.e. i for one am interested in
> selinux audit msgs, but I am not interested in the audit toolchain I
> must say, I really am not, and I am pretty sure there are many others
> like me. But you basically tell us to go away, or buy into the whole
> audit userspace.

Seems like a lot of work to avoid using auditd and the existing 
audispd-syslog plugin. It's known to work reasonably well. You could, if 
desired, turn off the writing of events to disk and still get everything 
interpreted/ordered through the audisp-syslog plugin - or write a simple 
similar one? But I assume you know that already.

I am quite sure there are many others like me that cannot envision the 
relevance of having kernel auditing without audit userspace tools 
involved, at least not in any environment where assurance exists.

The "whole audit userspace" being intimately connected to the kernel 
production of events, ensures (as best possible IMHO) that the while 
kernel supplies accuracy/validity, the userspace receiver then ensures 
event assimilation, log handling, dissemination. IIUC, you really DO 
want to pretend to be auditd, rather than get the auditd-disseminated 
results. That's fine, but may as well be honest.

I have to think about it, but in fact there may be a good reason why I 
would not want the multicast option available. I'd feel inclined, based 
on my own prejudice of delivering secure (as possible) systems, to 
instead find a way to limit only the auditd from the supplied audit rpm 
as being the sole unicast recipient. I do see your point about a kmsg 
forwarding disable option for people for whom this behavior isn't desired.

Just for reference, "government regulations matter" is a true statement 
and there are communities who depend on a reliable, secure audit system 
for adherence. Some of these communities are actually seen as vital. I 
understand that you are a distinguished linux contributor, and I am not, 
but from my perspective as a person who uses, delivers and maintains 
systems where the current audit userspace toolset is used in the manner 
for which it is intended, I'm really having a hard time understanding 
why you would not simply take the existing output facility and use it 
however you choose. The startup timing argument doesn't fly with me, sorry.

Anyway, that's my perspective.



V/R,

LCB

-- 
LC Bruzenak
MagitekLTD

--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit


  reply	other threads:[~2020-04-16 18:46 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-14  9:27 multicast listeners and audit events to kmsg Luca BRUNO
2020-04-15 15:53 ` Richard Guy Briggs
2020-04-16 12:06   ` Lennart Poettering
2020-04-16 18:46     ` Lenny Bruzenak [this message]
2020-04-17 18:57     ` Richard Guy Briggs
2020-04-17 19:21       ` Lennart Poettering
2020-04-17 20:08         ` Richard Guy Briggs
2020-04-22 21:59     ` Paul Moore
2020-04-23  7:30       ` Lennart Poettering
2020-04-23 13:50         ` Paul Moore
2020-04-23 13:57           ` Lennart Poettering
2020-04-23 14:04             ` Paul Moore
2020-04-23 16:19             ` Casey Schaufler
2020-04-23 16:44               ` Lennart Poettering
2020-04-23 17:17                 ` Steve Grubb

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0512fcf8-de73-2334-5179-7a37605c04fb@magitekltd.com \
    --to=lenny@magitekltd.com \
    --cc=linux-audit@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).