Put back the changes made by Wiz
This commit is contained in:
parent
05e15c389d
commit
97b6046c76
|
@ -1,4 +1,4 @@
|
|||
.\" $NetBSD: veriexec.4,v 1.4 2005/04/24 13:09:48 blymn Exp $
|
||||
.\" $NetBSD: veriexec.4,v 1.5 2005/04/24 13:16:26 blymn Exp $
|
||||
.\"
|
||||
.\" Copyright 2005 Elad Efrat <elad@bsd.org.il>
|
||||
.\" Copyright 2005 Brett Lymn <blymn@netbsd.org>
|
||||
|
@ -26,7 +26,7 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $Id: veriexec.4,v 1.4 2005/04/24 13:09:48 blymn Exp $
|
||||
.\" $Id: veriexec.4,v 1.5 2005/04/24 13:16:26 blymn Exp $
|
||||
.\"
|
||||
.Dd March 24, 2005
|
||||
.Dt VERIEXEC 4
|
||||
|
@ -39,38 +39,35 @@
|
|||
The
|
||||
.Nm
|
||||
pseudo-device is used to interface the kernel's Veriexec data-structures.
|
||||
It is used to size the kernel data structures, load the veriexec
|
||||
It is used to size the kernel data structures, load the Veriexec
|
||||
fingerprints into kernel memory and report the fingerprint methods
|
||||
supported by the currently running kernel.
|
||||
.Pp
|
||||
.Ss Veriexec file operations
|
||||
All the following operations are invoked using the
|
||||
.Xr ioctl 2
|
||||
system call.
|
||||
Refer to that man page for the description of
|
||||
Refer to that man page for the description of the
|
||||
.Em request
|
||||
and
|
||||
.Em argp
|
||||
parameters.
|
||||
The following section lists the requests that can be made via
|
||||
.Xr ioctl 2 .
|
||||
.Pp
|
||||
.Ss Veriexec file request descriptions
|
||||
.Pp
|
||||
.Bl -tag -width VERIEXEC_FINGERPRINTS
|
||||
.It Dv VERIEXEC_TABLESIZE Fa struct veriexec_sizing_params
|
||||
Sizes the in kernel hash tables to accommodate the fingerprint entries.
|
||||
This request must be made prior to loading the fingerprints into the
|
||||
kernel.
|
||||
The argument structure contains the device the hash table relates to
|
||||
The argument structure contains the device to which the hash table relates
|
||||
and the number of fingerprint entries that will be loaded into the
|
||||
kernel for the device.
|
||||
.It Dv VERIEXEC_LOAD Fa struct veriexec_params
|
||||
Inserts a fingerprint into the in kernel tables, these tables must have
|
||||
been previously sized using the
|
||||
Inserts a fingerprint into the in-kernel tables.
|
||||
These tables must have been previously sized using the
|
||||
.Dv VERIEXEC_TABLESIZE
|
||||
request.
|
||||
The argument structure defined in
|
||||
The argument structure is, as defined in
|
||||
.Pa /usr/include/sys/verified_exec.h :
|
||||
.Bd -literal
|
||||
struct veriexec_params {
|
||||
|
@ -82,7 +79,7 @@ struct veriexec_params {
|
|||
};
|
||||
.Ed
|
||||
.Pp
|
||||
Where type contains the type of access allowed which may be one of:
|
||||
Where type contains the type of access allowed, which may be one of:
|
||||
.Bl -tag -width VERIEXEC_INDIRECT
|
||||
.It Dv VERIEXEC_DIRECT
|
||||
Allow execution of the file if fingerprint matches.
|
||||
|
@ -93,10 +90,10 @@ line invocation is disallowed.
|
|||
The file is a plain file, not an executable.
|
||||
.El
|
||||
.Pp
|
||||
Followed by fp_type which is the fingerprint type.
|
||||
This is a case insensitive character string that must match one of
|
||||
Followed by fp_type, which is the fingerprint type.
|
||||
This is a case-insensitive character string that must match one of
|
||||
the fingerprint types supported by the running kernel.
|
||||
Next the path to the file the fingerprint applies to.
|
||||
Next the path to the file to which the fingerprint applies.
|
||||
The field size is the number of bytes contained in the
|
||||
fingerprint, this is used by the kernel to provide a simple sanity check
|
||||
on the fingerprint passed.
|
||||
|
@ -107,12 +104,13 @@ Copies a string that contains the fingerprint methods supported by the
|
|||
kernel into the buffer pointed to in the argument structure.
|
||||
The argument structure also contains the size of the storage that has
|
||||
been allocated by the caller to hold the string.
|
||||
If the size of the storage is insufficient to hold the entire string
|
||||
then the string will not be copied into the buffer by the kernel, instead
|
||||
If the size of the storage is insufficient to hold the entire string,
|
||||
then the string will not be copied into the buffer by the kernel; instead
|
||||
the size field will be updated with the amount of storage required to hold
|
||||
the fingerprint string.
|
||||
After performing this request the caller must check the size field in the
|
||||
argument structure, if this field differs from what was set prior to the
|
||||
argument structure.
|
||||
If this field differs from what was set prior to the
|
||||
request then the caller should reallocate the storage with the updated size
|
||||
and perform the request again.
|
||||
.El
|
||||
|
@ -127,16 +125,16 @@ by setting
|
|||
using
|
||||
.Xr sysctl 8 .
|
||||
.Sh SEE ALSO
|
||||
.Xr sysctl 8 ,
|
||||
.Xr veriexecctl 8
|
||||
.Xr sysctl 8
|
||||
.Sh NOTES
|
||||
The size field in the
|
||||
The size field in the
|
||||
.Dv VERIEXEC_LOAD
|
||||
structure is only used to validate the size of the fingerprint being
|
||||
passed is the expected size for that fingerprint hash type, it is not used
|
||||
structure is only used to validate that the size of the fingerprint being
|
||||
passed is the expected size for that fingerprint hash type; it is not used
|
||||
for any other purpose.
|
||||
A malicious person could deliberately mismatch the size of the fingerprint
|
||||
array and, possibly, cause a kernel page fault panic when the kernel
|
||||
reads the input fingerprint array memory.
|
||||
Due to this, it is recommended only the root user be allowed to access to
|
||||
Due to this, it is recommended only the root user be allowed to access
|
||||
this device.
|
||||
|
|
Loading…
Reference in New Issue