• Filipe Brandenburger's avatar
    zdtm: add new dumpable02 test to check that dumpable flag set to 0 or 2 works · 6cf2906b
    Filipe Brandenburger authored
    This confirms that the fix to handle dumpable flag set to 2 still works after
    restore.
    
    To force dumpable flag set to 0 or 2 (whatever the fs.suid_dumpable is set to),
    chmod the test binary to 0111 (executable, but not readable) and execv() it
    while running as non-root.  The kernel will unset the dumpable flag to prevent
    a core dump or ptrace to giving the user access to the pages of the binary
    (which are supposedly not readable by that user.)
    
    Tested:
    - # test/zdtm.sh static/dumpable02
      Test: zdtm/live/static/dumpable02, Result: PASS
    - # test/zdtm.sh ns/static/dumpable02
      Test: zdtm/live/static/dumpable02, Result: PASS
    - Used -DDEBUG to confirm the value of the dumpable flag was 0 or 2 to match
      the fs.suid_dumpable sysctl in the tests (both in and out of namespaces.)
    - Confirmed that the test fails if the commit that fixes handling of dumpable
      flag with value 2 is reverted and the fs.suid_dumpable sysctl is set to 2.
    Signed-off-by: 's avatarFilipe Brandenburger <filbranden@google.com>
    Acked-by: 's avatarAndrew Vagin <avagin@parallels.com>
    Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
    6cf2906b
Name
Last commit
Last update
..
lib Loading commit data...
Makefile Loading commit data...
arm-neon00.c Loading commit data...
bind-mount.c Loading commit data...
busyloop00.c Loading commit data...
caps00.c Loading commit data...
cgroup00.c Loading commit data...
child_opened_proc.c Loading commit data...
chroot-file.c Loading commit data...
chroot.c Loading commit data...
clean_mntns.c Loading commit data...
cmdlinenv00.c Loading commit data...
conntracks Loading commit data...
cow00.c Loading commit data...
cow01.c Loading commit data...
criu-rtc.c Loading commit data...
criu-rtc.proto Loading commit data...
cwd00.c Loading commit data...
deleted_dev.c Loading commit data...
deleted_unix_sock.c Loading commit data...
dumpable01.c Loading commit data...
dumpable02.c Loading commit data...
env00.c Loading commit data...
eventfs00.c Loading commit data...
fanotify00.c Loading commit data...
fdt_shared.c Loading commit data...
fifo-ghost.c Loading commit data...
fifo-rowo-pair.c Loading commit data...
fifo.c Loading commit data...
fifo_ro.c Loading commit data...
fifo_wronly.c Loading commit data...
file_append.c Loading commit data...
file_attr.c Loading commit data...
file_fown.c Loading commit data...
file_locks00.c Loading commit data...
file_locks01.c Loading commit data...
file_shared.c Loading commit data...
fpu00.c Loading commit data...
fpu01.c Loading commit data...
futex-rl.c Loading commit data...
futex.c Loading commit data...
groups.c Loading commit data...
grow_map.c Loading commit data...
grow_map02.c Loading commit data...
grow_map03.c Loading commit data...
inotify00.c Loading commit data...
inotify_irmap.c Loading commit data...
inotify_system.c Loading commit data...
inotify_system_nodel.c Loading commit data...
ipc_namespace.c Loading commit data...
jobctl00.c Loading commit data...
link10.c Loading commit data...
maps00.c Loading commit data...
maps01.c Loading commit data...
maps02.c Loading commit data...
maps03.c Loading commit data...
maps04.c Loading commit data...
maps05.c Loading commit data...
maps_file_prot.c Loading commit data...
mem-touch.c Loading commit data...
mmx00.c Loading commit data...
mountpoints.c Loading commit data...
mprotect00.c Loading commit data...
msgque.c Loading commit data...
mtime_mmap.c Loading commit data...
netns-nf.c Loading commit data...
netns.c Loading commit data...
overmount_dev.c Loading commit data...
overmount_fifo.c Loading commit data...
overmount_file.c Loading commit data...
overmount_sock.c Loading commit data...
packet_sock.c Loading commit data...
pid00.c Loading commit data...
pipe00.c Loading commit data...
pipe01.c Loading commit data...
pipe02.c Loading commit data...
posix_timers.c Loading commit data...
proc-self.c Loading commit data...
pstree.c Loading commit data...
pthread00.c Loading commit data...
pthread01.c Loading commit data...
ptrace_sig.c Loading commit data...
pty00.c Loading commit data...
pty01.c Loading commit data...
pty02.c Loading commit data...
pty03.c Loading commit data...
pty04.c Loading commit data...
rlimits00.c Loading commit data...
route_rules Loading commit data...
rtc.c Loading commit data...
sched_policy00.c Loading commit data...
sched_prio00.c Loading commit data...
selfexe00.c Loading commit data...
sem.c Loading commit data...
session00.c Loading commit data...
session01.c Loading commit data...
session02.c Loading commit data...
session03.c Loading commit data...
shm.c Loading commit data...
sigaltstack.c Loading commit data...
signalfd00.c Loading commit data...
sigpending.c Loading commit data...
sk-netlink.c Loading commit data...
sk-unix-unconn.c Loading commit data...
sleeping00.c Loading commit data...
sock_filter.c Loading commit data...
sock_opts00.c Loading commit data...
sock_opts01.c Loading commit data...
socket-ext.c Loading commit data...
socket-tcp.c Loading commit data...
socket-tcp6.c Loading commit data...
socket-tcpbuf-local.c Loading commit data...
socket-tcpbuf.c Loading commit data...
socket-tcpbuf6.c Loading commit data...
socket6_udp.c Loading commit data...
socket_aio.c Loading commit data...
socket_listen.c Loading commit data...
socket_listen6.c Loading commit data...
socket_queues.c Loading commit data...
socket_udp.c Loading commit data...
socket_udplite.c Loading commit data...
sockets00.c Loading commit data...
sockets01.c Loading commit data...
sockets02.c Loading commit data...
sockets_dgram.c Loading commit data...
sockets_spair.c Loading commit data...
sse00.c Loading commit data...
sse20.c Loading commit data...
stopped.c Loading commit data...
tempfs.c Loading commit data...
timers.c Loading commit data...
tty00.c Loading commit data...
tty02.c Loading commit data...
tty03.c Loading commit data...
tun.c Loading commit data...
umask00.c Loading commit data...
unbound_sock.c Loading commit data...
unhashed_proc.c Loading commit data...
unlink_fifo.c Loading commit data...
unlink_fifo_wronly.c Loading commit data...
unlink_fstat00.c Loading commit data...
unlink_fstat01.c Loading commit data...
unlink_fstat02.c Loading commit data...
unlink_fstat03.c Loading commit data...
unlink_largefile.c Loading commit data...
unlink_mmap00.c Loading commit data...
unlink_mmap01.c Loading commit data...
unlink_mmap02.c Loading commit data...
uptime_grow.c Loading commit data...
utsname.c Loading commit data...
vdso00.c Loading commit data...
wait00.c Loading commit data...
write_read00.c Loading commit data...
write_read01.c Loading commit data...
write_read02.c Loading commit data...
write_read10.c Loading commit data...
xids00.c Loading commit data...
zombie00.c Loading commit data...