|
NAMEdtrace_audit —
A DTrace provider for tracing
audit(4)
events
SYNOPSISaudit:event:aue_*:commit (char
*eventname, struct
audit_record *ar);
To compile this module into the kernel, place the following in your kernel configuration file:
Alternatively, to load the module at boot time, place the following line in loader.conf(5): dtaudit_load="YES" DESCRIPTIONThe DTracedtaudit provider allows users to trace events
in the kernel security auditing subsystem,
audit(4).
audit(4)
provides detailed logging of a configurable set of security-relevant system
calls, including key arguments (such as file paths) and return values that are
copied race-free as the system call proceeds. The
dtaudit provider allows DTrace scripts to selectively
enable in-kernel audit-record capture for system calls, and then access those
records in either the in-kernel format or BSM format
(audit.log(5))
when the system call completes. While the in-kernel audit record data
structure is subject to change as the kernel changes over time, it is a much
more friendly interface for use in D scripts than either those available via
the DTrace system-call provider or the BSM trail itself.
ConfigurationThedtaudit provider relies on
audit(4)
being compiled into the kernel. dtaudit probes become
available only once there is an event-to-name mapping installed in the kernel,
normally done by
auditd(8)
during the boot process, if audit is enabled in
rc.conf(5):
auditd_enable="YES" If audit_event_load="YES" ProbesTheaudit:event:aue_*:commit () probes fire synchronously
during system-call return, giving access to two arguments: a
char * audit event name, and the struct
audit_record * in-kernel audit record. Because the probe fires in
system-call return, the user thread has not yet regained control, and
additional information from the thread and process remains available for
capture by the script.
The IMPLEMENTATION NOTESWhen a set ofdtaudit probes are registered,
corresponding in-kernel audit records will be captured and their probes will
fire regardless of whether the
audit(4)
subsystem itself would have captured the record for the purposes of writing it
to the audit trail, or for delivery to a
auditpipe(4).
In-kernel audit records allocated only because of enabled
dtaudit(4)
probes will not be unnecessarily written to the audit trail or enabled pipes.
SEE ALSOdtrace(1), audit(4), audit.log(5), loader.conf(5), rc.conf(5), auditd(8)HISTORYThedtaudit provider first appeared in
FreeBSD 12.0.
AUTHORSThis software and this manual page were developed by BAE Systems, the University of Cambridge Computer Laboratory, and Memorial University under DARPA/AFRL contract (FA8650-15-C-7558) (“CADETS”), as part of the DARPA Transparent Computing (TC) research program. Thedtaudit provider and this manual page were written by
Robert Watson
<rwatson@FreeBSD.org>.
BUGSBecause audit(4) maintains its primary event-to-name mapping database in userspace, that database must be loaded into the kernel beforedtaudit
probes become available.
Visit the GSP FreeBSD Man Page Interface. |