In the Linux kernel, the following vulnerability has been resolved:
netfilter: nf_tables: clean up hook list when offload flags check fails
splice back the hook list so nft_chain_release_hook() has a chance to
release the hooks.
BUG: memory leak
unreferenced object 0xffff88810180b100 (size 96):
comm "syz-executor133", pid 3619, jiffies 4294945714 (age 12.690s)
hex dump (first 32 bytes):
28 64 23 02 81 88 ff ff 28 64 23 02 81 88 ff ff (d#.....(d#.....
90 a8 aa 83 ff ff ff ff 00 00 b5 0f 81 88 ff ff ................
backtrace:
[] kmalloc include/linux/slab.h:600 [inline]
[] nft_netdev_hook_alloc+0x3b/0xc0 net/netfilter/nf_tables_api.c:1901
[] nft_chain_parse_netdev net/netfilter/nf_tables_api.c:1998 [inline]
[] nft_chain_parse_hook+0x33a/0x530 net/netfilter/nf_tables_api.c:2073
[] nf_tables_addchain.constprop.0+0x10b/0x950 net/netfilter/nf_tables_api.c:2218
[] nf_tables_newchain+0xa8b/0xc60 net/netfilter/nf_tables_api.c:2593
[] nfnetlink_rcv_batch+0xa46/0xd20 net/netfilter/nfnetlink.c:517
[] nfnetlink_rcv_skb_batch net/netfilter/nfnetlink.c:638 [inline]
[] nfnetlink_rcv+0x1f9/0x220 net/netfilter/nfnetlink.c:656
[] netlink_unicast_kernel net/netlink/af_netlink.c:1319 [inline]
[] netlink_unicast+0x397/0x4c0 net/netlink/af_netlink.c:1345
[] netlink_sendmsg+0x396/0x710 net/netlink/af_netlink.c:1921
[] sock_sendmsg_nosec net/socket.c:714 [inline]
[] sock_sendmsg+0x56/0x80 net/socket.c:734
[] ____sys_sendmsg+0x36c/0x390 net/socket.c:2482
[] ___sys_sendmsg+0xa8/0x110 net/socket.c:2536
[] __sys_sendmsg+0x88/0x100 net/socket.c:2565
[] do_syscall_x64 arch/x86/entry/common.c:50 [inline]
[] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
[] entry_SYSCALL_64_after_hwframe+0x63/0xcd
References
In the Linux kernel, the following vulnerability has been resolved:
netfilter: nf_tables: clean up hook list when offload flags check fails
splice back the hook list so nft_chain_release_hook() has a chance to
release the hooks.
BUG: memory leak
unreferenced object 0xffff88810180b100 (size 96):
comm "syz-executor133", pid 3619, jiffies 4294945714 (age 12.690s)
hex dump (first 32 bytes):
28 64 23 02 81 88 ff ff 28 64 23 02 81 88 ff ff (d#.....(d#.....
90 a8 aa 83 ff ff ff ff 00 00 b5 0f 81 88 ff ff ................
backtrace:
[] kmalloc include/linux/slab.h:600 [inline]
[] nft_netdev_hook_alloc+0x3b/0xc0 net/netfilter/nf_tables_api.c:1901
[] nft_chain_parse_netdev net/netfilter/nf_tables_api.c:1998 [inline]
[] nft_chain_parse_hook+0x33a/0x530 net/netfilter/nf_tables_api.c:2073
[] nf_tables_addchain.constprop.0+0x10b/0x950 net/netfilter/nf_tables_api.c:2218
[] nf_tables_newchain+0xa8b/0xc60 net/netfilter/nf_tables_api.c:2593
[] nfnetlink_rcv_batch+0xa46/0xd20 net/netfilter/nfnetlink.c:517
[] nfnetlink_rcv_skb_batch net/netfilter/nfnetlink.c:638 [inline]
[] nfnetlink_rcv+0x1f9/0x220 net/netfilter/nfnetlink.c:656
[] netlink_unicast_kernel net/netlink/af_netlink.c:1319 [inline]
[] netlink_unicast+0x397/0x4c0 net/netlink/af_netlink.c:1345
[] netlink_sendmsg+0x396/0x710 net/netlink/af_netlink.c:1921
[] sock_sendmsg_nosec net/socket.c:714 [inline]
[] sock_sendmsg+0x56/0x80 net/socket.c:734
[] ____sys_sendmsg+0x36c/0x390 net/socket.c:2482
[] ___sys_sendmsg+0xa8/0x110 net/socket.c:2536
[] __sys_sendmsg+0x88/0x100 net/socket.c:2565
[] do_syscall_x64 arch/x86/entry/common.c:50 [inline]
[] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
[] entry_SYSCALL_64_after_hwframe+0x63/0xcd
References