]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - tools/regression/security/proc_to_proc/README
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / tools / regression / security / proc_to_proc / README
1 $FreeBSD$
2
3   Inter-Process Authorization Test Suite
4   Robert Watson, TrustedBSD Project
5
6 This test suite attempts to determine the behavior of inter-process
7 authorization policy present in the kernel.  It analyzes a series of
8 important scenarios using specifically crafted process credentials
9 and a set of operations.  It then reports on any divergence from the
10 expected results.
11
12 Test operations:
13
14 ptrace          cred1 attempts ptrace attach to cred2
15 sighup          cred1 attempts SIGHUP of cred2
16 sigsegv         cred1 attempts SIGSEGV of cred2
17 see             cred1 attempts getpriority() on cred2
18 sched           cred1 attempts setpriority() on cred2
19
20 Test scenarioes:
21
22 priv on priv            root process on another root process
23 priv on unpriv1         root process on a non-root process
24 unpriv1 on priv         non-root process on a root process
25 unpriv1 on unpriv1      non-root process on a similar non-root process
26 unpriv1 on unpriv2      non-root process on a different non-root process
27 unpriv1 on daemon1      non-root process on a root daemon process acting with
28                         same non-root effective credentials
29 unpriv1 on daemon2      non-root process on a root daemon process acting with
30                         different non-root effective credentials
31 unpriv1 on setuid1      non-root process on a setuid-root process with same
32                         non-root real credentials
33 unpriv1 on setuid2      non-root process on a setuid-root process with
34                         different non-root real credentials
35
36 The credential elements supported by the test suite are:
37
38         effective uid
39         real uid
40         saved uid
41         P_SUGID flag
42
43 Other untested aspects of interest include groups, as well as session
44 relationship.  Other test operations that might be of interest are SIGCONT,
45 and SIGIO.
46
47 The current set of tests includes some tests where normally the P_SUGID
48 flag is set, but isn't in the test.  The result is that some tests fail
49 that may not reflect real-world software configurations.  However, they
50 do point to possible changes that could be made in the authorization system
51 to improve resilience to failure or violation of invariants.
52
53 These tests rely on __setugid(), a system call enabled using options
54 REGRESSION.