Skip to contentSkip to conversation

Patch "openvswitch: fix potential out of bound access in parse_ct" has been added to the 4.9-stable tree

PATCH [email protected] 1 participant 1 message Aug 8, 2017

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

openvswitch: fix potential out of bound access in parse_ct

to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
openvswitch-fix-potential-out-of-bound-access-in-parse_ct.patch
and it can be found in the queue-4.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From foo@baz Tue Aug 8 16:27:53 PDT 2017

From: Liping Zhang <[email protected]>
Date: Sun, 23 Jul 2017 17:52:23 +0800
Subject: openvswitch: fix potential out of bound access in parse_ct

From: Liping Zhang <[email protected]>

[ Upstream commit 69ec932e364b1ba9c3a2085fe96b76c8a3f71e7c ]

Before the 'type' is validated, we shouldn't use it to fetch the ovs_ct_attr_lens's minlen and maxlen, else, out of bound access may happen.

Fixes 7f8a436eaa2c ("openvswitch: Add conntrack action")
---
 net/openvswitch/conntrack.c |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
net/openvswitch/conntrack.c +5 -2
@@ -1088,8 +1088,8 @@ static int parse_ct(const struct nlattr
 
 	nla_for_each_nested(a, attr, rem) {
 		int type = nla_type(a);
-		int maxlen = ovs_ct_attr_lens[type].maxlen;
-		int minlen = ovs_ct_attr_lens[type].minlen;
+		int maxlen;
+		int minlen;
 
 		if (type > OVS_CT_ATTR_MAX) {
 			OVS_NLERR(log,
@@ -1097,6 +1097,9 @@ static int parse_ct(const struct nlattr
 				  type, OVS_CT_ATTR_MAX);
 			return -EINVAL;
 		}
+
+		maxlen = ovs_ct_attr_lens[type].maxlen;
+		minlen = ovs_ct_attr_lens[type].minlen;
 		if (nla_len(a) < minlen || nla_len(a) > maxlen) {
 			OVS_NLERR(log,
 				  "Conntrack attr type has unexpected length (type=%d, length=%d, expected=%d)",

Patches currently in stable-queue which might be from [email protected] are

queue-4.9/openvswitch-fix-potential-out-of-bound-access-in-parse_ct.patch