Contained WithinFind More DocumentationFeatured Support Resources | Download this book in PDF (7229 KB)
ppriv(1)Name | Synopsis | Description | Options | Usage | Examples | Exit Status | Files | Attributes | See Also Name
Synopsis/usr/bin/ppriv -e [-D | -N] [-M] [-s spec] command [arg]...
/usr/bin/ppriv [-v] [-S] [-D | -N] [-s spec]
[pid | core]...
/usr/bin/ppriv -l [-v] [privilege-specification]... DescriptionThe first invocation of the ppriv command runs the command specified with the privilege sets and flags modified according to the arguments on the command line. The second invocation examines or changes the privilege state of running process and core files. The third invocation lists the privileges defined and information about specified privileges or privileges set specifications. Options
The following options are supported: UsageThe ppriv utility examines processes and core files and prints or changes their privilege sets. ppriv can run commands with privilege debugging on or off or with fewer privileges than the invoking process. When executing a sub process, the only sets that can be modified are L and I. Privileges can only be removed from L and I as ppriv starts with P=E=I. ppriv can also be used to remove privileges from processes or to convey privileges to other processes. In order to control a process, the effective set of the ppriv utility must be a super set of the controlled process's E, I, and P. The utility's limit set must be a super set of the target's limit set. If the target's process uids do not match, the {PRIV_PROC_OWNER} privilege must be asserted in the utility's effective set. If the controlled processes have any uid with the value 0, more restrictions might exist. See privileges(5). ExamplesExample 1 Obtaining the Process Privileges of the Current ShellThe following example obtains the process privileges of the current shell:
Example 2 Removing a Privilege From Your Shell's Inheritable and Effective SetThe following example removes a privilege from your shell's inheritable and effective set.
The subprocess can still inspect the parent shell but it can no longer influence the parent because the parent has more privileges in its Permitted set than the ppriv child process:
Example 3 Running a Process with Privilege DebuggingThe following example runs a process with privilege debugging:
The privilege debugging error messages are sent to the controlling terminal of the current process. The needed at address specification is an artifact of the kernel implementation and it can be changed at any time after a software update. The system call number can be mapped to a system call using /etc/name_to_sysnum. Example 4 Listing the Privileges Available in the Current ZoneThe following example lists the privileges available in the current zone (see zones(5)). When run in the global zone, all defined privileges are listed.
Example 5 Examining a Privilege Aware ProcessThe following example examines a privilege aware process:
See setpflags(2) for explanations of the flags. Exit StatusFilesAttributesSee attributes(5) for descriptions of the following attributes:
The invocation is Committed. The output is Uncommitted. See Alsogcore(1), truss(1), setpflags(2), priv_str_to_set(3C), proc(4), attributes(5), privileges(5), zones(5) Name | Synopsis | Description | Options | Usage | Examples | Exit Status | Files | Attributes | See Also |
||||||||||||