net: fix infoleak in llc
The stack object “info” has a total size of 12 bytes. Its last byte is padding which is not initialized and leaked via “put_cmsg”. Signed-off-by: Kangjie Lu <kjlu@gatech.edu> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
1c021bb717
commit
b8670c09f3
|
@ -626,6 +626,7 @@ static void llc_cmsg_rcv(struct msghdr *msg, struct sk_buff *skb)
|
||||||
if (llc->cmsg_flags & LLC_CMSG_PKTINFO) {
|
if (llc->cmsg_flags & LLC_CMSG_PKTINFO) {
|
||||||
struct llc_pktinfo info;
|
struct llc_pktinfo info;
|
||||||
|
|
||||||
|
memset(&info, 0, sizeof(info));
|
||||||
info.lpi_ifindex = llc_sk(skb->sk)->dev->ifindex;
|
info.lpi_ifindex = llc_sk(skb->sk)->dev->ifindex;
|
||||||
llc_pdu_decode_dsap(skb, &info.lpi_sap);
|
llc_pdu_decode_dsap(skb, &info.lpi_sap);
|
||||||
llc_pdu_decode_da(skb, info.lpi_mac);
|
llc_pdu_decode_da(skb, info.lpi_mac);
|
||||||
|
|
Loading…
Reference in New Issue