Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> wrote: > On Tue, Feb 12, 2013 at 10:22:38AM +0100, Florian Westphal wrote: > > Userspace can cause kernel panic by not specifying orig/reply > > tuple: kernel will create a tuple with random stack values. > > > > Problem is that tuple.dst.dir will be random, too, which > > causes nf_ct_tuplehash_to_ctrack() to return garbage. [..] > > diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c > > index 7bbfb3d..e592281 100644 > > --- a/net/netfilter/nf_conntrack_netlink.c > > +++ b/net/netfilter/nf_conntrack_netlink.c > > @@ -1596,6 +1596,9 @@ ctnetlink_new_conntrack(struct sock *ctnl, struct sk_buff *skb, > > if (nlh->nlmsg_flags & NLM_F_CREATE) { > > enum ip_conntrack_events events; > > > > + if (!cda[CTA_TUPLE_ORIG] || > > + !cda[CTA_TUPLE_REPLY]) > > + return -EINVAL; > > I think that needs to be && instead of ||. Uh, maybe I'm too low on caffeine, but when a new conntrack is to be created, shouldn't userspace have to specify _both_ ORIG and REPLY? -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html