--- Steve Beattie <sbeattie(a)suse.de> wrote:
Hi,
Looking at the code for proc_loginuid_write() in
Linus' git tree, the
capability CAP_AUDIT_CONTROL is needed to write to
/proc/pid/loginuid
and generate LOGIN type records. This seems to run
counter to the
capabilities(7) manpage, which suggests that
CAP_AUDIT_CONTROL is to
"Enable and disable kernel auditing; change auditing
filter rules;
retrieve auditing status and filtering rules",
whereas CAP_AUDIT_WRITE
is to "Allow records to be written to kernel
auditing log."
Should the following patch be applied, or am I
misunderstanding something?
The latter. CAP_AUDIT_WRITE allows you to
create audit records, and that's it. It does
not allow you to change how they're managed,
which is an important aspect of the loginuid
of a process. Updating the loginuid changes
information that will go into audit records,
and that is strongly related to "filtering
rules".
It doesn't seem quite right that anything
that makes use of
pam_loginuid.so should need to be granted the
capability that allows
enabling and disabling kernel auditing or changing
filter rules.
Although the current audit system doesn't
do so (at least, I don't think it does, I
could be wrong) specifiying audit charactoristics
on a per-session basis would require that
capability.
Casey Schaufler
casey(a)schaufler-ca.com