]> git.baikalelectronics.ru Git - kernel.git/commit
net: Use netlink_ns_capable to verify the permisions of netlink messages
authorEric W. Biederman <ebiederm@xmission.com>
Wed, 23 Apr 2014 21:29:27 +0000 (14:29 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 24 Apr 2014 17:44:54 +0000 (13:44 -0400)
commit3d0dd366168e7c58c51cd407aa1821dab0a284c0
tree85d43e6c5d8b10fb79fcb9c402217f8eb54bbe12
parent129bf03c1c0b4cdb7379fefaa3ffafb129fcf29e
net: Use netlink_ns_capable to verify the permisions of netlink messages

It is possible by passing a netlink socket to a more privileged
executable and then to fool that executable into writing to the socket
data that happens to be valid netlink message to do something that
privileged executable did not intend to do.

To keep this from happening replace bare capable and ns_capable calls
with netlink_capable, netlink_net_calls and netlink_ns_capable calls.
Which act the same as the previous calls except they verify that the
opener of the socket had the desired permissions as well.

Reported-by: Andy Lutomirski <luto@amacapital.net>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 files changed:
crypto/crypto_user.c
drivers/connector/cn_proc.c
drivers/scsi/scsi_netlink.c
kernel/audit.c
net/can/gw.c
net/core/rtnetlink.c
net/dcb/dcbnl.c
net/decnet/dn_dev.c
net/decnet/dn_fib.c
net/decnet/netfilter/dn_rtmsg.c
net/netfilter/nfnetlink.c
net/netlink/genetlink.c
net/packet/diag.c
net/phonet/pn_netlink.c
net/sched/act_api.c
net/sched/cls_api.c
net/sched/sch_api.c
net/tipc/netlink.c
net/xfrm/xfrm_user.c