[PATCH 3/4] AUDIT: audit when fcaps increase the permitted or inheritable capabilities

Serge E. Hallyn serue at us.ibm.com
Wed Oct 22 14:14:30 UTC 2008


Quoting Andrew G. Morgan (morgan at kernel.org):
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> [s/viro at ...ok/viro at ...uk/]
> 
> Serge E. Hallyn wrote:
> >> Logging execve()s where there is only an increase in capabilities seems
> >> wrong to me. To me it seems equally important to log any event where an
> >> execve() yields pP != 0.
> > 
> > True.
> > 
> > ... except if (!issecure(SECURE_NOROOT) && uid==0) I guess?
> > 
> > And then it also might be interesting in the case where
> > (!issecure(SECURE_NOROOT) && uid==0) and pP is not full.
> 
> I guess so, although this seems like a case of being interested in a
> (unusual) non-privileged execve().

I'm not sure what you mean - but this can only happen if bits are taken
out of the capability bounding set, right?

> >>>  	rc = bprm_caps_from_vfs_caps(&vcaps, bprm);
> >>>  
> >>> +	audit_log_bprm_fcaps(bprm, &vcaps);
> >>> +
> >> When rc != 0, the execve() will fail. Is it appropriate to log in this case?
> > 
> > It might fail because fP contains bits not in pP', right?  That's
> > probably interesting to auditors.
> 
> In which case, how is the fact it didn't execute captured in the audit log?

I assume as a FAIL?  (Not sure of the exact wording in the logs)

-serge




More information about the Linux-audit mailing list