From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org,
syzbot+da4494182233c23a5fcf@syzkaller.appspotmail.com,
Florian Westphal <fw@strlen.de>,
Pablo Neira Ayuso <pablo@netfilter.org>
Subject: [PATCH 4.9 28/32] netfilter: x_tables: initialise match/target check parameter struct
Date: Mon, 16 Jul 2018 09:36:36 +0200 [thread overview]
Message-ID: <20180716073507.976113962@linuxfoundation.org> (raw)
In-Reply-To: <20180716073504.433996952@linuxfoundation.org>
4.9-stable review patch. If anyone has any objections, please let me know.
------------------
From: Florian Westphal <fw@strlen.de>
commit c568503ef02030f169c9e19204def610a3510918 upstream.
syzbot reports following splat:
BUG: KMSAN: uninit-value in ebt_stp_mt_check+0x24b/0x450
net/bridge/netfilter/ebt_stp.c:162
ebt_stp_mt_check+0x24b/0x450 net/bridge/netfilter/ebt_stp.c:162
xt_check_match+0x1438/0x1650 net/netfilter/x_tables.c:506
ebt_check_match net/bridge/netfilter/ebtables.c:372 [inline]
ebt_check_entry net/bridge/netfilter/ebtables.c:702 [inline]
The uninitialised access is
xt_mtchk_param->nft_compat
... which should be set to 0.
Fix it by zeroing the struct beforehand, same for tgchk.
ip(6)tables targetinfo uses c99-style initialiser, so no change
needed there.
Reported-by: syzbot+da4494182233c23a5fcf@syzkaller.appspotmail.com
Fixes: 55917a21d0cc0 ("netfilter: x_tables: add context to know if extension runs from nft_compat")
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
net/bridge/netfilter/ebtables.c | 2 ++
net/ipv4/netfilter/ip_tables.c | 1 +
net/ipv6/netfilter/ip6_tables.c | 1 +
3 files changed, 4 insertions(+)
--- a/net/bridge/netfilter/ebtables.c
+++ b/net/bridge/netfilter/ebtables.c
@@ -704,6 +704,8 @@ ebt_check_entry(struct ebt_entry *e, str
}
i = 0;
+ memset(&mtpar, 0, sizeof(mtpar));
+ memset(&tgpar, 0, sizeof(tgpar));
mtpar.net = tgpar.net = net;
mtpar.table = tgpar.table = name;
mtpar.entryinfo = tgpar.entryinfo = e;
--- a/net/ipv4/netfilter/ip_tables.c
+++ b/net/ipv4/netfilter/ip_tables.c
@@ -554,6 +554,7 @@ find_check_entry(struct ipt_entry *e, st
return -ENOMEM;
j = 0;
+ memset(&mtpar, 0, sizeof(mtpar));
mtpar.net = net;
mtpar.table = name;
mtpar.entryinfo = &e->ip;
--- a/net/ipv6/netfilter/ip6_tables.c
+++ b/net/ipv6/netfilter/ip6_tables.c
@@ -584,6 +584,7 @@ find_check_entry(struct ip6t_entry *e, s
return -ENOMEM;
j = 0;
+ memset(&mtpar, 0, sizeof(mtpar));
mtpar.net = net;
mtpar.table = name;
mtpar.entryinfo = &e->ipv6;
next prev parent reply other threads:[~2018-07-16 7:36 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-16 7:36 [PATCH 4.9 00/32] 4.9.113-stable review Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 01/32] nvme: validate admin queue before unquiesce Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 02/32] MIPS: Call dump_stack() from show_regs() Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 03/32] MIPS: Use async IPIs for arch_trigger_cpumask_backtrace() Greg Kroah-Hartman
2018-07-16 9:29 ` 陈华才
2018-07-16 9:40 ` [PATCH " Greg Kroah-Hartman
2018-07-16 9:46 ` [PATCH 4.9 03/32] MIPS: Use async IPIs forarch_trigger_cpumask_backtrace() 陈华才
2018-07-16 10:46 ` Greg Kroah-Hartman
2018-07-16 18:34 ` Greg Kroah-Hartman
2018-07-17 6:53 ` [PATCH 4.9 03/32] MIPS: Use async IPIsforarch_trigger_cpumask_backtrace() 陈华才
2018-07-17 7:20 ` Greg Kroah-Hartman
2018-07-17 8:14 ` [PATCH 4.9 03/32] MIPS: Use asyncIPIsforarch_trigger_cpumask_backtrace() 陈华才
2018-07-17 16:57 ` [PATCH 4.9 Backport] MIPS: Use async IPIs for arch_trigger_cpumask_backtrace() Paul Burton
2018-07-16 7:36 ` [PATCH 4.9 04/32] MIPS: Fix ioremap() RAM check Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 05/32] mmc: dw_mmc: fix card threshold control configuration Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 06/32] ibmasm: dont write out of bounds in read handler Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 07/32] ata: Fix ZBC_OUT command block check Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 08/32] ata: Fix ZBC_OUT all bit handling Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 09/32] vmw_balloon: fix inflation with batching Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 10/32] ahci: Disable LPM on Lenovo 50 series laptops with a too old BIOS Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 11/32] USB: serial: ch341: fix type promotion bug in ch341_control_in() Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 12/32] USB: serial: cp210x: add another USB ID for Qivicon ZigBee stick Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 13/32] USB: serial: keyspan_pda: fix modem-status error handling Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 14/32] USB: yurex: fix out-of-bounds uaccess in read handler Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 15/32] USB: serial: mos7840: fix status-register error handling Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 16/32] usb: quirks: add delay quirks for Corsair Strafe Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 17/32] xhci: xhci-mem: off by one in xhci_stream_id_to_ring() Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 18/32] HID: usbhid: add quirk for innomedia INNEX GENESIS/ATARI adapter Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 19/32] Fix up non-directory creation in SGID directories Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 20/32] ALSA: hda - Handle pm failure during hotplug Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 21/32] fs, elf: make sure to page align bss in load_elf_library Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 22/32] tools build: fix # escaping in .cmd files for future Make Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 23/32] i2c: tegra: Fix NACK error handling Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 24/32] iw_cxgb4: correctly enforce the max reg_mr depth Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 25/32] nvme-pci: Remap CMB SQ entries on every controller reset Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 26/32] uprobes/x86: Remove incorrect WARN_ON() in uprobe_init_insn() Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 27/32] netfilter: nf_queue: augment nfqa_cfg_policy Greg Kroah-Hartman
2018-07-16 7:36 ` Greg Kroah-Hartman [this message]
2018-07-16 7:36 ` [PATCH 4.9 29/32] loop: add recursion validation to LOOP_CHANGE_FD Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 30/32] PM / hibernate: Fix oops at snapshot_write() Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 31/32] RDMA/ucm: Mark UCM interface as BROKEN Greg Kroah-Hartman
2018-07-16 7:36 ` [PATCH 4.9 32/32] loop: remember whether sysfs_create_group() was done Greg Kroah-Hartman
2018-07-16 13:55 ` [PATCH 4.9 00/32] 4.9.113-stable review Nathan Chancellor
2018-07-17 7:00 ` Greg Kroah-Hartman
2018-07-16 16:25 ` Guenter Roeck
2018-07-16 16:31 ` Greg Kroah-Hartman
2018-07-16 16:41 ` Guenter Roeck
2018-07-16 17:43 ` Greg Kroah-Hartman
2018-07-16 18:02 ` Guenter Roeck
2018-07-16 18:31 ` Greg Kroah-Hartman
2018-07-16 18:33 ` Greg Kroah-Hartman
2018-07-16 19:37 ` Guenter Roeck
2018-07-17 7:00 ` Greg Kroah-Hartman
2018-07-17 8:05 ` Naresh Kamboju
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=20180716073507.976113962@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=fw@strlen.de \
--cc=linux-kernel@vger.kernel.org \
--cc=pablo@netfilter.org \
--cc=stable@vger.kernel.org \
--cc=syzbot+da4494182233c23a5fcf@syzkaller.appspotmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).