All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pablo Neira Ayuso <pablo@netfilter.org>
To: pageexec@freemail.hu
Cc: netfilter@vger.kernel.org, Wolfram Schlich <lists@wolfram.schlich.org>
Subject: Re: PaX killing conntrackd (strange "execution attempt")
Date: Mon, 17 Nov 2008 13:44:36 +0100	[thread overview]
Message-ID: <49216734.9080505@netfilter.org> (raw)
In-Reply-To: <491D9AED.12969.1657939B@pageexec.freemail.hu>

pageexec@freemail.hu wrote:
> On 14 Nov 2008 at 16:09, Wolfram Schlich wrote:
> 
>> Here's the log entry:
>> --8<--
>> 11-14 14:25:20 +01:00; hafw2; kern.err; kernel: PAX: From 10.10.10.249: execution attempt in: <NULL>, 00000000-00000000 00000000
>> 11-14 14:25:20 +01:00; hafw2; kern.err; kernel: PAX: terminating task: /usr/sbin/conntrackd(conntrackd):7543, uid/euid: 0/0, PC: 0000000000000000, SP: 00007fffffffb398
>> 11-14 14:25:20 +01:00; hafw2; kern.err; kernel: PAX: bytes at PC: ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
>> 11-14 14:25:20 +01:00; hafw2; kern.err; kernel: PAX: bytes at SP-8:
>> --8<--
> 
> ok, here's the rest of the story:
> 
> (gdb) x/16x $sp
> 0x7fffffffb398: 0xf7ba28b5      0x00007fff      0x00000001      0x00000000
> (gdb) x/8i 0x00007ffff7ba28b5-3
> 0x7ffff7ba28b2 <__build_protoinfo+450>: callq  *(%rdx,%rax,8)
> 0x7ffff7ba28b5 <__build_protoinfo+453>: mov    $0x1,%eax
> 0x7ffff7ba28ba <__build_protoinfo+458>: mov    %ebp,%ecx
> 0x7ffff7ba28bc <__build_protoinfo+460>: shl    %cl,%rax
> 0x7ffff7ba28bf <__build_protoinfo+463>: or     %eax,(%r14,%rbx,4)
> 0x7ffff7ba28c3 <__build_protoinfo+467>: cmp    $0x37,%r12d
> 0x7ffff7ba28c7 <__build_protoinfo+471>: jle    0xfffffffff7ba287f
> 0x7ffff7ba28c9 <__build_protoinfo+473>: mov    0x10(%rsp),%rdx
> (gdb) i r rdx rax
> rdx            0x7ffff7db5000   140737351733248
> rax            0x37     55
> (gdb) x/8x $rdx+8*$rax
> 0x7ffff7db51b8: 0x00000000      0x00000000      0xf7ba9468      0x00007fff
> 0x7ffff7db51c8: 0xf7ba94b1      0x00007fff      0xf7ba9505      0x00007fff
> 
> so that's a null function pointer in whatever structure __build_protoinfo dereferences
> there. is it of any help to you or do you need me to dig out more?

Hm, that code belongs to libnetfilter_conntrack (src/conntrack/build.c). 
The annoying thing is that I see no structure with function pointers in 
that piece of bits. There are only calls to libnfnetlink functions to 
build the netlink message that is sent to kernel-space.

@Wolfram: that code is only reachable during a fail-over - ie. when the 
external cache commits the entries or if you have CacheWriteThrough 
enabled (you shouldn't unless you know what you're doing). I'm telling 
this because otherwise I don't see a way to reach that code - 
considering the posibility of having a memory corruption so that this 
backtrace becomes useless.

BTW, thank you for the detailed report.

-- 
"Los honestos son inadaptados sociales" -- Les Luthiers

  reply	other threads:[~2008-11-17 12:44 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-13 10:03 PaX killing conntrackd (strange "execution attempt") Wolfram Schlich
2008-11-13 13:27 ` Wolfram Schlich
2008-11-13 14:42   ` Pablo Neira Ayuso
2008-11-13 16:01     ` Wolfram Schlich
2008-11-13 17:41   ` Wolfram Schlich
2008-11-13 20:10     ` Wolfram Schlich
2008-11-14 12:03       ` Pablo Neira Ayuso
2008-11-14 15:09         ` Wolfram Schlich
2008-11-14 14:36           ` pageexec
2008-11-17 12:44             ` Pablo Neira Ayuso [this message]
2008-11-17 13:09               ` Wolfram Schlich
2008-11-17 12:57                 ` pageexec
2008-11-20 11:48               ` pageexec
2008-11-23 14:07                 ` Wolfram Schlich
2008-11-23 14:24                 ` Pablo Neira Ayuso
2008-11-23 14:29                   ` Wolfram Schlich
2008-11-23 14:36                     ` Pablo Neira Ayuso
2008-11-23 22:03                   ` pageexec
2008-11-24 13:28                     ` Pablo Neira Ayuso
2008-11-14 15:54           ` Wolfram Schlich
2008-11-14 16:18             ` Wolfram Schlich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49216734.9080505@netfilter.org \
    --to=pablo@netfilter.org \
    --cc=lists@wolfram.schlich.org \
    --cc=netfilter@vger.kernel.org \
    --cc=pageexec@freemail.hu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.