* Systemd Journald and audit logging causing journal issues
@ 2017-10-02 17:30 Brad Zynda
2017-10-17 15:25 ` Steve Grubb
0 siblings, 1 reply; 15+ messages in thread
From: Brad Zynda @ 2017-10-02 17:30 UTC (permalink / raw)
To: linux-audit
Hello Everyone,
I am sending along an issue brought to the systemd-journald dev list
initially:
On 10/02/2017 11:40 AM, Lennart Poettering wrote:
> On Mo, 02.10.17 11:25, Brad Zynda (bradley.v.zynda@nasa.gov) wrote:
>
>> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
>> from /system.slice/auditd.service
>
> The question is: why does auditd even log to the journal?
>
>> Now we are required to have full audit rules and does this look like at
>> rate limiting issue or an issue of journal not able to handle the
>> traffic to logging?
>
> journald detected that it got flooded with too many messages in too
> short a time from auditd. if this happens then something is almost
> certainly off with auditd, as auditd is not supposed to flood journald
> with messages, after all it maintains its own auditing log database.
>
> Please ping the auditd folks for help
>
> Lennart
>
_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel
Hey Everyone,
Not sure if this is a bug so:
systemctl status -l systemd-journald.service
● systemd-journald.service - Journal Service
Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service;
static; vendor preset: disabled)
Active: active (running) since Tue 2017-09-26 20:01:16 UTC; 5 days ago
Docs: man:systemd-journald.service(8)
man:journald.conf(5)
Main PID: 565 (systemd-journal)
Status: "Processing requests..."
CGroup: /system.slice/systemd-journald.service
└─565 /usr/lib/systemd/systemd-journald
Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
from /system.slice/auditd.service
Sep 28 13:51:03 server systemd-journal[565]: Suppressed 98979 messages
from /system.slice/auditd.service
Sep 28 13:52:03 server systemd-journal[565]: Suppressed 109433 messages
from /system.slice/auditd.service
Sep 28 13:53:03 server systemd-journal[565]: Suppressed 99788 messages
from /system.slice/auditd.service
Sep 28 13:54:03 server systemd-journal[565]: Suppressed 111605 messages
from /system.slice/auditd.service
Sep 28 13:55:03 server systemd-journal[565]: Suppressed 111591 messages
from /system.slice/auditd.service
Sep 28 13:56:03 server systemd-journal[565]: Suppressed 107947 messages
from /system.slice/auditd.service
Sep 28 13:57:51 server systemd-journal[565]: Suppressed 32760 messages
from /system.slice/auditd.service
Sep 28 17:21:40 server systemd-journal[565]: Suppressed 210 messages
from /system.slice/auditd.service
Oct 01 02:16:01 server systemd-journal[565]: Suppressed 1333 messages
from /system.slice/auditd.service
journalctl --verify
PASS: /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-000000000097f6c7-0005596b745b4d1c.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-000000000096a587-00055966f35ae59a.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-00000000009554f1-000559629c4cdb7e.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-0000000000940591-0005595e1811a2d1.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-000000000092b500-00055959f2de5ede.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-0000000000916479-0005595573137b74.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-0000000000901337-00055950d80cc3d8.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-00000000008ec2fb-0005594cad14b07a.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-00000000008d7373-0005594838683e58.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-00000000008c238e-00055943fe2072e3.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-00000000008ad1d9-0005593ff64a4f69.journal
PASS:
/run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95d8203c5e96a46-0000000000897f32-0005593e18c5758b.journal
journalctl --disk-usage
Archived and active journals take up 1.1G on disk.
Initially we saw:
16733 PATH
5070 SYSCALL
5024 CWD
3765 AVC
323 CRYPTO_KEY_USER
223 USER_START
222 USER_ACCT
222 CRED_ACQ
220 LOGIN
220 CRED_REFR
218 USER_END
218 CRED_DISP
46 USER_LOGIN
12 EXECVE
4 USER_AUTH
2 CRYPTO_SESSION
1 USER_ROLE_CHANGE
1 USER_CMD
1 SERVICE_STOP
1 SERVICE_START
1 BPRM_FCAPS
so we blocked type PATH in audit.rules
But we are still seeing 100K of dropped/suppressed messages.
Note: systemloglevel = INFO
Centos 7 1708 3.10.0-693.2.2.el7.x86_64
systemd.x86_64 219-42.el7_4.1
Now we are required to have full audit rules and does this look like at
rate limiting issue or an issue of journal not able to handle the
traffic to logging?
Error we are seeing from services that have silently failed, in this
case glassfish..
systemctl status -l glassfish
● glassfish.service - SYSV: GlassFish start and stop daemon
Loaded: loaded (/etc/rc.d/init.d/glassfish; bad; vendor preset: disabled)
Active: active (exited) since Tue 2017-09-26 20:01:36 UTC; 5 days ago
Docs: man:systemd-sysv-generator(8)
Process: 1328 ExecStart=/etc/rc.d/init.d/glassfish start (code=exited,
status=0/SUCCESS)
Warning: Journal has been rotated since unit was started. Log output is
incomplete or unavailable.
Eventually glassfish will fail but it wont kill the service so we never
get an nms service down trap from the OID.
Please let me know if further info is needed or if certain limits need
to be adjusted.
Thanks,
Brad Zynda
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-02 17:30 Systemd Journald and audit logging causing journal issues Brad Zynda
@ 2017-10-17 15:25 ` Steve Grubb
2017-10-17 15:40 ` Brad Zynda
0 siblings, 1 reply; 15+ messages in thread
From: Steve Grubb @ 2017-10-17 15:25 UTC (permalink / raw)
To: linux-audit
Hello,
I apologize for the late reply...just found the message.
On Monday, October 2, 2017 1:30:19 PM EDT Brad Zynda wrote:
> I am sending along an issue brought to the systemd-journald dev list
> initially:
>
> On 10/02/2017 11:40 AM, Lennart Poettering wrote:
> > On Mo, 02.10.17 11:25, Brad Zynda (bradley.v.zynda@nasa.gov) wrote:
> >> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
> >> from /system.slice/auditd.service
> >
> > The question is: why does auditd even log to the journal?
It doesn't. I have had many arguments with the systemd people about polluting
syslog with audit events. If we wanted audit events there, we would have wrote
them there. The journal is listening on a multicast audit socket that was
created just for them and using a posix capability that was created just for
them. And journal also turns on auditing even if you didn't want it. In short,
they have, with intention, created your problem.
> >> Now we are required to have full audit rules and does this look like at
> >> rate limiting issue or an issue of journal not able to handle the
> >> traffic to logging?
> >
> > journald detected that it got flooded with too many messages in too
> > short a time from auditd. if this happens then something is almost
> > certainly off with auditd, as auditd is not supposed to flood journald
> > with messages, after all it maintains its own auditing log database.
No...that's the way it works. If you want the audit stream, you have to be
able to handle it. My suggestion is that we have a separation of duties.
Auditd has audit events, journal has syslog. Besides, mixing audit and syslog
data means the security officer and system admin roles have been combined. I
think there is an audit.socket unit file that can be masked.
> > Please ping the auditd folks for help
They created the problem of audit events in syslog. That said, its been my
experience that whenever you get lots of events, there may be something wrong
with your rules.
The normal technique to figure out what wrong is to run aureport --summary
--key during the time range of the flood to see what rule is triggering. Then
we can look at that rule to see if there's something wrong with it.
More below...
> Hey Everyone,
>
> Not sure if this is a bug so:
>
> systemctl status -l systemd-journald.service
> ● systemd-journald.service - Journal Service
> Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service;
> static; vendor preset: disabled)
> Active: active (running) since Tue 2017-09-26 20:01:16 UTC; 5 days ago
> Docs: man:systemd-journald.service(8)
> man:journald.conf(5)
> Main PID: 565 (systemd-journal)
> Status: "Processing requests..."
> CGroup: /system.slice/systemd-journald.service
> └─565 /usr/lib/systemd/systemd-journald
>
> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
> from /system.slice/auditd.service
> Sep 28 13:51:03 server systemd-journal[565]: Suppressed 98979 messages
> from /system.slice/auditd.service
> Sep 28 13:52:03 server systemd-journal[565]: Suppressed 109433 messages
> from /system.slice/auditd.service
> Sep 28 13:53:03 server systemd-journal[565]: Suppressed 99788 messages
> from /system.slice/auditd.service
> Sep 28 13:54:03 server systemd-journal[565]: Suppressed 111605 messages
> from /system.slice/auditd.service
> Sep 28 13:55:03 server systemd-journal[565]: Suppressed 111591 messages
> from /system.slice/auditd.service
> Sep 28 13:56:03 server systemd-journal[565]: Suppressed 107947 messages
> from /system.slice/auditd.service
> Sep 28 13:57:51 server systemd-journal[565]: Suppressed 32760 messages
> from /system.slice/auditd.service
> Sep 28 17:21:40 server systemd-journal[565]: Suppressed 210 messages
> from /system.slice/auditd.service
> Oct 01 02:16:01 server systemd-journal[565]: Suppressed 1333 messages
> from /system.slice/auditd.service
>
> journalctl --verify
> PASS: /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system.journal
> PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-000000000097f6c7-0005596b745b4d1c.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-000000000096a587-00055966f35ae59a.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-00000000009554f1-000559629c4cdb7e.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-0000000000940591-0005595e1811a2d1.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-000000000092b500-00055959f2de5ede.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-0000000000916479-0005595573137b74.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-0000000000901337-00055950d80cc3d8.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-00000000008ec2fb-0005594cad14b07a.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-00000000008d7373-0005594838683e58.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-00000000008c238e-00055943fe2072e3.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-00000000008ad1d9-0005593ff64a4f69.journal PASS:
> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
> d8203c5e96a46-0000000000897f32-0005593e18c5758b.journal
>
>
> journalctl --disk-usage
> Archived and active journals take up 1.1G on disk.
>
>
> Initially we saw:
> 16733 PATH
> 5070 SYSCALL
> 5024 CWD
> 3765 AVC
> 323 CRYPTO_KEY_USER
> 223 USER_START
> 222 USER_ACCT
> 222 CRED_ACQ
> 220 LOGIN
> 220 CRED_REFR
> 218 USER_END
> 218 CRED_DISP
> 46 USER_LOGIN
> 12 EXECVE
> 4 USER_AUTH
> 2 CRYPTO_SESSION
> 1 USER_ROLE_CHANGE
> 1 USER_CMD
> 1 SERVICE_STOP
> 1 SERVICE_START
> 1 BPRM_FCAPS
>
> so we blocked type PATH in audit.rules
This is not the right thing to do. If a security officer asks what is being
accessed, you got rid of the information. The right thing is to figure out
which rule is being hit and see if something is wrong with it. For example, I
have seen people do this:
-a always,exit -S open,openat -F exit=-EPERM
The problem is that they did not restrict the rule an architecture and they
were getting lots of events for the wrong syscall. I've also seen people add
-F success 0 to an open syscall. This also results in a large number of
events.
So, I'd recommend making sure all rules have keys added and the running the
key summary report to see what rule needs inspection.
If you find the rule that's causing the problem and you want an opinion, send
it to the mail list.
-Steve
> But we are still seeing 100K of dropped/suppressed messages.
>
> Note: systemloglevel = INFO
>
> Centos 7 1708 3.10.0-693.2.2.el7.x86_64
>
> systemd.x86_64 219-42.el7_4.1
>
>
> Now we are required to have full audit rules and does this look like at
> rate limiting issue or an issue of journal not able to handle the
> traffic to logging?
>
> Error we are seeing from services that have silently failed, in this
> case glassfish..
>
> systemctl status -l glassfish
> ● glassfish.service - SYSV: GlassFish start and stop daemon
> Loaded: loaded (/etc/rc.d/init.d/glassfish; bad; vendor preset: disabled)
> Active: active (exited) since Tue 2017-09-26 20:01:36 UTC; 5 days ago Docs:
> man:systemd-sysv-generator(8)
> Process: 1328 ExecStart=/etc/rc.d/init.d/glassfish start (code=exited,
> status=0/SUCCESS)
>
> Warning: Journal has been rotated since unit was started. Log output is
> incomplete or unavailable.
>
> Eventually glassfish will fail but it wont kill the service so we never
> get an nms service down trap from the OID.
>
> Please let me know if further info is needed or if certain limits need
> to be adjusted.
>
> Thanks,
> Brad Zynda
>
>
> --
> Linux-audit mailing list
> Linux-audit@redhat.com
> https://www.redhat.com/mailman/listinfo/linux-audit
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-17 15:25 ` Steve Grubb
@ 2017-10-17 15:40 ` Brad Zynda
2017-10-17 16:25 ` Steve Grubb
0 siblings, 1 reply; 15+ messages in thread
From: Brad Zynda @ 2017-10-17 15:40 UTC (permalink / raw)
To: Steve Grubb, linux-audit
Hey Steve,
No problem you guys are busy with updates..
So I kind of stepped into a known issue with a current disagreement
between the 2 maintainers? what can be done to resolve this going
forward as it is killing services in production environments?
I agree with the need not to remove auditing as this is a slippery slope
and should not occur but the decision was based on little documentation
in regards to the problem and loss of service, I will look at further
checking in hopes to find the specific rule. Though I think the latter
to fix the issue is the appropriate avenue.
The rules have been put in place across many organizations that check
with tools like CIS-CAT and OSCAP, so a lot of rules and a point of
possible single failure.
In regards to the audit.socket what is the expected outcome of masking
this service?
Thanks,
Brad
On 10/17/2017 11:25 AM, Steve Grubb wrote:
> Hello,
>
> I apologize for the late reply...just found the message.
>
> On Monday, October 2, 2017 1:30:19 PM EDT Brad Zynda wrote:
>> I am sending along an issue brought to the systemd-journald dev list
>> initially:
>>
>> On 10/02/2017 11:40 AM, Lennart Poettering wrote:
>>> On Mo, 02.10.17 11:25, Brad Zynda (bradley.v.zynda@nasa.gov) wrote:
>>>> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
>>>> from /system.slice/auditd.service
>>>
>>> The question is: why does auditd even log to the journal?
>
> It doesn't. I have had many arguments with the systemd people about polluting
> syslog with audit events. If we wanted audit events there, we would have wrote
> them there. The journal is listening on a multicast audit socket that was
> created just for them and using a posix capability that was created just for
> them. And journal also turns on auditing even if you didn't want it. In short,
> they have, with intention, created your problem.
>
>
>>>> Now we are required to have full audit rules and does this look like at
>>>> rate limiting issue or an issue of journal not able to handle the
>>>> traffic to logging?
>>>
>>> journald detected that it got flooded with too many messages in too
>>> short a time from auditd. if this happens then something is almost
>>> certainly off with auditd, as auditd is not supposed to flood journald
>>> with messages, after all it maintains its own auditing log database.
>
> No...that's the way it works. If you want the audit stream, you have to be
> able to handle it. My suggestion is that we have a separation of duties.
> Auditd has audit events, journal has syslog. Besides, mixing audit and syslog
> data means the security officer and system admin roles have been combined. I
> think there is an audit.socket unit file that can be masked.
>
>
>>> Please ping the auditd folks for help
>
> They created the problem of audit events in syslog. That said, its been my
> experience that whenever you get lots of events, there may be something wrong
> with your rules.
>
> The normal technique to figure out what wrong is to run aureport --summary
> --key during the time range of the flood to see what rule is triggering. Then
> we can look at that rule to see if there's something wrong with it.
>
> More below...
>
>> Hey Everyone,
>>
>> Not sure if this is a bug so:
>>
>> systemctl status -l systemd-journald.service
>> ● systemd-journald.service - Journal Service
>> Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service;
>> static; vendor preset: disabled)
>> Active: active (running) since Tue 2017-09-26 20:01:16 UTC; 5 days ago
>> Docs: man:systemd-journald.service(8)
>> man:journald.conf(5)
>> Main PID: 565 (systemd-journal)
>> Status: "Processing requests..."
>> CGroup: /system.slice/systemd-journald.service
>> └─565 /usr/lib/systemd/systemd-journald
>>
>> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
>> from /system.slice/auditd.service
>> Sep 28 13:51:03 server systemd-journal[565]: Suppressed 98979 messages
>> from /system.slice/auditd.service
>> Sep 28 13:52:03 server systemd-journal[565]: Suppressed 109433 messages
>> from /system.slice/auditd.service
>> Sep 28 13:53:03 server systemd-journal[565]: Suppressed 99788 messages
>> from /system.slice/auditd.service
>> Sep 28 13:54:03 server systemd-journal[565]: Suppressed 111605 messages
>> from /system.slice/auditd.service
>> Sep 28 13:55:03 server systemd-journal[565]: Suppressed 111591 messages
>> from /system.slice/auditd.service
>> Sep 28 13:56:03 server systemd-journal[565]: Suppressed 107947 messages
>> from /system.slice/auditd.service
>> Sep 28 13:57:51 server systemd-journal[565]: Suppressed 32760 messages
>> from /system.slice/auditd.service
>> Sep 28 17:21:40 server systemd-journal[565]: Suppressed 210 messages
>> from /system.slice/auditd.service
>> Oct 01 02:16:01 server systemd-journal[565]: Suppressed 1333 messages
>> from /system.slice/auditd.service
>>
>> journalctl --verify
>> PASS: /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system.journal
>> PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-000000000097f6c7-0005596b745b4d1c.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-000000000096a587-00055966f35ae59a.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-00000000009554f1-000559629c4cdb7e.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-0000000000940591-0005595e1811a2d1.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-000000000092b500-00055959f2de5ede.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-0000000000916479-0005595573137b74.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-0000000000901337-00055950d80cc3d8.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-00000000008ec2fb-0005594cad14b07a.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-00000000008d7373-0005594838683e58.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-00000000008c238e-00055943fe2072e3.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-00000000008ad1d9-0005593ff64a4f69.journal PASS:
>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0b95
>> d8203c5e96a46-0000000000897f32-0005593e18c5758b.journal
>>
>>
>> journalctl --disk-usage
>> Archived and active journals take up 1.1G on disk.
>>
>>
>> Initially we saw:
>> 16733 PATH
>> 5070 SYSCALL
>> 5024 CWD
>> 3765 AVC
>> 323 CRYPTO_KEY_USER
>> 223 USER_START
>> 222 USER_ACCT
>> 222 CRED_ACQ
>> 220 LOGIN
>> 220 CRED_REFR
>> 218 USER_END
>> 218 CRED_DISP
>> 46 USER_LOGIN
>> 12 EXECVE
>> 4 USER_AUTH
>> 2 CRYPTO_SESSION
>> 1 USER_ROLE_CHANGE
>> 1 USER_CMD
>> 1 SERVICE_STOP
>> 1 SERVICE_START
>> 1 BPRM_FCAPS
>>
>> so we blocked type PATH in audit.rules
>
> This is not the right thing to do. If a security officer asks what is being
> accessed, you got rid of the information. The right thing is to figure out
> which rule is being hit and see if something is wrong with it. For example, I
> have seen people do this:
>
> -a always,exit -S open,openat -F exit=-EPERM
>
> The problem is that they did not restrict the rule an architecture and they
> were getting lots of events for the wrong syscall. I've also seen people add
> -F success 0 to an open syscall. This also results in a large number of
> events.
>
> So, I'd recommend making sure all rules have keys added and the running the
> key summary report to see what rule needs inspection.
>
> If you find the rule that's causing the problem and you want an opinion, send
> it to the mail list.
>
> -Steve
>
>
>> But we are still seeing 100K of dropped/suppressed messages.
>>
>> Note: systemloglevel = INFO
>>
>> Centos 7 1708 3.10.0-693.2.2.el7.x86_64
>>
>> systemd.x86_64 219-42.el7_4.1
>>
>>
>> Now we are required to have full audit rules and does this look like at
>> rate limiting issue or an issue of journal not able to handle the
>> traffic to logging?
>>
>> Error we are seeing from services that have silently failed, in this
>> case glassfish..
>>
>> systemctl status -l glassfish
>> ● glassfish.service - SYSV: GlassFish start and stop daemon
>> Loaded: loaded (/etc/rc.d/init.d/glassfish; bad; vendor preset: disabled)
>> Active: active (exited) since Tue 2017-09-26 20:01:36 UTC; 5 days ago Docs:
>> man:systemd-sysv-generator(8)
>> Process: 1328 ExecStart=/etc/rc.d/init.d/glassfish start (code=exited,
>> status=0/SUCCESS)
>>
>> Warning: Journal has been rotated since unit was started. Log output is
>> incomplete or unavailable.
>>
>> Eventually glassfish will fail but it wont kill the service so we never
>> get an nms service down trap from the OID.
>>
>> Please let me know if further info is needed or if certain limits need
>> to be adjusted.
>>
>> Thanks,
>> Brad Zynda
>>
>>
>> --
>> Linux-audit mailing list
>> Linux-audit@redhat.com
>> https://www.redhat.com/mailman/listinfo/linux-audit
>
>
>
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-17 15:40 ` Brad Zynda
@ 2017-10-17 16:25 ` Steve Grubb
2017-10-17 17:13 ` Brad Zynda
0 siblings, 1 reply; 15+ messages in thread
From: Steve Grubb @ 2017-10-17 16:25 UTC (permalink / raw)
To: Brad Zynda; +Cc: linux-audit
On Tuesday, October 17, 2017 11:40:12 AM EDT Brad Zynda wrote:
> Hey Steve,
>
> No problem you guys are busy with updates..
>
> So I kind of stepped into a known issue with a current disagreement
> between the 2 maintainers?
Its not a disagreement. Its systemd wants to do everything. Its a crond/
xinetd/syslogd/auditd/core dump collector/udev/login service/fstab/fs
automounter/container manager/file system monitor/resource manager/daemon
watchdog and oh by the way, it does init.
> what can be done to resolve this going
> forward as it is killing services in production environments?
End users have to take the situation into their own hands. There are
configuration knobs for a reason. More info here:
https://bugzilla.redhat.com/show_bug.cgi?id=1227379
> I agree with the need not to remove auditing as this is a slippery slope
> and should not occur but the decision was based on little documentation
> in regards to the problem and loss of service, I will look at further
> checking in hopes to find the specific rule. Though I think the latter
> to fix the issue is the appropriate avenue.
Figuring out which rule is triggering is the best solution. It may turn out
you just have a busy system. But most of the time its a bad rule.
> The rules have been put in place across many organizations that check
> with tools like CIS-CAT and OSCAP, so a lot of rules and a point of
> possible single failure.
They make mistakes, too.
> In regards to the audit.socket what is the expected outcome of masking
> this service?
The expected outcome is that journald stops getting audit records. It doesn't
solve the problem of why you are getting so many events. Fixing the rule does
that.
-Steve
> On 10/17/2017 11:25 AM, Steve Grubb wrote:
> > Hello,
> >
> > I apologize for the late reply...just found the message.
> >
> > On Monday, October 2, 2017 1:30:19 PM EDT Brad Zynda wrote:
> >> I am sending along an issue brought to the systemd-journald dev list
> >> initially:
> >>
> >> On 10/02/2017 11:40 AM, Lennart Poettering wrote:
> >>> On Mo, 02.10.17 11:25, Brad Zynda (bradley.v.zynda@nasa.gov) wrote:
> >>>> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
> >>>> from /system.slice/auditd.service
> >>>
> >>> The question is: why does auditd even log to the journal?
> >
> > It doesn't. I have had many arguments with the systemd people about
> > polluting syslog with audit events. If we wanted audit events there, we
> > would have wrote them there. The journal is listening on a multicast
> > audit socket that was created just for them and using a posix capability
> > that was created just for them. And journal also turns on auditing even
> > if you didn't want it. In short, they have, with intention, created your
> > problem.
> >
> >>>> Now we are required to have full audit rules and does this look like at
> >>>> rate limiting issue or an issue of journal not able to handle the
> >>>> traffic to logging?
> >>>
> >>> journald detected that it got flooded with too many messages in too
> >>> short a time from auditd. if this happens then something is almost
> >>> certainly off with auditd, as auditd is not supposed to flood journald
> >>> with messages, after all it maintains its own auditing log database.
> >
> > No...that's the way it works. If you want the audit stream, you have to be
> > able to handle it. My suggestion is that we have a separation of duties.
> > Auditd has audit events, journal has syslog. Besides, mixing audit and
> > syslog data means the security officer and system admin roles have been
> > combined. I think there is an audit.socket unit file that can be masked.
> >
> >>> Please ping the auditd folks for help
> >
> > They created the problem of audit events in syslog. That said, its been my
> > experience that whenever you get lots of events, there may be something
> > wrong with your rules.
> >
> > The normal technique to figure out what wrong is to run aureport --summary
> > --key during the time range of the flood to see what rule is triggering.
> > Then we can look at that rule to see if there's something wrong with it.
> >
> > More below...
> >
> >> Hey Everyone,
> >>
> >> Not sure if this is a bug so:
> >>
> >> systemctl status -l systemd-journald.service
> >> ● systemd-journald.service - Journal Service
> >>
> >> Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service;
> >>
> >> static; vendor preset: disabled)
> >>
> >> Active: active (running) since Tue 2017-09-26 20:01:16 UTC; 5 days ago
> >>
> >> Docs: man:systemd-journald.service(8)
> >>
> >> man:journald.conf(5)
> >>
> >> Main PID: 565 (systemd-journal)
> >>
> >> Status: "Processing requests..."
> >> CGroup: /system.slice/systemd-journald.service
> >>
> >> └─565 /usr/lib/systemd/systemd-journald
> >>
> >> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
> >> from /system.slice/auditd.service
> >> Sep 28 13:51:03 server systemd-journal[565]: Suppressed 98979 messages
> >> from /system.slice/auditd.service
> >> Sep 28 13:52:03 server systemd-journal[565]: Suppressed 109433 messages
> >> from /system.slice/auditd.service
> >> Sep 28 13:53:03 server systemd-journal[565]: Suppressed 99788 messages
> >> from /system.slice/auditd.service
> >> Sep 28 13:54:03 server systemd-journal[565]: Suppressed 111605 messages
> >> from /system.slice/auditd.service
> >> Sep 28 13:55:03 server systemd-journal[565]: Suppressed 111591 messages
> >> from /system.slice/auditd.service
> >> Sep 28 13:56:03 server systemd-journal[565]: Suppressed 107947 messages
> >> from /system.slice/auditd.service
> >> Sep 28 13:57:51 server systemd-journal[565]: Suppressed 32760 messages
> >> from /system.slice/auditd.service
> >> Sep 28 17:21:40 server systemd-journal[565]: Suppressed 210 messages
> >> from /system.slice/auditd.service
> >> Oct 01 02:16:01 server systemd-journal[565]: Suppressed 1333 messages
> >> from /system.slice/auditd.service
> >>
> >> journalctl --verify
> >> PASS: /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system.journal
> >> PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-000000000097f6c7-0005596b745b4d1c.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-000000000096a587-00055966f35ae59a.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-00000000009554f1-000559629c4cdb7e.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-0000000000940591-0005595e1811a2d1.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-000000000092b500-00055959f2de5ede.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-0000000000916479-0005595573137b74.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-0000000000901337-00055950d80cc3d8.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-00000000008ec2fb-0005594cad14b07a.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-00000000008d7373-0005594838683e58.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-00000000008c238e-00055943fe2072e3.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-00000000008ad1d9-0005593ff64a4f69.journal PASS:
> >> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
> >> b95 d8203c5e96a46-0000000000897f32-0005593e18c5758b.journal
> >>
> >>
> >> journalctl --disk-usage
> >> Archived and active journals take up 1.1G on disk.
> >>
> >>
> >> Initially we saw:
> >> 16733 PATH
> >> 5070 SYSCALL
> >> 5024 CWD
> >> 3765 AVC
> >> 323 CRYPTO_KEY_USER
> >> 223 USER_START
> >> 222 USER_ACCT
> >> 222 CRED_ACQ
> >> 220 LOGIN
> >> 220 CRED_REFR
> >> 218 USER_END
> >> 218 CRED_DISP
> >> 46 USER_LOGIN
> >> 12 EXECVE
> >> 4 USER_AUTH
> >> 2 CRYPTO_SESSION
> >> 1 USER_ROLE_CHANGE
> >> 1 USER_CMD
> >> 1 SERVICE_STOP
> >> 1 SERVICE_START
> >> 1 BPRM_FCAPS
> >>
> >> so we blocked type PATH in audit.rules
> >
> > This is not the right thing to do. If a security officer asks what is
> > being
> > accessed, you got rid of the information. The right thing is to figure out
> > which rule is being hit and see if something is wrong with it. For
> > example, I have seen people do this:
> >
> > -a always,exit -S open,openat -F exit=-EPERM
> >
> > The problem is that they did not restrict the rule an architecture and
> > they
> > were getting lots of events for the wrong syscall. I've also seen people
> > add -F success 0 to an open syscall. This also results in a large number
> > of events.
> >
> > So, I'd recommend making sure all rules have keys added and the running
> > the
> > key summary report to see what rule needs inspection.
> >
> > If you find the rule that's causing the problem and you want an opinion,
> > send it to the mail list.
> >
> > -Steve
> >
> >> But we are still seeing 100K of dropped/suppressed messages.
> >>
> >> Note: systemloglevel = INFO
> >>
> >> Centos 7 1708 3.10.0-693.2.2.el7.x86_64
> >>
> >> systemd.x86_64 219-42.el7_4.1
> >>
> >>
> >> Now we are required to have full audit rules and does this look like at
> >> rate limiting issue or an issue of journal not able to handle the
> >> traffic to logging?
> >>
> >> Error we are seeing from services that have silently failed, in this
> >> case glassfish..
> >>
> >> systemctl status -l glassfish
> >> ● glassfish.service - SYSV: GlassFish start and stop daemon
> >>
> >> Loaded: loaded (/etc/rc.d/init.d/glassfish; bad; vendor preset:
> >> disabled)
> >>
> >> Active: active (exited) since Tue 2017-09-26 20:01:36 UTC; 5 days ago
> >> Docs:
> >> man:systemd-sysv-generator(8)
> >>
> >> Process: 1328 ExecStart=/etc/rc.d/init.d/glassfish start (code=exited,
> >>
> >> status=0/SUCCESS)
> >>
> >> Warning: Journal has been rotated since unit was started. Log output is
> >> incomplete or unavailable.
> >>
> >> Eventually glassfish will fail but it wont kill the service so we never
> >> get an nms service down trap from the OID.
> >>
> >> Please let me know if further info is needed or if certain limits need
> >> to be adjusted.
> >>
> >> Thanks,
> >> Brad Zynda
> >>
> >>
> >> --
> >> Linux-audit mailing list
> >> Linux-audit@redhat.com
> >> https://www.redhat.com/mailman/listinfo/linux-audit
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-17 16:25 ` Steve Grubb
@ 2017-10-17 17:13 ` Brad Zynda
2017-10-18 15:14 ` Brad Zynda
0 siblings, 1 reply; 15+ messages in thread
From: Brad Zynda @ 2017-10-17 17:13 UTC (permalink / raw)
To: Steve Grubb; +Cc: linux-audit
Hi Steve,
Thanks for pointing me in the right direction and including the 2 year
old ticket to reference ;)
I will see about getting the audit.socket masked if it is allowed under
FIPS/NIST.
Thanks again,
Brad
On 10/17/2017 12:25 PM, Steve Grubb wrote:
> On Tuesday, October 17, 2017 11:40:12 AM EDT Brad Zynda wrote:
>> Hey Steve,
>>
>> No problem you guys are busy with updates..
>>
>> So I kind of stepped into a known issue with a current disagreement
>> between the 2 maintainers?
>
> Its not a disagreement. Its systemd wants to do everything. Its a crond/
> xinetd/syslogd/auditd/core dump collector/udev/login service/fstab/fs
> automounter/container manager/file system monitor/resource manager/daemon
> watchdog and oh by the way, it does init.
>
>
>> what can be done to resolve this going
>> forward as it is killing services in production environments?
>
> End users have to take the situation into their own hands. There are
> configuration knobs for a reason. More info here:
>
> https://bugzilla.redhat.com/show_bug.cgi?id=1227379
>
>
>> I agree with the need not to remove auditing as this is a slippery slope
>> and should not occur but the decision was based on little documentation
>> in regards to the problem and loss of service, I will look at further
>> checking in hopes to find the specific rule. Though I think the latter
>> to fix the issue is the appropriate avenue.
>
> Figuring out which rule is triggering is the best solution. It may turn out
> you just have a busy system. But most of the time its a bad rule.
>
>> The rules have been put in place across many organizations that check
>> with tools like CIS-CAT and OSCAP, so a lot of rules and a point of
>> possible single failure.
>
> They make mistakes, too.
>
>> In regards to the audit.socket what is the expected outcome of masking
>> this service?
>
> The expected outcome is that journald stops getting audit records. It doesn't
> solve the problem of why you are getting so many events. Fixing the rule does
> that.
>
> -Steve
>
>> On 10/17/2017 11:25 AM, Steve Grubb wrote:
>>> Hello,
>>>
>>> I apologize for the late reply...just found the message.
>>>
>>> On Monday, October 2, 2017 1:30:19 PM EDT Brad Zynda wrote:
>>>> I am sending along an issue brought to the systemd-journald dev list
>>>> initially:
>>>>
>>>> On 10/02/2017 11:40 AM, Lennart Poettering wrote:
>>>>> On Mo, 02.10.17 11:25, Brad Zynda (bradley.v.zynda@nasa.gov) wrote:
>>>>>> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
>>>>>> from /system.slice/auditd.service
>>>>>
>>>>> The question is: why does auditd even log to the journal?
>>>
>>> It doesn't. I have had many arguments with the systemd people about
>>> polluting syslog with audit events. If we wanted audit events there, we
>>> would have wrote them there. The journal is listening on a multicast
>>> audit socket that was created just for them and using a posix capability
>>> that was created just for them. And journal also turns on auditing even
>>> if you didn't want it. In short, they have, with intention, created your
>>> problem.
>>>
>>>>>> Now we are required to have full audit rules and does this look like at
>>>>>> rate limiting issue or an issue of journal not able to handle the
>>>>>> traffic to logging?
>>>>>
>>>>> journald detected that it got flooded with too many messages in too
>>>>> short a time from auditd. if this happens then something is almost
>>>>> certainly off with auditd, as auditd is not supposed to flood journald
>>>>> with messages, after all it maintains its own auditing log database.
>>>
>>> No...that's the way it works. If you want the audit stream, you have to be
>>> able to handle it. My suggestion is that we have a separation of duties.
>>> Auditd has audit events, journal has syslog. Besides, mixing audit and
>>> syslog data means the security officer and system admin roles have been
>>> combined. I think there is an audit.socket unit file that can be masked.
>>>
>>>>> Please ping the auditd folks for help
>>>
>>> They created the problem of audit events in syslog. That said, its been my
>>> experience that whenever you get lots of events, there may be something
>>> wrong with your rules.
>>>
>>> The normal technique to figure out what wrong is to run aureport --summary
>>> --key during the time range of the flood to see what rule is triggering.
>>> Then we can look at that rule to see if there's something wrong with it.
>>>
>>> More below...
>>>
>>>> Hey Everyone,
>>>>
>>>> Not sure if this is a bug so:
>>>>
>>>> systemctl status -l systemd-journald.service
>>>> ● systemd-journald.service - Journal Service
>>>>
>>>> Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service;
>>>>
>>>> static; vendor preset: disabled)
>>>>
>>>> Active: active (running) since Tue 2017-09-26 20:01:16 UTC; 5 days ago
>>>>
>>>> Docs: man:systemd-journald.service(8)
>>>>
>>>> man:journald.conf(5)
>>>>
>>>> Main PID: 565 (systemd-journal)
>>>>
>>>> Status: "Processing requests..."
>>>> CGroup: /system.slice/systemd-journald.service
>>>>
>>>> └─565 /usr/lib/systemd/systemd-journald
>>>>
>>>> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
>>>> from /system.slice/auditd.service
>>>> Sep 28 13:51:03 server systemd-journal[565]: Suppressed 98979 messages
>>>> from /system.slice/auditd.service
>>>> Sep 28 13:52:03 server systemd-journal[565]: Suppressed 109433 messages
>>>> from /system.slice/auditd.service
>>>> Sep 28 13:53:03 server systemd-journal[565]: Suppressed 99788 messages
>>>> from /system.slice/auditd.service
>>>> Sep 28 13:54:03 server systemd-journal[565]: Suppressed 111605 messages
>>>> from /system.slice/auditd.service
>>>> Sep 28 13:55:03 server systemd-journal[565]: Suppressed 111591 messages
>>>> from /system.slice/auditd.service
>>>> Sep 28 13:56:03 server systemd-journal[565]: Suppressed 107947 messages
>>>> from /system.slice/auditd.service
>>>> Sep 28 13:57:51 server systemd-journal[565]: Suppressed 32760 messages
>>>> from /system.slice/auditd.service
>>>> Sep 28 17:21:40 server systemd-journal[565]: Suppressed 210 messages
>>>> from /system.slice/auditd.service
>>>> Oct 01 02:16:01 server systemd-journal[565]: Suppressed 1333 messages
>>>> from /system.slice/auditd.service
>>>>
>>>> journalctl --verify
>>>> PASS: /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system.journal
>>>> PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-000000000097f6c7-0005596b745b4d1c.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-000000000096a587-00055966f35ae59a.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-00000000009554f1-000559629c4cdb7e.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-0000000000940591-0005595e1811a2d1.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-000000000092b500-00055959f2de5ede.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-0000000000916479-0005595573137b74.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-0000000000901337-00055950d80cc3d8.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-00000000008ec2fb-0005594cad14b07a.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-00000000008d7373-0005594838683e58.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-00000000008c238e-00055943fe2072e3.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-00000000008ad1d9-0005593ff64a4f69.journal PASS:
>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>> b95 d8203c5e96a46-0000000000897f32-0005593e18c5758b.journal
>>>>
>>>>
>>>> journalctl --disk-usage
>>>> Archived and active journals take up 1.1G on disk.
>>>>
>>>>
>>>> Initially we saw:
>>>> 16733 PATH
>>>> 5070 SYSCALL
>>>> 5024 CWD
>>>> 3765 AVC
>>>> 323 CRYPTO_KEY_USER
>>>> 223 USER_START
>>>> 222 USER_ACCT
>>>> 222 CRED_ACQ
>>>> 220 LOGIN
>>>> 220 CRED_REFR
>>>> 218 USER_END
>>>> 218 CRED_DISP
>>>> 46 USER_LOGIN
>>>> 12 EXECVE
>>>> 4 USER_AUTH
>>>> 2 CRYPTO_SESSION
>>>> 1 USER_ROLE_CHANGE
>>>> 1 USER_CMD
>>>> 1 SERVICE_STOP
>>>> 1 SERVICE_START
>>>> 1 BPRM_FCAPS
>>>>
>>>> so we blocked type PATH in audit.rules
>>>
>>> This is not the right thing to do. If a security officer asks what is
>>> being
>>> accessed, you got rid of the information. The right thing is to figure out
>>> which rule is being hit and see if something is wrong with it. For
>>> example, I have seen people do this:
>>>
>>> -a always,exit -S open,openat -F exit=-EPERM
>>>
>>> The problem is that they did not restrict the rule an architecture and
>>> they
>>> were getting lots of events for the wrong syscall. I've also seen people
>>> add -F success 0 to an open syscall. This also results in a large number
>>> of events.
>>>
>>> So, I'd recommend making sure all rules have keys added and the running
>>> the
>>> key summary report to see what rule needs inspection.
>>>
>>> If you find the rule that's causing the problem and you want an opinion,
>>> send it to the mail list.
>>>
>>> -Steve
>>>
>>>> But we are still seeing 100K of dropped/suppressed messages.
>>>>
>>>> Note: systemloglevel = INFO
>>>>
>>>> Centos 7 1708 3.10.0-693.2.2.el7.x86_64
>>>>
>>>> systemd.x86_64 219-42.el7_4.1
>>>>
>>>>
>>>> Now we are required to have full audit rules and does this look like at
>>>> rate limiting issue or an issue of journal not able to handle the
>>>> traffic to logging?
>>>>
>>>> Error we are seeing from services that have silently failed, in this
>>>> case glassfish..
>>>>
>>>> systemctl status -l glassfish
>>>> ● glassfish.service - SYSV: GlassFish start and stop daemon
>>>>
>>>> Loaded: loaded (/etc/rc.d/init.d/glassfish; bad; vendor preset:
>>>> disabled)
>>>>
>>>> Active: active (exited) since Tue 2017-09-26 20:01:36 UTC; 5 days ago
>>>> Docs:
>>>> man:systemd-sysv-generator(8)
>>>>
>>>> Process: 1328 ExecStart=/etc/rc.d/init.d/glassfish start (code=exited,
>>>>
>>>> status=0/SUCCESS)
>>>>
>>>> Warning: Journal has been rotated since unit was started. Log output is
>>>> incomplete or unavailable.
>>>>
>>>> Eventually glassfish will fail but it wont kill the service so we never
>>>> get an nms service down trap from the OID.
>>>>
>>>> Please let me know if further info is needed or if certain limits need
>>>> to be adjusted.
>>>>
>>>> Thanks,
>>>> Brad Zynda
>>>>
>>>>
>>>> --
>>>> Linux-audit mailing list
>>>> Linux-audit@redhat.com
>>>> https://www.redhat.com/mailman/listinfo/linux-audit
>
>
>
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-17 17:13 ` Brad Zynda
@ 2017-10-18 15:14 ` Brad Zynda
2017-10-18 15:40 ` Steve Grubb
0 siblings, 1 reply; 15+ messages in thread
From: Brad Zynda @ 2017-10-18 15:14 UTC (permalink / raw)
To: Steve Grubb; +Cc: linux-audit
Hey Steve,
Here is an output from the server with PATH audit type re-allowed
(everything back to normal):
Key Summary Report
===========================
total key
===========================
6019 perm_mod
3878 delete
964 access
96 privileged
57 time-change
51 session
41 modules
20 logins
6 system-locale
5 identity
2 mounts
2 scope
2 actions
1 MAC-policy
Now this is probably not a peak result but I have come across 2 questions..
1. I wanted to cron this and email results but get, verified path sbin:
Key Summary Report
===========================
total key
===========================
<no events of interest were found>
2. If it ends up being perm_mod as the high count what is the next step
to identify the rule in question?
Thanks,
Brad
On 10/17/2017 01:13 PM, Brad Zynda wrote:
> Hi Steve,
>
> Thanks for pointing me in the right direction and including the 2 year
> old ticket to reference ;)
>
> I will see about getting the audit.socket masked if it is allowed under
> FIPS/NIST.
>
> Thanks again,
> Brad
>
>
> On 10/17/2017 12:25 PM, Steve Grubb wrote:
>> On Tuesday, October 17, 2017 11:40:12 AM EDT Brad Zynda wrote:
>>> Hey Steve,
>>>
>>> No problem you guys are busy with updates..
>>>
>>> So I kind of stepped into a known issue with a current disagreement
>>> between the 2 maintainers?
>>
>> Its not a disagreement. Its systemd wants to do everything. Its a crond/
>> xinetd/syslogd/auditd/core dump collector/udev/login service/fstab/fs
>> automounter/container manager/file system monitor/resource manager/daemon
>> watchdog and oh by the way, it does init.
>>
>>
>>> what can be done to resolve this going
>>> forward as it is killing services in production environments?
>>
>> End users have to take the situation into their own hands. There are
>> configuration knobs for a reason. More info here:
>>
>> https://bugzilla.redhat.com/show_bug.cgi?id=1227379
>>
>>
>>> I agree with the need not to remove auditing as this is a slippery slope
>>> and should not occur but the decision was based on little documentation
>>> in regards to the problem and loss of service, I will look at further
>>> checking in hopes to find the specific rule. Though I think the latter
>>> to fix the issue is the appropriate avenue.
>>
>> Figuring out which rule is triggering is the best solution. It may turn out
>> you just have a busy system. But most of the time its a bad rule.
>>
>>> The rules have been put in place across many organizations that check
>>> with tools like CIS-CAT and OSCAP, so a lot of rules and a point of
>>> possible single failure.
>>
>> They make mistakes, too.
>>
>>> In regards to the audit.socket what is the expected outcome of masking
>>> this service?
>>
>> The expected outcome is that journald stops getting audit records. It doesn't
>> solve the problem of why you are getting so many events. Fixing the rule does
>> that.
>>
>> -Steve
>>
>>> On 10/17/2017 11:25 AM, Steve Grubb wrote:
>>>> Hello,
>>>>
>>>> I apologize for the late reply...just found the message.
>>>>
>>>> On Monday, October 2, 2017 1:30:19 PM EDT Brad Zynda wrote:
>>>>> I am sending along an issue brought to the systemd-journald dev list
>>>>> initially:
>>>>>
>>>>> On 10/02/2017 11:40 AM, Lennart Poettering wrote:
>>>>>> On Mo, 02.10.17 11:25, Brad Zynda (bradley.v.zynda@nasa.gov) wrote:
>>>>>>> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
>>>>>>> from /system.slice/auditd.service
>>>>>>
>>>>>> The question is: why does auditd even log to the journal?
>>>>
>>>> It doesn't. I have had many arguments with the systemd people about
>>>> polluting syslog with audit events. If we wanted audit events there, we
>>>> would have wrote them there. The journal is listening on a multicast
>>>> audit socket that was created just for them and using a posix capability
>>>> that was created just for them. And journal also turns on auditing even
>>>> if you didn't want it. In short, they have, with intention, created your
>>>> problem.
>>>>
>>>>>>> Now we are required to have full audit rules and does this look like at
>>>>>>> rate limiting issue or an issue of journal not able to handle the
>>>>>>> traffic to logging?
>>>>>>
>>>>>> journald detected that it got flooded with too many messages in too
>>>>>> short a time from auditd. if this happens then something is almost
>>>>>> certainly off with auditd, as auditd is not supposed to flood journald
>>>>>> with messages, after all it maintains its own auditing log database.
>>>>
>>>> No...that's the way it works. If you want the audit stream, you have to be
>>>> able to handle it. My suggestion is that we have a separation of duties.
>>>> Auditd has audit events, journal has syslog. Besides, mixing audit and
>>>> syslog data means the security officer and system admin roles have been
>>>> combined. I think there is an audit.socket unit file that can be masked.
>>>>
>>>>>> Please ping the auditd folks for help
>>>>
>>>> They created the problem of audit events in syslog. That said, its been my
>>>> experience that whenever you get lots of events, there may be something
>>>> wrong with your rules.
>>>>
>>>> The normal technique to figure out what wrong is to run aureport --summary
>>>> --key during the time range of the flood to see what rule is triggering.
>>>> Then we can look at that rule to see if there's something wrong with it.
>>>>
>>>> More below...
>>>>
>>>>> Hey Everyone,
>>>>>
>>>>> Not sure if this is a bug so:
>>>>>
>>>>> systemctl status -l systemd-journald.service
>>>>> ● systemd-journald.service - Journal Service
>>>>>
>>>>> Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service;
>>>>>
>>>>> static; vendor preset: disabled)
>>>>>
>>>>> Active: active (running) since Tue 2017-09-26 20:01:16 UTC; 5 days ago
>>>>>
>>>>> Docs: man:systemd-journald.service(8)
>>>>>
>>>>> man:journald.conf(5)
>>>>>
>>>>> Main PID: 565 (systemd-journal)
>>>>>
>>>>> Status: "Processing requests..."
>>>>> CGroup: /system.slice/systemd-journald.service
>>>>>
>>>>> └─565 /usr/lib/systemd/systemd-journald
>>>>>
>>>>> Sep 28 13:50:03 server systemd-journal[565]: Suppressed 73244 messages
>>>>> from /system.slice/auditd.service
>>>>> Sep 28 13:51:03 server systemd-journal[565]: Suppressed 98979 messages
>>>>> from /system.slice/auditd.service
>>>>> Sep 28 13:52:03 server systemd-journal[565]: Suppressed 109433 messages
>>>>> from /system.slice/auditd.service
>>>>> Sep 28 13:53:03 server systemd-journal[565]: Suppressed 99788 messages
>>>>> from /system.slice/auditd.service
>>>>> Sep 28 13:54:03 server systemd-journal[565]: Suppressed 111605 messages
>>>>> from /system.slice/auditd.service
>>>>> Sep 28 13:55:03 server systemd-journal[565]: Suppressed 111591 messages
>>>>> from /system.slice/auditd.service
>>>>> Sep 28 13:56:03 server systemd-journal[565]: Suppressed 107947 messages
>>>>> from /system.slice/auditd.service
>>>>> Sep 28 13:57:51 server systemd-journal[565]: Suppressed 32760 messages
>>>>> from /system.slice/auditd.service
>>>>> Sep 28 17:21:40 server systemd-journal[565]: Suppressed 210 messages
>>>>> from /system.slice/auditd.service
>>>>> Oct 01 02:16:01 server systemd-journal[565]: Suppressed 1333 messages
>>>>> from /system.slice/auditd.service
>>>>>
>>>>> journalctl --verify
>>>>> PASS: /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system.journal
>>>>> PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-000000000097f6c7-0005596b745b4d1c.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-000000000096a587-00055966f35ae59a.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-00000000009554f1-000559629c4cdb7e.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-0000000000940591-0005595e1811a2d1.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-000000000092b500-00055959f2de5ede.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-0000000000916479-0005595573137b74.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-0000000000901337-00055950d80cc3d8.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-00000000008ec2fb-0005594cad14b07a.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-00000000008d7373-0005594838683e58.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-00000000008c238e-00055943fe2072e3.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-00000000008ad1d9-0005593ff64a4f69.journal PASS:
>>>>> /run/log/journal/d28b0080ffe0432a974f36e4fb4bfa9b/system@0d49221d68d04ef0
>>>>> b95 d8203c5e96a46-0000000000897f32-0005593e18c5758b.journal
>>>>>
>>>>>
>>>>> journalctl --disk-usage
>>>>> Archived and active journals take up 1.1G on disk.
>>>>>
>>>>>
>>>>> Initially we saw:
>>>>> 16733 PATH
>>>>> 5070 SYSCALL
>>>>> 5024 CWD
>>>>> 3765 AVC
>>>>> 323 CRYPTO_KEY_USER
>>>>> 223 USER_START
>>>>> 222 USER_ACCT
>>>>> 222 CRED_ACQ
>>>>> 220 LOGIN
>>>>> 220 CRED_REFR
>>>>> 218 USER_END
>>>>> 218 CRED_DISP
>>>>> 46 USER_LOGIN
>>>>> 12 EXECVE
>>>>> 4 USER_AUTH
>>>>> 2 CRYPTO_SESSION
>>>>> 1 USER_ROLE_CHANGE
>>>>> 1 USER_CMD
>>>>> 1 SERVICE_STOP
>>>>> 1 SERVICE_START
>>>>> 1 BPRM_FCAPS
>>>>>
>>>>> so we blocked type PATH in audit.rules
>>>>
>>>> This is not the right thing to do. If a security officer asks what is
>>>> being
>>>> accessed, you got rid of the information. The right thing is to figure out
>>>> which rule is being hit and see if something is wrong with it. For
>>>> example, I have seen people do this:
>>>>
>>>> -a always,exit -S open,openat -F exit=-EPERM
>>>>
>>>> The problem is that they did not restrict the rule an architecture and
>>>> they
>>>> were getting lots of events for the wrong syscall. I've also seen people
>>>> add -F success 0 to an open syscall. This also results in a large number
>>>> of events.
>>>>
>>>> So, I'd recommend making sure all rules have keys added and the running
>>>> the
>>>> key summary report to see what rule needs inspection.
>>>>
>>>> If you find the rule that's causing the problem and you want an opinion,
>>>> send it to the mail list.
>>>>
>>>> -Steve
>>>>
>>>>> But we are still seeing 100K of dropped/suppressed messages.
>>>>>
>>>>> Note: systemloglevel = INFO
>>>>>
>>>>> Centos 7 1708 3.10.0-693.2.2.el7.x86_64
>>>>>
>>>>> systemd.x86_64 219-42.el7_4.1
>>>>>
>>>>>
>>>>> Now we are required to have full audit rules and does this look like at
>>>>> rate limiting issue or an issue of journal not able to handle the
>>>>> traffic to logging?
>>>>>
>>>>> Error we are seeing from services that have silently failed, in this
>>>>> case glassfish..
>>>>>
>>>>> systemctl status -l glassfish
>>>>> ● glassfish.service - SYSV: GlassFish start and stop daemon
>>>>>
>>>>> Loaded: loaded (/etc/rc.d/init.d/glassfish; bad; vendor preset:
>>>>> disabled)
>>>>>
>>>>> Active: active (exited) since Tue 2017-09-26 20:01:36 UTC; 5 days ago
>>>>> Docs:
>>>>> man:systemd-sysv-generator(8)
>>>>>
>>>>> Process: 1328 ExecStart=/etc/rc.d/init.d/glassfish start (code=exited,
>>>>>
>>>>> status=0/SUCCESS)
>>>>>
>>>>> Warning: Journal has been rotated since unit was started. Log output is
>>>>> incomplete or unavailable.
>>>>>
>>>>> Eventually glassfish will fail but it wont kill the service so we never
>>>>> get an nms service down trap from the OID.
>>>>>
>>>>> Please let me know if further info is needed or if certain limits need
>>>>> to be adjusted.
>>>>>
>>>>> Thanks,
>>>>> Brad Zynda
>>>>>
>>>>>
>>>>> --
>>>>> Linux-audit mailing list
>>>>> Linux-audit@redhat.com
>>>>> https://www.redhat.com/mailman/listinfo/linux-audit
>>
>>
>>
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-18 15:14 ` Brad Zynda
@ 2017-10-18 15:40 ` Steve Grubb
2017-10-18 16:13 ` Brad Zynda
0 siblings, 1 reply; 15+ messages in thread
From: Steve Grubb @ 2017-10-18 15:40 UTC (permalink / raw)
To: Brad Zynda; +Cc: linux-audit
On Wednesday, October 18, 2017 11:14:31 AM EDT Brad Zynda wrote:
> Here is an output from the server with PATH audit type re-allowed
> (everything back to normal):
>
> Key Summary Report
> ===========================
> total key
> ===========================
> 6019 perm_mod
> 3878 delete
> 964 access
> 96 privileged
> 57 time-change
> 51 session
> 41 modules
> 20 logins
> 6 system-locale
> 5 identity
> 2 mounts
> 2 scope
> 2 actions
> 1 MAC-policy
>
> Now this is probably not a peak result but I have come across 2 questions..
>
> 1. I wanted to cron this and email results but get, verified path sbin:
>
> Key Summary Report
> ===========================
> total key
> ===========================
> <no events of interest were found>
This is a well known problem. From aureport man page:
--input-logs
Use the log file location from auditd.conf as input for analy‐
sis. This is needed if you are using aureport from a cron job.
ausearch/report can be piped to by stdin. This takes priority over the logs.
Cron uses pipes for all 3 descriptors. Therefore you have to tell them to
ignore what they are seeing and just use the logs.
> 2. If it ends up being perm_mod as the high count what is the next step
> to identify the rule in question?
grep perm_mod /etc/audit/audit.rules
delete also looks excessive.
-Steve
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-18 15:40 ` Steve Grubb
@ 2017-10-18 16:13 ` Brad Zynda
2017-10-18 16:26 ` Steve Grubb
0 siblings, 1 reply; 15+ messages in thread
From: Brad Zynda @ 2017-10-18 16:13 UTC (permalink / raw)
To: Steve Grubb; +Cc: linux-audit
On 10/18/2017 11:40 AM, Steve Grubb wrote:
> On Wednesday, October 18, 2017 11:14:31 AM EDT Brad Zynda wrote:
>> Here is an output from the server with PATH audit type re-allowed
>> (everything back to normal):
>>
>> Key Summary Report
>> ===========================
>> total key
>> ===========================
>> 6019 perm_mod
>> 3878 delete
>> 964 access
>> 96 privileged
>> 57 time-change
>> 51 session
>> 41 modules
>> 20 logins
>> 6 system-locale
>> 5 identity
>> 2 mounts
>> 2 scope
>> 2 actions
>> 1 MAC-policy
>>
>> Now this is probably not a peak result but I have come across 2 questions..
>>
>> 1. I wanted to cron this and email results but get, verified path sbin:
>>
>> Key Summary Report
>> ===========================
>> total key
>> ===========================
>> <no events of interest were found>
>
> This is a well known problem. From aureport man page:
>
> --input-logs
> Use the log file location from auditd.conf as input for analy‐
> sis. This is needed if you are using aureport from a cron job.
>
> ausearch/report can be piped to by stdin. This takes priority over the logs.
> Cron uses pipes for all 3 descriptors. Therefore you have to tell them to
> ignore what they are seeing and just use the logs.
>
>> 2. If it ends up being perm_mod as the high count what is the next step
>> to identify the rule in question?
>
> grep perm_mod /etc/audit/audit.rules
>
> delete also looks excessive.
>
> -Steve
>
Yep input-logs fit the bill.
So now you have to comment out a rule at a time and watch for
usage/count to fall?
Also if I wanted to grep and compare those numbers and alert with an
email what would be the magic number to threshold with in a gt statement
(500, 1000, etc.)?
Thanks,
Brad
--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-18 16:13 ` Brad Zynda
@ 2017-10-18 16:26 ` Steve Grubb
2017-10-18 16:32 ` Brad Zynda
0 siblings, 1 reply; 15+ messages in thread
From: Steve Grubb @ 2017-10-18 16:26 UTC (permalink / raw)
To: Brad Zynda; +Cc: linux-audit
On Wednesday, October 18, 2017 12:13:13 PM EDT Brad Zynda wrote:
> So now you have to comment out a rule at a time and watch for
> usage/count to fall?
Well, I am certain that commenting out that rule will drop the count. But the
question more is why is that rule being triggered. One thing you could do is
post the rule to the mail list if you think it might be formed wrong. But you
might also want to see whay its being triggered by doing something like
ausearch --start today -k perm_mod --raw | aureport --summary --file -i
ausearch --start today -k perm_mod --raw | aureport --summary -x -i
ausearch --start today -k perm_mod --raw | aureport --summary --syscall -i
> Also if I wanted to grep and compare those numbers and alert with an
> email what would be the magic number to threshold with in a gt statement
> (500, 1000, etc.)?
That's a bit harder. You'd want a sliding window of time. Assuming your cron
job runs once an hour and a US locale, you'd do something like this:
aureport --start `date -d '1 hour ago' "+%m/%d/%Y %H:%M:%S"` --key --summary
--input-logs
I don't know what the best threshold would be because its workload dependent.
If you wanted to see things visualized, I'd try playing with the data in R.
http://security-plus-data-science.blogspot.com/2017/03/bar-charts.html
http://security-plus-data-science.blogspot.com/2017/03/heatmaps.html
That assumes you have a recent audit package (2.7 or higher) and RStudio.
-Steve
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-18 16:26 ` Steve Grubb
@ 2017-10-18 16:32 ` Brad Zynda
2017-10-18 23:27 ` Steve Grubb
0 siblings, 1 reply; 15+ messages in thread
From: Brad Zynda @ 2017-10-18 16:32 UTC (permalink / raw)
To: Steve Grubb; +Cc: linux-audit
On 10/18/2017 12:26 PM, Steve Grubb wrote:
> On Wednesday, October 18, 2017 12:13:13 PM EDT Brad Zynda wrote:
>> So now you have to comment out a rule at a time and watch for
>> usage/count to fall?
>
> Well, I am certain that commenting out that rule will drop the count. But the
> question more is why is that rule being triggered. One thing you could do is
> post the rule to the mail list if you think it might be formed wrong. But you
> might also want to see whay its being triggered by doing something like
>
> ausearch --start today -k perm_mod --raw | aureport --summary --file -i
>
> ausearch --start today -k perm_mod --raw | aureport --summary -x -i
>
> ausearch --start today -k perm_mod --raw | aureport --summary --syscall -i
>
>> Also if I wanted to grep and compare those numbers and alert with an
>> email what would be the magic number to threshold with in a gt statement
>> (500, 1000, etc.)?
>
> That's a bit harder. You'd want a sliding window of time. Assuming your cron
> job runs once an hour and a US locale, you'd do something like this:
>
> aureport --start `date -d '1 hour ago' "+%m/%d/%Y %H:%M:%S"` --key --summary
> --input-logs
>
> I don't know what the best threshold would be because its workload dependent.
> If you wanted to see things visualized, I'd try playing with the data in R.
>
> http://security-plus-data-science.blogspot.com/2017/03/bar-charts.html
> http://security-plus-data-science.blogspot.com/2017/03/heatmaps.html
>
> That assumes you have a recent audit package (2.7 or higher) and RStudio.
>
> -Steve
>
Here are the rules:
grep perm_mod /etc/audit/audit.rules
-a always,exit -F arch=b64 -S chmod -S fchmod -S fchmodat -F auid>=1000
-F auid!=4294967295 -k perm_mod
-a always,exit -F arch=b32 -S chmod -S fchmod -S fchmodat -F auid>=1000
-F auid!=4294967295 -k perm_mod
-a always,exit -F arch=b64 -S chown -S fchown -S fchownat -S lchown -F
auid>=1000 -F auid!=4294967295 -k perm_mod
-a always,exit -F arch=b32 -S chown -S fchown -S fchownat -S lchown -F
auid>=1000 -F auid!=4294967295 -k perm_mod
-a always,exit -F arch=b64 -S setxattr -S lsetxattr -S fsetxattr -S
removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
auid!=4294967295 -k perm_mod
-a always,exit -F arch=b32 -S setxattr -S lsetxattr -S fsetxattr -S
removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
auid!=4294967295 -k perm_mod
grep delete /etc/audit/audit.rules
-a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat
-F auid>=1000 -F auid!=4294967295 -k delete
-a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat
-F auid>=1000 -F auid!=4294967295 -k delete
-a always,exit -F arch=b64 -S init_module -S delete_module -k modules
-a always,exit -F arch=b32 -S init_module -S delete_module -k modules
Thanks,
Brad
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-18 16:32 ` Brad Zynda
@ 2017-10-18 23:27 ` Steve Grubb
2017-10-19 17:08 ` Brad Zynda
0 siblings, 1 reply; 15+ messages in thread
From: Steve Grubb @ 2017-10-18 23:27 UTC (permalink / raw)
To: Brad Zynda; +Cc: linux-audit
On Wednesday, October 18, 2017 12:32:15 PM EDT Brad Zynda wrote:
> On 10/18/2017 12:26 PM, Steve Grubb wrote:
> > On Wednesday, October 18, 2017 12:13:13 PM EDT Brad Zynda wrote:
> >> So now you have to comment out a rule at a time and watch for
> >> usage/count to fall?
> >
> > Well, I am certain that commenting out that rule will drop the count. But
> > the question more is why is that rule being triggered. One thing you
> > could do is post the rule to the mail list if you think it might be
> > formed wrong. But you might also want to see whay its being triggered by
> > doing something like
> >
> > ausearch --start today -k perm_mod --raw | aureport --summary --file -i
> >
> > ausearch --start today -k perm_mod --raw | aureport --summary -x -i
> >
> > ausearch --start today -k perm_mod --raw | aureport --summary --syscall -i
> >
> >> Also if I wanted to grep and compare those numbers and alert with an
> >> email what would be the magic number to threshold with in a gt statement
> >> (500, 1000, etc.)?
> >
> > That's a bit harder. You'd want a sliding window of time. Assuming your
> > cron job runs once an hour and a US locale, you'd do something like this:
> >
> > aureport --start `date -d '1 hour ago' "+%m/%d/%Y %H:%M:%S"` --key
> > --summary --input-logs
> >
> > I don't know what the best threshold would be because its workload
> > dependent. If you wanted to see things visualized, I'd try playing with
> > the data in R.
> >
> > http://security-plus-data-science.blogspot.com/2017/03/bar-charts.html
> > http://security-plus-data-science.blogspot.com/2017/03/heatmaps.html
> >
> > That assumes you have a recent audit package (2.7 or higher) and RStudio.
> >
> > -Steve
>
> Here are the rules:
>
> grep perm_mod /etc/audit/audit.rules
> -a always,exit -F arch=b64 -S chmod -S fchmod -S fchmodat -F auid>=1000
> -F auid!=4294967295 -k perm_mod
> -a always,exit -F arch=b32 -S chmod -S fchmod -S fchmodat -F auid>=1000
> -F auid!=4294967295 -k perm_mod
> -a always,exit -F arch=b64 -S chown -S fchown -S fchownat -S lchown -F
> auid>=1000 -F auid!=4294967295 -k perm_mod
> -a always,exit -F arch=b32 -S chown -S fchown -S fchownat -S lchown -F
> auid>=1000 -F auid!=4294967295 -k perm_mod
> -a always,exit -F arch=b64 -S setxattr -S lsetxattr -S fsetxattr -S
> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
> auid!=4294967295 -k perm_mod
> -a always,exit -F arch=b32 -S setxattr -S lsetxattr -S fsetxattr -S
> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
> auid!=4294967295 -k perm_mod
>
> grep delete /etc/audit/audit.rules
> -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat
> -F auid>=1000 -F auid!=4294967295 -k delete
> -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat
> -F auid>=1000 -F auid!=4294967295 -k delete
> -a always,exit -F arch=b64 -S init_module -S delete_module -k modules
> -a always,exit -F arch=b32 -S init_module -S delete_module -k modules
These rules are well formed. Meaning no obvious holes that would cause
unintended events. The other ausearch/aureport commands I gave you should show
you what is causing the events and to which files. This information may be
used to create some kind of "never" rule that limits what gets audited. If you
do create some exclusion rule, it needs to be above the perm_mod rules because
audit is a "first match wins" system.
-Steve
-Steve
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-18 23:27 ` Steve Grubb
@ 2017-10-19 17:08 ` Brad Zynda
2017-10-19 20:13 ` Steve Grubb
0 siblings, 1 reply; 15+ messages in thread
From: Brad Zynda @ 2017-10-19 17:08 UTC (permalink / raw)
To: Steve Grubb; +Cc: linux-audit
On 10/18/2017 07:27 PM, Steve Grubb wrote:
> On Wednesday, October 18, 2017 12:32:15 PM EDT Brad Zynda wrote:
>> On 10/18/2017 12:26 PM, Steve Grubb wrote:
>>> On Wednesday, October 18, 2017 12:13:13 PM EDT Brad Zynda wrote:
>>>> So now you have to comment out a rule at a time and watch for
>>>> usage/count to fall?
>>>
>>> Well, I am certain that commenting out that rule will drop the count. But
>>> the question more is why is that rule being triggered. One thing you
>>> could do is post the rule to the mail list if you think it might be
>>> formed wrong. But you might also want to see whay its being triggered by
>>> doing something like
>>>
>>> ausearch --start today -k perm_mod --raw | aureport --summary --file -i
>>>
>>> ausearch --start today -k perm_mod --raw | aureport --summary -x -i
>>>
>>> ausearch --start today -k perm_mod --raw | aureport --summary --syscall -i
>>>
>>>> Also if I wanted to grep and compare those numbers and alert with an
>>>> email what would be the magic number to threshold with in a gt statement
>>>> (500, 1000, etc.)?
>>>
>>> That's a bit harder. You'd want a sliding window of time. Assuming your
>>> cron job runs once an hour and a US locale, you'd do something like this:
>>>
>>> aureport --start `date -d '1 hour ago' "+%m/%d/%Y %H:%M:%S"` --key
>>> --summary --input-logs
>>>
>>> I don't know what the best threshold would be because its workload
>>> dependent. If you wanted to see things visualized, I'd try playing with
>>> the data in R.
>>>
>>> http://security-plus-data-science.blogspot.com/2017/03/bar-charts.html
>>> http://security-plus-data-science.blogspot.com/2017/03/heatmaps.html
>>>
>>> That assumes you have a recent audit package (2.7 or higher) and RStudio.
>>>
>>> -Steve
>>
>> Here are the rules:
>>
>> grep perm_mod /etc/audit/audit.rules
>> -a always,exit -F arch=b64 -S chmod -S fchmod -S fchmodat -F auid>=1000
>> -F auid!=4294967295 -k perm_mod
>> -a always,exit -F arch=b32 -S chmod -S fchmod -S fchmodat -F auid>=1000
>> -F auid!=4294967295 -k perm_mod
>> -a always,exit -F arch=b64 -S chown -S fchown -S fchownat -S lchown -F
>> auid>=1000 -F auid!=4294967295 -k perm_mod
>> -a always,exit -F arch=b32 -S chown -S fchown -S fchownat -S lchown -F
>> auid>=1000 -F auid!=4294967295 -k perm_mod
>> -a always,exit -F arch=b64 -S setxattr -S lsetxattr -S fsetxattr -S
>> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
>> auid!=4294967295 -k perm_mod
>> -a always,exit -F arch=b32 -S setxattr -S lsetxattr -S fsetxattr -S
>> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
>> auid!=4294967295 -k perm_mod
>>
>> grep delete /etc/audit/audit.rules
>> -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat
>> -F auid>=1000 -F auid!=4294967295 -k delete
>> -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat
>> -F auid>=1000 -F auid!=4294967295 -k delete
>> -a always,exit -F arch=b64 -S init_module -S delete_module -k modules
>> -a always,exit -F arch=b32 -S init_module -S delete_module -k modules
>
> These rules are well formed. Meaning no obvious holes that would cause
> unintended events. The other ausearch/aureport commands I gave you should show
> you what is causing the events and to which files. This information may be
> used to create some kind of "never" rule that limits what gets audited. If you
> do create some exclusion rule, it needs to be above the perm_mod rules because
> audit is a "first match wins" system.
>
> -Steve
>
> -Steve
>
>
Here is a peak report (at least in the last 24 hours) didnt include the
file summaries as that would make this email HUGE:
Key Summary Report
===========================
total key
===========================
8170 perm_mod
5390 delete
1073 access
56 time-change
26 session
12 privileged
7 logins
Syscall Summary Report
==========================
total syscall
==========================
4250 fchmodat
1613 chmod
831 fchmod
521 fchown
97 chown
12 setxattr
Syscall Summary Report
==========================
total syscall
==========================
2887 unlink
2189 rename
186 unlinkat
so from the list the top 2 in each perm_mod and delete from the above
list seem to be the culprits..
Thanks,
Brad
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-19 17:08 ` Brad Zynda
@ 2017-10-19 20:13 ` Steve Grubb
2017-12-01 13:17 ` Brad Zynda
0 siblings, 1 reply; 15+ messages in thread
From: Steve Grubb @ 2017-10-19 20:13 UTC (permalink / raw)
To: Brad Zynda; +Cc: linux-audit
On Thursday, October 19, 2017 1:08:22 PM EDT Brad Zynda wrote:
> >> grep perm_mod /etc/audit/audit.rules
> >> -a always,exit -F arch=b64 -S chmod -S fchmod -S fchmodat -F auid>=1000
> >> -F auid!=4294967295 -k perm_mod
> >> -a always,exit -F arch=b32 -S chmod -S fchmod -S fchmodat -F auid>=1000
> >> -F auid!=4294967295 -k perm_mod
> >> -a always,exit -F arch=b64 -S chown -S fchown -S fchownat -S lchown -F
> >> auid>=1000 -F auid!=4294967295 -k perm_mod
> >> -a always,exit -F arch=b32 -S chown -S fchown -S fchownat -S lchown -F
> >> auid>=1000 -F auid!=4294967295 -k perm_mod
> >> -a always,exit -F arch=b64 -S setxattr -S lsetxattr -S fsetxattr -S
> >> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
> >> auid!=4294967295 -k perm_mod
> >> -a always,exit -F arch=b32 -S setxattr -S lsetxattr -S fsetxattr -S
> >> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
> >> auid!=4294967295 -k perm_mod
> >>
> >> grep delete /etc/audit/audit.rules
> >> -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat
> >> -F auid>=1000 -F auid!=4294967295 -k delete
> >> -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat
> >> -F auid>=1000 -F auid!=4294967295 -k delete
> >> -a always,exit -F arch=b64 -S init_module -S delete_module -k modules
> >> -a always,exit -F arch=b32 -S init_module -S delete_module -k modules
> >
> > These rules are well formed. Meaning no obvious holes that would cause
> > unintended events. The other ausearch/aureport commands I gave you should
> > show you what is causing the events and to which files. This information
> > may be used to create some kind of "never" rule that limits what gets
> > audited. If you do create some exclusion rule, it needs to be above the
> > perm_mod rules because audit is a "first match wins" system.
> >
> > -Steve
> >
> > -Steve
>
> Here is a peak report (at least in the last 24 hours) didnt include the
> file summaries as that would make this email HUGE:
Well, the idea is to look for something that's getting hit a lot. What it
sounds like is that things are getting deleted and modified quite a bit all
over the place. Does the executable report show a pattern such as one
application doing a lot? For example, with the rule you have, doing a yum
update will delete a whole lot of stuff and modify a whole lot of stuff.
Its possible to put exceptions in the rules so that one program does not flood
the logs. But looking at the quantities below, the audit system can easily
handle that.
Its also possible to exclude directories from auditing if the pattern is that
you have a daemon receiving and modifying files and then deleting them. You
should look at the executables & files and see if you can do with auditing
what they are doing because its not interesting.
If this is causing you problems on the journald side where its causing other
tasks to fail. Then I'd break the link between auditd and journald. The amount
of event you show is highish but well within range of what auditd can do. Just
make sure flush is set to incremental_async and freq is 100 or 200. You should
be OK.
-Steve
> Key Summary Report
> ===========================
> total key
> ===========================
> 8170 perm_mod
> 5390 delete
> 1073 access
> 56 time-change
> 26 session
> 12 privileged
> 7 logins
>
>
> Syscall Summary Report
> ==========================
> total syscall
> ==========================
> 4250 fchmodat
> 1613 chmod
> 831 fchmod
> 521 fchown
> 97 chown
> 12 setxattr
>
>
> Syscall Summary Report
> ==========================
> total syscall
> ==========================
> 2887 unlink
> 2189 rename
> 186 unlinkat
>
>
> so from the list the top 2 in each perm_mod and delete from the above
> list seem to be the culprits..
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-10-19 20:13 ` Steve Grubb
@ 2017-12-01 13:17 ` Brad Zynda
2017-12-01 13:54 ` Steve Grubb
0 siblings, 1 reply; 15+ messages in thread
From: Brad Zynda @ 2017-12-01 13:17 UTC (permalink / raw)
To: Steve Grubb; +Cc: linux-audit
Hey Steve,
Just wanted to follow up on this and say we are still seeing services
across the board that have:
Warning: Journal has been rotated since unit was started. Log output is
incomplete or unavailable
basically created a script to check all unit file services/targets and
grep status -l for Journal, it is effecting a large range of
service.target's, service.service's and service.socket's
If we restart the service or reboot we no longer see those messages
about journal and everything appears to run as expected.
Thanks,
Brad
On 10/19/2017 04:13 PM, Steve Grubb wrote:
> On Thursday, October 19, 2017 1:08:22 PM EDT Brad Zynda wrote:
>>>> grep perm_mod /etc/audit/audit.rules
>>>> -a always,exit -F arch=b64 -S chmod -S fchmod -S fchmodat -F auid>=1000
>>>> -F auid!=4294967295 -k perm_mod
>>>> -a always,exit -F arch=b32 -S chmod -S fchmod -S fchmodat -F auid>=1000
>>>> -F auid!=4294967295 -k perm_mod
>>>> -a always,exit -F arch=b64 -S chown -S fchown -S fchownat -S lchown -F
>>>> auid>=1000 -F auid!=4294967295 -k perm_mod
>>>> -a always,exit -F arch=b32 -S chown -S fchown -S fchownat -S lchown -F
>>>> auid>=1000 -F auid!=4294967295 -k perm_mod
>>>> -a always,exit -F arch=b64 -S setxattr -S lsetxattr -S fsetxattr -S
>>>> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
>>>> auid!=4294967295 -k perm_mod
>>>> -a always,exit -F arch=b32 -S setxattr -S lsetxattr -S fsetxattr -S
>>>> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
>>>> auid!=4294967295 -k perm_mod
>>>>
>>>> grep delete /etc/audit/audit.rules
>>>> -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat
>>>> -F auid>=1000 -F auid!=4294967295 -k delete
>>>> -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat
>>>> -F auid>=1000 -F auid!=4294967295 -k delete
>>>> -a always,exit -F arch=b64 -S init_module -S delete_module -k modules
>>>> -a always,exit -F arch=b32 -S init_module -S delete_module -k modules
>>>
>>> These rules are well formed. Meaning no obvious holes that would cause
>>> unintended events. The other ausearch/aureport commands I gave you should
>>> show you what is causing the events and to which files. This information
>>> may be used to create some kind of "never" rule that limits what gets
>>> audited. If you do create some exclusion rule, it needs to be above the
>>> perm_mod rules because audit is a "first match wins" system.
>>>
>>> -Steve
>>>
>>> -Steve
>>
>> Here is a peak report (at least in the last 24 hours) didnt include the
>> file summaries as that would make this email HUGE:
>
> Well, the idea is to look for something that's getting hit a lot. What it
> sounds like is that things are getting deleted and modified quite a bit all
> over the place. Does the executable report show a pattern such as one
> application doing a lot? For example, with the rule you have, doing a yum
> update will delete a whole lot of stuff and modify a whole lot of stuff.
>
> Its possible to put exceptions in the rules so that one program does not flood
> the logs. But looking at the quantities below, the audit system can easily
> handle that.
>
> Its also possible to exclude directories from auditing if the pattern is that
> you have a daemon receiving and modifying files and then deleting them. You
> should look at the executables & files and see if you can do with auditing
> what they are doing because its not interesting.
>
> If this is causing you problems on the journald side where its causing other
> tasks to fail. Then I'd break the link between auditd and journald. The amount
> of event you show is highish but well within range of what auditd can do. Just
> make sure flush is set to incremental_async and freq is 100 or 200. You should
> be OK.
>
> -Steve
>
>> Key Summary Report
>> ===========================
>> total key
>> ===========================
>> 8170 perm_mod
>> 5390 delete
>> 1073 access
>> 56 time-change
>> 26 session
>> 12 privileged
>> 7 logins
>>
>>
>> Syscall Summary Report
>> ==========================
>> total syscall
>> ==========================
>> 4250 fchmodat
>> 1613 chmod
>> 831 fchmod
>> 521 fchown
>> 97 chown
>> 12 setxattr
>>
>>
>> Syscall Summary Report
>> ==========================
>> total syscall
>> ==========================
>> 2887 unlink
>> 2189 rename
>> 186 unlinkat
>>
>>
>> so from the list the top 2 in each perm_mod and delete from the above
>> list seem to be the culprits..
>
>
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Systemd Journald and audit logging causing journal issues
2017-12-01 13:17 ` Brad Zynda
@ 2017-12-01 13:54 ` Steve Grubb
0 siblings, 0 replies; 15+ messages in thread
From: Steve Grubb @ 2017-12-01 13:54 UTC (permalink / raw)
To: Brad Zynda; +Cc: linux-audit
On Friday, December 1, 2017 8:17:58 AM EST Brad Zynda wrote:
> Hey Steve,
>
> Just wanted to follow up on this and say we are still seeing services
> across the board that have:
>
> Warning: Journal has been rotated since unit was started. Log output is
> incomplete or unavailable
>
> basically created a script to check all unit file services/targets and
> grep status -l for Journal, it is effecting a large range of
> service.target's, service.service's and service.socket's
>
> If we restart the service or reboot we no longer see those messages
> about journal and everything appears to run as expected.
I have never looked at journald code and have no idea how it works or why it
cares about audit events. My advice last email was to break the link if its
causing problems.
-Steve
> On 10/19/2017 04:13 PM, Steve Grubb wrote:
> > On Thursday, October 19, 2017 1:08:22 PM EDT Brad Zynda wrote:
> >>>> grep perm_mod /etc/audit/audit.rules
> >>>> -a always,exit -F arch=b64 -S chmod -S fchmod -S fchmodat -F auid>=1000
> >>>> -F auid!=4294967295 -k perm_mod
> >>>> -a always,exit -F arch=b32 -S chmod -S fchmod -S fchmodat -F auid>=1000
> >>>> -F auid!=4294967295 -k perm_mod
> >>>> -a always,exit -F arch=b64 -S chown -S fchown -S fchownat -S lchown -F
> >>>> auid>=1000 -F auid!=4294967295 -k perm_mod
> >>>> -a always,exit -F arch=b32 -S chown -S fchown -S fchownat -S lchown -F
> >>>> auid>=1000 -F auid!=4294967295 -k perm_mod
> >>>> -a always,exit -F arch=b64 -S setxattr -S lsetxattr -S fsetxattr -S
> >>>> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
> >>>> auid!=4294967295 -k perm_mod
> >>>> -a always,exit -F arch=b32 -S setxattr -S lsetxattr -S fsetxattr -S
> >>>> removexattr -S lremovexattr -S fremovexattr -F auid>=1000 -F
> >>>> auid!=4294967295 -k perm_mod
> >>>>
> >>>> grep delete /etc/audit/audit.rules
> >>>> -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat
> >>>> -F auid>=1000 -F auid!=4294967295 -k delete
> >>>> -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat
> >>>> -F auid>=1000 -F auid!=4294967295 -k delete
> >>>> -a always,exit -F arch=b64 -S init_module -S delete_module -k modules
> >>>> -a always,exit -F arch=b32 -S init_module -S delete_module -k modules
> >>>
> >>> These rules are well formed. Meaning no obvious holes that would cause
> >>> unintended events. The other ausearch/aureport commands I gave you
> >>> should
> >>> show you what is causing the events and to which files. This information
> >>> may be used to create some kind of "never" rule that limits what gets
> >>> audited. If you do create some exclusion rule, it needs to be above the
> >>> perm_mod rules because audit is a "first match wins" system.
> >>>
> >>> -Steve
> >>>
> >>> -Steve
> >>
> >> Here is a peak report (at least in the last 24 hours) didnt include the
> >
> >> file summaries as that would make this email HUGE:
> > Well, the idea is to look for something that's getting hit a lot. What it
> > sounds like is that things are getting deleted and modified quite a bit
> > all
> > over the place. Does the executable report show a pattern such as one
> > application doing a lot? For example, with the rule you have, doing a yum
> > update will delete a whole lot of stuff and modify a whole lot of stuff.
> >
> > Its possible to put exceptions in the rules so that one program does not
> > flood the logs. But looking at the quantities below, the audit system can
> > easily handle that.
> >
> > Its also possible to exclude directories from auditing if the pattern is
> > that you have a daemon receiving and modifying files and then deleting
> > them. You should look at the executables & files and see if you can do
> > with auditing what they are doing because its not interesting.
> >
> > If this is causing you problems on the journald side where its causing
> > other tasks to fail. Then I'd break the link between auditd and journald.
> > The amount of event you show is highish but well within range of what
> > auditd can do. Just make sure flush is set to incremental_async and freq
> > is 100 or 200. You should be OK.
> >
> > -Steve
> >
> >> Key Summary Report
> >> ===========================
> >> total key
> >> ===========================
> >> 8170 perm_mod
> >> 5390 delete
> >> 1073 access
> >> 56 time-change
> >> 26 session
> >> 12 privileged
> >> 7 logins
> >>
> >>
> >> Syscall Summary Report
> >> ==========================
> >> total syscall
> >> ==========================
> >> 4250 fchmodat
> >> 1613 chmod
> >> 831 fchmod
> >> 521 fchown
> >> 97 chown
> >> 12 setxattr
> >>
> >>
> >> Syscall Summary Report
> >> ==========================
> >> total syscall
> >> ==========================
> >> 2887 unlink
> >> 2189 rename
> >> 186 unlinkat
> >>
> >>
> >> so from the list the top 2 in each perm_mod and delete from the above
> >> list seem to be the culprits..
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2017-12-01 13:54 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-02 17:30 Systemd Journald and audit logging causing journal issues Brad Zynda
2017-10-17 15:25 ` Steve Grubb
2017-10-17 15:40 ` Brad Zynda
2017-10-17 16:25 ` Steve Grubb
2017-10-17 17:13 ` Brad Zynda
2017-10-18 15:14 ` Brad Zynda
2017-10-18 15:40 ` Steve Grubb
2017-10-18 16:13 ` Brad Zynda
2017-10-18 16:26 ` Steve Grubb
2017-10-18 16:32 ` Brad Zynda
2017-10-18 23:27 ` Steve Grubb
2017-10-19 17:08 ` Brad Zynda
2017-10-19 20:13 ` Steve Grubb
2017-12-01 13:17 ` Brad Zynda
2017-12-01 13:54 ` Steve Grubb
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox