[PATCH] [47/106] net: tipc: fix information leak to userland

From: Andi Kleen
Date: Tue Apr 26 2011 - 17:29:34 EST


2.6.35-longterm review patch. If anyone has any objections, please let me know.

------------------
From: Kulikov Vasiliy <segooon@xxxxxxxxx>

commit 88f8a5e3e7defccd3925cabb1ee4d3994e5cdb52 upstream.

Structure sockaddr_tipc is copied to userland with padding bytes after
"id" field in union field "name" unitialized. It leads to leaking of
contents of kernel stack memory. We have to initialize them to zero.

Signed-off-by: Vasiliy Kulikov <segooon@xxxxxxxxx>
Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
Cc: Moritz Muehlenhoff <jmm@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>

---
net/tipc/socket.c | 1 +
1 file changed, 1 insertion(+)

Index: linux-2.6.35.y/net/tipc/socket.c
===================================================================
--- linux-2.6.35.y.orig/net/tipc/socket.c
+++ linux-2.6.35.y/net/tipc/socket.c
@@ -395,6 +395,7 @@ static int get_name(struct socket *sock,
struct sockaddr_tipc *addr = (struct sockaddr_tipc *)uaddr;
struct tipc_sock *tsock = tipc_sk(sock->sk);

+ memset(addr, 0, sizeof(*addr));
if (peer) {
if ((sock->state != SS_CONNECTED) &&
((peer != 2) || (sock->state != SS_DISCONNECTING)))
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/