by aiwntrmute » Wed Dec 10, 2003 5:44 pm
Here is the dmesg from pax killing the child processes:
<snip>
PAX: From 128.95.196.85: terminating task: /usr/sbin/nscd(nscd):23284, uid/euid: 28/28, PC: 00000000, SP: 2b275a9c
PAX: bytes at PC: <invalid address>.
PAX: From 128.95.196.85: terminating task: /usr/sbin/nscd(nscd):4404, uid/euid: 28/28, PC: 00000000, SP: 2ba76a9c
PAX: bytes at PC: <invalid address>.
PAX: From 128.95.196.85: terminating task: /usr/sbin/nscd(nscd):15650, uid/euid: 28/28, PC: 00000000, SP: 2c277a9c
PAX: bytes at PC: <invalid address>.
PAX: From 128.95.196.85: terminating task: /usr/sbin/nscd(nscd):11048, uid/euid: 28/28, PC: 00000000, SP: 2ca78a9c
PAX: bytes at PC: <invalid address>.
PAX: From 128.95.196.85: terminating task: /usr/sbin/nscd(nscd):7402, uid/euid: 28/28, PC: 00000000, SP: 2d279a9c
PAX: bytes at PC: <invalid address>.
<snip>
If I use chpax to tell it to ignore /usr/sbin/nscd, I then will get this from dmesg:
<snip>
grsec: From 128.95.196.85: signal 11 sent to (nscd:5599) UID(28) EUID(28), parent (nscd:16226) UID(28) EUID(28)
grsec: From 128.95.196.85: signal 11 sent to (nscd:16226) UID(28) EUID(28), parent (init:1) UID(0) EUID(0) by (nscd:5599) UID(28) EUID(28), parent (nscd:16226) UID(28) EUID(28)
<snip>
But this time all nscd processes will be killed including the parent.
Here is the strace -f on nscd (im just posting the 2 child processes, although there's 5 forks)
<snip>
mprotect(0x26dc4000, 4096, PROT_NONE) = 0
clone(Process 26312 attached
child_stack=0x275c4b08, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED, parent_tidptr=0x275c4bf8, {entry_number:0, base_addr:0x275c4bb0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0x275c4bf8) = 26312
[pid 26312] --- SIGSTOP (Stopped (signal)) @ 0 (0) ---
[pid 26312] +++ killed by SIGKILL +++
PANIC: handle_group_exit: 26312 leader 125
--- SIGCHLD (Child exited) @ 0 (0) ---
mmap2(NULL, 8392704, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x275c5000
mprotect(0x275c5000, 4096, PROT_NONE) = 0
clone(Process 5773 attached
child_stack=0x27dc5b08, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED, parent_tidptr=0x27dc5bf8, {entry_number:0, base_addr:0x27dc5bb0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0x27dc5bf8) = 5773
[pid 5773] --- SIGSTOP (Stopped (signal)) @ 0 (0) ---
[pid 5773] +++ killed by SIGKILL +++
PANIC: handle_group_exit: 5773 leader 125
--- SIGCHLD (Child exited) @ 0 (0) ---
<snip>
Walter.