]> git.saurik.com Git - apple/xnu.git/blob - bsd/man/man4/audit.4
f919bd59e750a2892822cf1b80cbc9f0c1d39800
[apple/xnu.git] / bsd / man / man4 / audit.4
1 .\" Copyright (c) 2006 Robert N. M. Watson
2 .\" Copyright (c) 2009 Apple, Inc.
3 .\" All rights reserved.
4 .\"
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
7 .\" are met:
8 .\" 1. Redistributions of source code must retain the above copyright
9 .\" notice, this list of conditions and the following disclaimer.
10 .\" 2. Redistributions in binary form must reproduce the above copyright
11 .\" notice, this list of conditions and the following disclaimer in the
12 .\" documentation and/or other materials provided with the distribution.
13 .\"
14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
15 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
18 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 .\" SUCH DAMAGE.
25 .\"
26 .\" $FreeBSD: src/share/man/man4/audit.4,v 1.10 2006/12/14 16:40:57 mpp Exp $
27 .\"
28 .Dd March 23, 2009
29 .Os
30 .Dt AUDIT 4
31 .Sh NAME
32 .Nm audit
33 .Nd Security Event Audit
34 .Sh SYNOPSIS
35 .\" .Cd "options AUDIT"
36 .Fd #include <bsm/audit.h>
37 .Fd #include <bsm/audit_internal.h>
38 .Fd #include <bsm/audit_kevents.h>
39 .Sh DESCRIPTION
40 Security Event Audit is a facility to provide fine-grained, configurable
41 logging of security-relevant events, and is intended to meet the requirements
42 of the Common Criteria (CC) Common Access Protection Profile (CAPP)
43 evaluation.
44 The
45 .Fx
46 and Mac OS X
47 .Nm
48 facility implements the de facto industry standard BSM API, file
49 formats, and command line interface, first found in the Solaris operating
50 system.
51 Information on the user space implementation can be found in
52 .Xr libbsm 3 .
53 .Pp
54 Audit support is enabled at boot, if present in the kernel, using an
55 .Xr rc.conf 5
56 flag or, on Mac OS X, by editing the
57 .Pa /System/Library/LaunchDaemons/com.apple.auditd.plist
58 launchd plist file and removing the disabled key or changing its value
59 to false.
60 The audit daemon,
61 .Xr auditd 8 ,
62 is responsible for configuring the kernel to perform
63 .Nm ,
64 pushing
65 configuration data from the various audit configuration files into the
66 kernel.
67 .Ss Audit Special Device
68 The
69 .Fx
70 kernel
71 .Nm
72 facility provides a special device,
73 .Pa /dev/audit ,
74 which is used by
75 .Xr auditd 8
76 to monitor for
77 .Nm
78 events, such as requests to cycle the log, low disk
79 space conditions, and requests to terminate auditing.
80 This device is not intended for use by applications.
81 Mac OS X provides this same functionality using Mach IPC and
82 a host special port.
83 .Ss Audit Pipe Special Devices
84 Audit pipe special devices, discussed in
85 .Xr auditpipe 4 ,
86 provide a configurable live tracking mechanism to allow applications to
87 tee the audit trail, as well as to configure custom preselection parameters
88 to track users and events in a fine-grained manner.
89 .Sh SEE ALSO
90 .Xr auditreduce 1 ,
91 .Xr praudit 1 ,
92 .Xr audit 2 ,
93 .Xr auditctl 2 ,
94 .Xr auditon 2 ,
95 .Xr getaudit 2 ,
96 .Xr getauid 2 ,
97 .Xr poll 2 ,
98 .Xr select 2 ,
99 .Xr setaudit 2 ,
100 .Xr setauid 2 ,
101 .Xr libbsm 3 ,
102 .Xr auditpipe 4 ,
103 .Xr audit_class 5 ,
104 .Xr audit_control 5 ,
105 .Xr audit_event 5 ,
106 .Xr audit.log 5 ,
107 .Xr audit_user 5 ,
108 .Xr audit_warn 5 ,
109 .Xr launchd.plist 5 ,
110 .Xr rc.conf 5 ,
111 .Xr audit 8 ,
112 .Xr auditd 8
113 .Sh HISTORY
114 The
115 .Tn OpenBSM
116 implementation was created by McAfee Research, the security
117 division of McAfee Inc., under contract to Apple Computer Inc.\& in 2004.
118 It was subsequently adopted by the TrustedBSD Project as the foundation for
119 the OpenBSM distribution.
120 .Pp
121 Support for kernel
122 .Nm
123 first appeared in Mac OS X 10.3 and
124 .Fx 6.2 .
125 .Sh AUTHORS
126 .An -nosplit
127 This software was created by McAfee Research, the security research division
128 of McAfee, Inc., under contract to Apple Computer Inc.
129 Additional authors include
130 .An Wayne Salamon ,
131 .An Stacey Son ,
132 .An Robert Watson ,
133 and SPARTA Inc.
134 .Pp
135 The Basic Security Module (BSM) interface to audit records and audit event
136 stream format were defined by Sun Microsystems.
137 .Pp
138 This manual page was written by
139 .An Robert Watson Aq rwatson@FreeBSD.org .
140 .Sh BUGS
141 The
142 .Nm
143 facility in
144 .Fx
145 is considered experimental, and production deployment should occur only after
146 careful consideration of the risks of deploying experimental software.
147 .Pp
148 The Mac OS X and
149 .Fx
150 kernel do not fully validate that audit records submitted by user
151 applications are syntactically valid BSM; as submission of records is limited
152 to privileged processes, this is not a critical bug.
153 .Pp
154 Instrumentation of auditable events in the kernel is not complete, as some
155 system calls do not generate audit records, or generate audit records with
156 incomplete argument information.
157 .Pp
158 Mandatory Access Control (MAC) labels, as provided by the
159 .Xr mac 4
160 facility, are not audited as part of records involving MAC decisions.