Gavrilov Ilia
44a88650ba
calipso: fix memory leak in netlbl_calipso_add_pass()
...
[ Upstream commit ec4e9d630a64df500641892f4e259e8149594a99 ]
If IPv6 support is disabled at boot (ipv6.disable=1),
the calipso_init() -> netlbl_calipso_ops_register() function isn't called,
and the netlbl_calipso_ops_get() function always returns NULL.
In this case, the netlbl_calipso_add_pass() function allocates memory
for the doi_def variable but doesn't free it with the calipso_doi_free().
BUG: memory leak
unreferenced object 0xffff888011d68180 (size 64):
comm "syz-executor.1", pid 10746, jiffies 4295410986 (age 17.928s)
hex dump (first 32 bytes):
00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
backtrace:
[<...>] kmalloc include/linux/slab.h:552 [inline]
[<...>] netlbl_calipso_add_pass net/netlabel/netlabel_calipso.c:76 [inline]
[<...>] netlbl_calipso_add+0x22e/0x4f0 net/netlabel/netlabel_calipso.c:111
[<...>] genl_family_rcv_msg_doit+0x22f/0x330 net/netlink/genetlink.c:739
[<...>] genl_family_rcv_msg net/netlink/genetlink.c:783 [inline]
[<...>] genl_rcv_msg+0x341/0x5a0 net/netlink/genetlink.c:800
[<...>] netlink_rcv_skb+0x14d/0x440 net/netlink/af_netlink.c:2515
[<...>] genl_rcv+0x29/0x40 net/netlink/genetlink.c:811
[<...>] netlink_unicast_kernel net/netlink/af_netlink.c:1313 [inline]
[<...>] netlink_unicast+0x54b/0x800 net/netlink/af_netlink.c:1339
[<...>] netlink_sendmsg+0x90a/0xdf0 net/netlink/af_netlink.c:1934
[<...>] sock_sendmsg_nosec net/socket.c:651 [inline]
[<...>] sock_sendmsg+0x157/0x190 net/socket.c:671
[<...>] ____sys_sendmsg+0x712/0x870 net/socket.c:2342
[<...>] ___sys_sendmsg+0xf8/0x170 net/socket.c:2396
[<...>] __sys_sendmsg+0xea/0x1b0 net/socket.c:2429
[<...>] do_syscall_64+0x30/0x40 arch/x86/entry/common.c:46
[<...>] entry_SYSCALL_64_after_hwframe+0x61/0xc6
Found by InfoTeCS on behalf of Linux Verification Center
(linuxtesting.org) with Syzkaller
Fixes: cb72d38211ea ("netlabel: Initial support for the CALIPSO netlink protocol.")
Signed-off-by: Gavrilov Ilia <Ilia.Gavrilov@infotecs.ru>
[PM: merged via the LSM tree at Jakub Kicinski request]
Signed-off-by: Paul Moore <paul@paul-moore.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-25 14:37:40 -08:00
..
2021-09-15 09:50:34 +02:00
2024-01-05 15:12:29 +01:00
2023-01-14 10:16:18 +01:00
2024-01-05 15:12:24 +01:00
2023-12-20 15:44:29 +01:00
2023-12-20 15:44:28 +01:00
2022-06-22 14:13:17 +02:00
2023-12-20 15:44:28 +01:00
2024-01-05 15:12:31 +01:00
2023-01-14 10:15:31 +01:00
2021-07-14 16:56:29 +02:00
2023-11-28 16:54:54 +00:00
2023-03-17 08:45:11 +01:00
2023-11-08 17:30:51 +01:00
2023-10-25 11:54:15 +02:00
2024-01-25 14:37:37 -08:00
2023-08-11 11:57:50 +02:00
2023-11-20 11:06:55 +01:00
2023-06-21 15:45:38 +02:00
2024-01-15 18:48:03 +01:00
2023-07-27 08:44:10 +02:00
2023-01-24 07:19:55 +01:00
2023-11-20 11:06:55 +01:00
2022-11-03 23:57:51 +09:00
2024-01-05 15:12:24 +01:00
2023-12-20 15:44:28 +01:00
2024-01-15 18:48:07 +01:00
2023-03-22 13:30:00 +01:00
2023-09-19 12:20:30 +02:00
2023-08-26 15:26:51 +02:00
2023-10-10 21:53:38 +02:00
2022-04-27 13:53:50 +02:00
2023-11-20 11:06:55 +01:00
2024-01-05 15:12:23 +01:00
2022-12-14 11:32:01 +01:00
2023-02-22 12:55:58 +01:00
2024-01-25 14:37:35 -08:00
2023-11-28 16:55:00 +00:00
2024-01-15 18:48:07 +01:00
2024-01-25 14:37:40 -08:00
2023-12-13 18:27:06 +01:00
2023-09-19 12:20:10 +02:00
2024-01-15 18:48:03 +01:00
2023-05-30 12:57:52 +01:00
2023-02-22 12:55:57 +01:00
2023-12-13 18:27:03 +01:00
2022-01-11 15:25:01 +01:00
2023-12-13 18:27:06 +01:00
2024-01-25 14:37:38 -08:00
2023-10-25 11:54:13 +02:00
2024-01-05 15:12:28 +01:00
2024-01-05 15:12:24 +01:00
2023-05-17 11:48:11 +02:00
2024-01-15 18:48:04 +01:00
2023-10-10 21:53:39 +02:00
2023-12-08 08:46:08 +01:00
2021-11-18 14:04:27 +01:00
2023-11-28 16:54:53 +00:00
2023-11-28 16:54:54 +00:00
2024-01-15 18:48:07 +01:00
2023-09-19 12:20:26 +02:00
2023-12-20 15:44:29 +01:00
2024-01-05 15:12:27 +01:00
2023-02-15 17:22:15 +01:00
2023-07-27 08:44:09 +02:00
2023-10-25 11:54:19 +02:00
2021-06-18 10:00:06 +02:00
2023-06-21 15:45:38 +02:00
2023-06-21 15:45:38 +02:00
2024-01-15 18:48:04 +01:00