Skip to content

Commit f5d7bf8

Browse files
committed
Add Seccomp-BPF policies to the repo.
These policies can be used with the Minijail tool (http://git.chromium.org/gitweb/?p=chromiumos/platform/minijail.git) to achieve kernel attack surface reduction. (Also fix some trailing whitespace.) BUG=chromium-os:36653 TEST=None Change-Id: I35dd74702f7dfd701c86e1b25b0831d3925fbf96 Signed-off-by: Jorge Lucangeli Obes <[email protected]>
1 parent c87e900 commit f5d7bf8

4 files changed

+147
-2
lines changed

src/tlsdate-helper.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -905,15 +905,15 @@ main(int argc, char **argv)
905905
run_ssl (time_map, leap);
906906
(void) munmap (time_map, sizeof (uint32_t));
907907
_exit (0);
908-
}
908+
}
909909
if (ssl_child != waitpid (ssl_child, &status, 0))
910910
die ("waitpid failed: %s\n", strerror (errno));
911911
if (! (WIFEXITED (status) && (0 == WEXITSTATUS (status)) ))
912912
die ("child process failed in SSL handshake\n");
913913

914914
if (0 != clock_get_real_time(&end_time))
915915
die ("Failed to read current time of day: %s\n", strerror (errno));
916-
916+
917917
/* calculate RTT */
918918
rt_time_ms = (CLOCK_SEC(&end_time) - CLOCK_SEC(&start_time)) * 1000 + (CLOCK_USEC(&end_time) - CLOCK_USEC(&start_time)) / 1000;
919919
if (rt_time_ms < 0)

tlsdate-seccomp-amd64.policy

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
mmap: 1
2+
open: 1
3+
read: 1
4+
close: 1
5+
fstat: 1
6+
mprotect: 1
7+
munmap: 1
8+
stat: 1
9+
write: 1
10+
lseek: 1
11+
brk: 1
12+
fcntl: 1
13+
execve: 1
14+
sendto: 1
15+
# Allow domain == PF_FILE || domain == PF_INET || domain == PF_NETLINK
16+
socket: arg0 == 1 || arg0 == 2 || arg0 == 16
17+
connect: 1
18+
poll: 1
19+
access: 1
20+
arch_prctl: 1
21+
wait4: 1
22+
rt_sigaction: 1
23+
exit_group: 1
24+
rt_sigprocmask: 1
25+
clone: 1
26+
# Allow request == RTC_SET_TIME || request == FIONREAD
27+
ioctl: arg1 == 0x4024700a || arg1 == 0x541b
28+
getuid: 1
29+
exit: 1
30+
rt_sigreturn: 1
31+
rename: 1
32+
select: 1
33+
setgid: 1
34+
settimeofday: 1
35+
restart_syscall: 1
36+
setresgid: 1
37+
setgroups: 1
38+
setsockopt: 1
39+
bind: 1
40+
recvfrom: 1
41+
setresuid: 1
42+
nanosleep: 1
43+
clock_gettime: 1
44+
clock_settime: 1
45+
futex: 1
46+
getrlimit: 1
47+
set_robust_list: 1
48+
set_tid_address: 1

tlsdate-seccomp-arm.policy

+50
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
open: 1
2+
read: 1
3+
mmap2: 1
4+
stat64: 1
5+
close: 1
6+
fstat64: 1
7+
_newselect: 1
8+
mprotect: 1
9+
munmap: 1
10+
gettimeofday: 1
11+
_llseek: 1
12+
write: 1
13+
rt_sigprocmask: 1
14+
brk: 1
15+
execve: 1
16+
fcntl64: 1
17+
rt_sigaction: 1
18+
send: 1
19+
poll: 1
20+
# Allow domain == PF_FILE || domain == PF_INET || domain == PF_NETLINK
21+
socket: arg0 == 1 || arg0 == 2 || arg0 == 16
22+
uname: 1
23+
connect: 1
24+
access: 1
25+
ARM_set_tls: 1
26+
wait4: 1
27+
exit_group: 1
28+
getuid32: 1
29+
clone: 1
30+
# Allow request == RTC_SET_TIME || request == FIONREAD
31+
ioctl: arg1 == 0x4024700a || arg1 == 0x541b
32+
setgid32: 1
33+
recvfrom: 1
34+
setresuid32: 1
35+
setgroups32: 1
36+
settimeofday: 1
37+
restart_syscall: 1
38+
setsockopt: 1
39+
setresgid32: 1
40+
nanosleep: 1
41+
exit: 1
42+
rt_sigreturn: 1
43+
rename: 1
44+
bind: 1
45+
clock_gettime: 1
46+
clock_settime: 1
47+
futex: 1
48+
ugetrlimit: 1
49+
set_robust_list: 1
50+
set_tid_address: 1

tlsdate-seccomp-x86.policy

+47
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
open: 1
2+
mmap2: 1
3+
read: 1
4+
close: 1
5+
fstat64: 1
6+
stat64: 1
7+
munmap: 1
8+
mprotect: 1
9+
time: 1
10+
socketcall: 1
11+
_llseek: 1
12+
brk: 1
13+
write: 1
14+
execve: 1
15+
fcntl64: 1
16+
gettimeofday: 1
17+
poll: 1
18+
access: 1
19+
set_thread_area: 1
20+
waitpid: 1
21+
exit_group: 1
22+
rt_sigprocmask: 1
23+
getuid32: 1
24+
clone: 1
25+
rt_sigaction: 1
26+
# Allow request == RTC_SET_TIME || request == FIONREAD
27+
ioctl: arg1 == 0x4024700a || arg1 == 0x541b
28+
setgid32: 1
29+
setgroups32: 1
30+
setresuid32: 1
31+
settimeofday: 1
32+
restart_syscall: 1
33+
setresgid32: 1
34+
nanosleep: 1
35+
exit: 1
36+
rt_sigreturn: 1
37+
rename: 1
38+
select: 1
39+
_newselect: 1
40+
clock_gettime: 1
41+
clock_settime: 1
42+
futex: 1
43+
getrlimit: 1
44+
ugetrlimit: 1
45+
set_robust_list: 1
46+
set_tid_address: 1
47+
uname: 1

0 commit comments

Comments
 (0)