Reading PAX kernel barfs

Discuss usability issues, general maintenance, and general support issues for a grsecurity-enabled system.

Reading PAX kernel barfs

Postby cmouse » Wed Apr 25, 2012 2:48 am

I am trying to understand how to read the PAX kernel outputs

PAX: From 194.100.219.29: execution attempt in: <anonymous mapping>, 00777000-007a1000 00777000
PAX: terminating task: /home/cmouse/src/pdns-svn/pdns/pdnssec(pdnssec):8783, uid/euid: 1000/1000, PC: 0000000000777730, SP: 000003db840da698
PAX: bytes at PC: 30 87 c9 70 80 03 00 00 70 87 c9 70 80 03 00 00 b0 87 c9 70
PAX: bytes at SP-8: 0000000000778908 00000000004bc49f 000000000000002e 0000000000000080 0000000000000050 0000000000781c20 000003db840da728 0000000000778930 0000000000781e10 0000000000781e18 0000000000781e18

How can I convert this into at least some kind of location in the code where to go search for the cause?
cmouse
 
Posts: 98
Joined: Tue Dec 17, 2002 10:58 am

Re: Reading PAX kernel barfs

Postby PaX Team » Wed Apr 25, 2012 9:23 am

cmouse wrote:PAX: From 194.100.219.29: execution attempt in: <anonymous mapping>, 00777000-007a1000 00777000
this line tells you where the code was going to be executed but failed due to permission checks (including no memory being mapped at the given address). here it's an anonymous mapping, that is, something not mapped from a file so it's either runtime generated code or just plain non-executable data.
PAX: terminating task: /home/cmouse/src/pdns-svn/pdns/pdnssec(pdnssec):8783, uid/euid: 1000/1000, PC: 0000000000777730, SP: 000003db840da698
the interesting value here is PC which tells you the precise location of the insn that wasn't allowed to execute (if you had a coredump then this is where you would look at the code that didn't execute).
PAX: bytes at PC: 30 87 c9 70 80 03 00 00 70 87 c9 70 80 03 00 00 b0 87 c9 70
this is the 'code' starting from the reported PC value, with a hexeditor/disassembler you can try to turn it into machine code and assembly (this is useful if you don't have a coredump) and figure out if it actually looks like meaningful code or not. in this case it's clearly not code, you can see it if you read the dump in 8 byte chunks: 0x0000038070c98730, 0x0000038070c98770, etc, these are likely valid userland addresses.
PAX: bytes at SP-8: 0000000000778908 00000000004bc49f 000000000000002e 0000000000000080 0000000000000050 0000000000781c20 000003db840da728 0000000000778930 0000000000781e10 0000000000781e18 0000000000781e18
this is a stack dump at the time of the NX violation, it starts one machine word below the stack in case the control transfer was a 'ret' insn (would be typical for a stack overflow exploit). here it's clear that it wasn't a function return so it must have been an indirect call or jump insn, something you could tell from a coredump although the next value in the stack dump (0x4bc49f) looks like a userland address in the main executable (if it wasn't a randomized PIE) so you could try to disassemble it and see what's around there (i'd expect a call insn just before this address).

as for the best approach to debug this: if you can reproduce it at will, just generate a coredump and take it from there. an strace would also help determine how you ended up with a mapping at such a specific address (0x777000), this is not something the kernel would normally give out by itself, it must have been mapped there explicitly with MAP_FIXED.
PaX Team
 
Posts: 2310
Joined: Mon Mar 18, 2002 4:35 pm

Re: Reading PAX kernel barfs

Postby cmouse » Thu Apr 26, 2012 4:55 am

Here is the strace for the process. I seem to be unable to run this in valgrind, for some reason. I got core file, but in the mean time here is the strace and core strack trace

Program terminated with signal 9, Killed.
#0 0x0000000000777730 in vtable for __cxxabiv1::__si_class_type_info ()
(gdb) bt
#0 0x0000000000777730 in vtable for __cxxabiv1::__si_class_type_info ()
#1 0x00000000004bc49f in BackendMakerClass::launch(std::string const&) ()
#2 0x000000000045e215 in loadMainConfig(std::string const&) ()
#3 0x00000000004645b2 in main ()



execve("../pdns/pdnssec", ["../pdns/pdnssec", "--config-dir=.", "--config-name=gsqlite3", "secure-zone", "example.com"], [/* 35 vars */]) = 0
brk(0) = 0x7860d8
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298ede000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/tls/x86_64/libmysqlclient.so.16", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/tls/x86_64", 0x3f083271470) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/tls/libmysqlclient.so.16", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/tls", 0x3f083271470) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/x86_64/libmysqlclient.so.16", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/x86_64", 0x3f083271470) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/libmysqlclient.so.16", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=43085, ...}) = 0
mmap(NULL, 43085, PROT_READ, MAP_PRIVATE, 3, 0) = 0x32298ed3000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/libmysqlclient.so.16", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\342\4\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=2160752, ...}) = 0
mmap(NULL, 4261064, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x322988b1000
mprotect(0x32298a72000, 2097152, PROT_NONE) = 0
mmap(0x32298c72000, 323584, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c1000) = 0x32298c72000
mmap(0x32298cc1000, 1224, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x32298cc1000
close(3) = 0
open("/usr/local/lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libdl.so.2", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\r\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14696, ...}) = 0
mmap(NULL, 2109696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x322986ad000
mprotect(0x322986af000, 2097152, PROT_NONE) = 0
mmap(0x322988af000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x322988af000
close(3) = 0
open("/usr/local/lib/libboost_program_options.so.1.40.0", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/libboost_program_options.so.1.40.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\v\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=319896, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298ed2000
mmap(NULL, 2415096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3229845f000
mprotect(0x322984aa000, 2093056, PROT_NONE) = 0
mmap(0x322986a9000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4a000) = 0x322986a9000
close(3) = 0
open("/usr/local/lib/libboost_serialization.so.1.40.0", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/libboost_serialization.so.1.40.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300Q\3\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=462832, ...}) = 0
mmap(NULL, 2558840, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x322981ee000
mprotect(0x3229825b000, 2097152, PROT_NONE) = 0
mmap(0x3229845b000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6d000) = 0x3229845b000
close(3) = 0
open("/usr/local/lib/libz.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libz.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\"\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=92752, ...}) = 0
mmap(NULL, 2187792, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x32297fd7000
mprotect(0x32297fed000, 2093056, PROT_NONE) = 0
mmap(0x322981ec000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x322981ec000
close(3) = 0
open("/usr/local/lib/libstdc++.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/libstdc++.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\244\5\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1044008, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298ed1000
mmap(NULL, 3223608, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x32297cc3000
mprotect(0x32297db9000, 2097152, PROT_NONE) = 0
mmap(0x32297fb9000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf6000) = 0x32297fb9000
mmap(0x32297fc2000, 81976, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x32297fc2000
close(3) = 0
open("/usr/local/lib/libm.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libm.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360>\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=534832, ...}) = 0
mmap(NULL, 2629864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x32297a40000
mprotect(0x32297ac2000, 2093056, PROT_NONE) = 0
mmap(0x32297cc1000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x81000) = 0x32297cc1000
close(3) = 0
open("/usr/local/lib/libgcc_s.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libgcc_s.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200-\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=92552, ...}) = 0
mmap(NULL, 2188280, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x32297829000
mprotect(0x3229783f000, 2093056, PROT_NONE) = 0
mmap(0x32297a3e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x32297a3e000
close(3) = 0
open("/usr/local/lib/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360Y\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=135745, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298ed0000
mmap(NULL, 2212736, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3229760c000
mprotect(0x32297624000, 2093056, PROT_NONE) = 0
mmap(0x32297823000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x32297823000
mmap(0x32297825000, 13184, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x32297825000
close(3) = 0
open("/usr/local/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\355\1\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1572232, ...}) = 0
mmap(NULL, 3680296, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x32297289000
mprotect(0x32297403000, 2093056, PROT_NONE) = 0
mmap(0x32297602000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x179000) = 0x32297602000
mmap(0x32297607000, 18472, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x32297607000
close(3) = 0
open("/usr/local/lib/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libcrypt.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\n\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=43296, ...}) = 0
mmap(NULL, 2326976, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x32297050000
mprotect(0x32297059000, 2097152, PROT_NONE) = 0
mmap(0x32297259000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x32297259000
mmap(0x3229725b000, 184768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3229725b000
close(3) = 0
open("/usr/local/lib/libnsl.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libnsl.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300@\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=97256, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298ecf000
mmap(NULL, 2202320, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x32296e36000
mprotect(0x32296e4d000, 2093056, PROT_NONE) = 0
mmap(0x3229704c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x3229704c000
mmap(0x3229704e000, 6864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3229704e000
close(3) = 0
open("/usr/local/lib/librt.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/librt.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220!\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=31744, ...}) = 0
mmap(NULL, 2128848, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x32296c2e000
mprotect(0x32296c35000, 2093056, PROT_NONE) = 0
mmap(0x32296e34000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x32296e34000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298ece000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298ecd000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298ecb000
arch_prctl(ARCH_SET_FS, 0x32298ecb720) = 0
mprotect(0x32296e34000, 4096, PROT_READ) = 0
mprotect(0x3229704c000, 4096, PROT_READ) = 0
mprotect(0x32297259000, 4096, PROT_READ) = 0
mprotect(0x32297602000, 16384, PROT_READ) = 0
mprotect(0x32297823000, 4096, PROT_READ) = 0
mprotect(0x32297a3e000, 4096, PROT_READ) = 0
mprotect(0x32297cc1000, 4096, PROT_READ) = 0
mprotect(0x32297fb9000, 28672, PROT_READ) = 0
mprotect(0x322981ec000, 4096, PROT_READ) = 0
mprotect(0x3229845b000, 12288, PROT_READ) = 0
mprotect(0x322986a9000, 12288, PROT_READ) = 0
mprotect(0x322988af000, 4096, PROT_READ) = 0
mprotect(0x32298c72000, 20480, PROT_READ) = 0
mprotect(0x774000, 4096, PROT_READ) = 0
mprotect(0x32298ee1000, 4096, PROT_READ) = 0
munmap(0x32298ed3000, 43085) = 0
set_tid_address(0x32298ecb9f0) = 13948
set_robust_list(0x32298ecba00, 0x18) = 0
futex(0x3f083271d7c, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x3f083271d7c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, 32298ecb720) = -1 EAGAIN (Resource temporarily unavailable)
rt_sigaction(SIGRTMIN, {0x32297611870, [], SA_RESTORER|SA_SIGINFO, 0x3229761b8f0}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x32297611900, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x3229761b8f0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
futex(0x32297fc2b88, FUTEX_WAKE_PRIVATE, 2147483647) = 0
brk(0) = 0x7860d8
brk(0x7a70d8) = 0x7a70d8
brk(0x7a8000) = 0x7a8000
socket(PF_FILE, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 3
connect(3, {sa_family=AF_FILE, path="/dev/log"}, 110) = 0
time([1335430027]) = 1335430027
open("/etc/localtime", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=1883, ...}) = 0
fstat(4, {st_mode=S_IFREG|0644, st_size=1883, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32298edd000
read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\5\0\0\0\5\0\0\0\0"..., 4096) = 1883
lseek(4, -1201, SEEK_CUR) = 682
read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\6\0\0\0\6\0\0\0\0"..., 4096) = 1201
close(4) = 0
munmap(0x32298edd000, 4096) = 0
time([1335430027]) = 1335430027
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1883, ...}) = 0
time([1335430027]) = 1335430027
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1883, ...}) = 0
time([1335430027]) = 1335430027
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1883, ...}) = 0
open("./pdns-gsqlite3.conf", O_RDONLY) = 4
read(4, "launch=gsqlite3\ngsqlite3-databas"..., 8191) = 63
read(4, "", 8191) = 0
close(4) = 0
futex(0x322988b00ec, FUTEX_WAKE_PRIVATE, 2147483647) = 0
open("/home/cmouse/pdns/lib/libgsqlite3backend.so", O_RDONLY) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300@\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0755, st_size=79341, ...}) = 0
mmap(NULL, 2163256, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x32296a1d000
mprotect(0x32296a2d000, 2093056, PROT_NONE) = 0
mmap(0x32296c2c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xf000) = 0x32296c2c000
close(4) = 0
open("/usr/local/lib/libsqlite3.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=43085, ...}) = 0
mmap(NULL, 43085, PROT_READ, MAP_PRIVATE, 4, 0) = 0x32298ed3000
close(4) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/libsqlite3.so.0", O_RDONLY) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\204\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=577144, ...}) = 0
mmap(NULL, 2673744, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x32296790000
mprotect(0x3229681a000, 2093056, PROT_NONE) = 0
mmap(0x32296a19000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x89000) = 0x32296a19000
close(4) = 0
mprotect(0x32296a19000, 8192, PROT_READ) = 0
mprotect(0x32296c2c000, 4096, PROT_READ) = 0
time([1335430027]) = 1335430027
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1883, ...}) = 0
munmap(0x32298ed3000, 43085) = 0
+++ killed by SIGKILL +++
cmouse
 
Posts: 98
Joined: Tue Dec 17, 2002 10:58 am

Re: Reading PAX kernel barfs

Postby cmouse » Thu Apr 26, 2012 9:20 am

After compiling everything with -g -O0 it no longer crashes...
cmouse
 
Posts: 98
Joined: Tue Dec 17, 2002 10:58 am


Return to grsecurity support