Subject: Re: [PATCH 07/23] netfilter: x_tables: check standard target size too

From: Florian Westphal <[email-masked]>
Date: Mon, 6 Jun 2016 00:02:10 +0200

Andreas Schwab <[email-masked]> wrote:
> > From: Florian Westphal <[email-masked]>
> >
> > We have targets and standard targets -- the latter carries a verdict.
> >
> > The ip/ip6tables validation functions will access t->verdict for the
> > standard targets to fetch the jump offset or verdict for chainloop
> > detection, but this happens before the targets get checked/validated.
> >
> > Thus we also need to check for verdict presence here, else t->verdict
> > can point right after a blob.
> >
> > Spotted with UBSAN while testing malformed blobs.
> 
> This breaks iptables on PPC32.

Yes, we got bug report for arm32, I'm sorry about this -- only 32bit
platform I tested was i686 and that only needs 4byte alignment for u64.

This fix should help:

https://git.kernel.org/cgit/linux/kernel/git/pablo/nf.git/commit/?id=7b7eba0f3515fca3296b8881d583f7c1042f5226