diff options
Diffstat (limited to '0006-netfilter-nft_payload-incorrect-arithmetics-when-fetching-vlan-header-bits.patch')
-rw-r--r-- | 0006-netfilter-nft_payload-incorrect-arithmetics-when-fetching-vlan-header-bits.patch | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/0006-netfilter-nft_payload-incorrect-arithmetics-when-fetching-vlan-header-bits.patch b/0006-netfilter-nft_payload-incorrect-arithmetics-when-fetching-vlan-header-bits.patch deleted file mode 100644 index ef401a9f86f0..000000000000 --- a/0006-netfilter-nft_payload-incorrect-arithmetics-when-fetching-vlan-header-bits.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 696e1a48b1a1b01edad542a1ef293665864a4dd0 Mon Sep 17 00:00:00 2001 -From: Pablo Neira Ayuso <pablo@netfilter.org> -Date: Wed, 11 Jan 2023 17:07:33 +0100 -Subject: netfilter: nft_payload: incorrect arithmetics when fetching VLAN header bits - -From: Pablo Neira Ayuso <pablo@netfilter.org> - -commit 696e1a48b1a1b01edad542a1ef293665864a4dd0 upstream. - -If the offset + length goes over the ethernet + vlan header, then the -length is adjusted to copy the bytes that are within the boundaries of -the vlan_ethhdr scratchpad area. The remaining bytes beyond ethernet + -vlan header are copied directly from the skbuff data area. - -Fix incorrect arithmetic operator: subtract, not add, the size of the -vlan header in case of double-tagged packets to adjust the length -accordingly to address CVE-2023-0179. - -Reported-by: Davide Ornaghi <d.ornaghi97@gmail.com> -Fixes: f6ae9f120dad ("netfilter: nft_payload: add C-VLAN support") -Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> ---- - net/netfilter/nft_payload.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/net/netfilter/nft_payload.c -+++ b/net/netfilter/nft_payload.c -@@ -63,7 +63,7 @@ nft_payload_copy_vlan(u32 *d, const stru - return false; - - if (offset + len > VLAN_ETH_HLEN + vlan_hlen) -- ethlen -= offset + len - VLAN_ETH_HLEN + vlan_hlen; -+ ethlen -= offset + len - VLAN_ETH_HLEN - vlan_hlen; - - memcpy(dst_u8, vlanh + offset - vlan_hlen, ethlen); - |