Skip to contentSkip to conversation

FAILED: patch "[PATCH] net: socket: Fix potential spectre v1 gadget in" failed to apply to 4.14-stable tree

PATCH [email protected] 1 participant 1 message Aug 4, 2018

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer
#0 lore raw

The patch below does not apply to the 4.14-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

Quoted 1 line

From e978de7a6d382ec378830ca2cf38e902df0b6d84 Mon Sep 17 00:00:00 2001

From: Jeremy Cline <[email protected]>
Date: Fri, 27 Jul 2018 22:43:02 +0000
Subject: [PATCH] net: socket: Fix potential spectre v1 gadget in
sock_is_registered

'family' can be a user-controlled value, so sanitize it after the bounds check to avoid speculative out-of-bounds access.

net/socket.c +2 -1
index 4ac3b834cce9..8c24d5dc4bc8 100644
@@ -2690,7 +2690,8 @@ EXPORT_SYMBOL(sock_unregister);
 
 bool sock_is_registered(int family)
 {
-	return family < NPROTO && rcu_access_pointer(net_families[family]);
+	return family < NPROTO &&
+		rcu_access_pointer(net_families[array_index_nospec(family, NPROTO)]);
 }
 
 static int __init sock_init(void)