summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDivya Chellam <divya.chellam@windriver.com>2025-02-11 11:03:30 +0000
committerAnuj Mittal <anuj.mittal@intel.com>2025-02-13 23:27:58 +0800
commit2b03da4eba7b5ffa6dc8dbe79c0413f4989c7b8d (patch)
tree88e3b3df2e186cff56012015233952bd2578f12f
parente83a76ee92970276b9fb6357aa9851b035dd0bff (diff)
downloadmeta-dpdk-2b03da4eba7b5ffa6dc8dbe79c0413f4989c7b8d.tar.gz
dpdk: fix CVE-2024-11614scarthgap
An out-of-bounds read vulnerability was found in DPDK's Vhost library checksum offload feature. This issue enables an untrusted or compromised guest to crash the hypervisor's vSwitch by forging Virtio descriptors to cause out-of-bounds reads. This flaw allows an attacker with a malicious VM using a virtio driver to cause the vhost-user side to crash by sending a packet with a Tx checksum offload request and an invalid csum_start offset. Reference: https://security-tracker.debian.org/tracker/CVE-2024-11614 Upstream-patch: https://git.dpdk.org/dpdk/commit/?id=4dc4e33ffa108e945fc8a1e2bbc7819791faa61e Signed-off-by: Divya Chellam <divya.chellam@windriver.com> Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-rw-r--r--recipes-extended/dpdk/dpdk/CVE-2024-11614.patch44
-rw-r--r--recipes-extended/dpdk/dpdk_23.11.1.bb4
2 files changed, 47 insertions, 1 deletions
diff --git a/recipes-extended/dpdk/dpdk/CVE-2024-11614.patch b/recipes-extended/dpdk/dpdk/CVE-2024-11614.patch
new file mode 100644
index 0000000..1cf5507
--- /dev/null
+++ b/recipes-extended/dpdk/dpdk/CVE-2024-11614.patch
@@ -0,0 +1,44 @@
1From 4dc4e33ffa108e945fc8a1e2bbc7819791faa61e Mon Sep 17 00:00:00 2001
2From: Olivier Matz <olivier.matz@6wind.com>
3Date: Thu, 28 Nov 2024 12:09:56 +0100
4Subject: [PATCH] net/virtio: fix Rx checksum calculation
5
6If hdr->csum_start is larger than packet length, the len argument passed
7to rte_raw_cksum_mbuf() overflows and causes a segmentation fault.
8
9Ignore checksum computation in this case.
10
11CVE-2024-11614
12
13Fixes: ca7036b4af3a ("vhost: fix offload flags in Rx path")
14
15Signed-off-by: Maxime Gouin <maxime.gouin@6wind.com>
16Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
17Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
18
19CVE: CVE-2024-11614
20
21Upstream-Status: Backport [https://git.dpdk.org/dpdk/commit/?id=4dc4e33ffa108e945fc8a1e2bbc7819791faa61e]
22
23Signed-off-by: Divya Chellam <divya.chellam@windriver.com>
24---
25 lib/vhost/virtio_net.c | 3 +++
26 1 file changed, 3 insertions(+)
27
28diff --git a/lib/vhost/virtio_net.c b/lib/vhost/virtio_net.c
29index 895a79cf51..058b5842f2 100644
30--- a/lib/vhost/virtio_net.c
31+++ b/lib/vhost/virtio_net.c
32@@ -2831,6 +2831,9 @@ vhost_dequeue_offload(struct virtio_net *dev, struct virtio_net_hdr *hdr,
33 */
34 uint16_t csum = 0, off;
35
36+ if (hdr->csum_start >= rte_pktmbuf_pkt_len(m))
37+ return;
38+
39 if (rte_raw_cksum_mbuf(m, hdr->csum_start,
40 rte_pktmbuf_pkt_len(m) - hdr->csum_start, &csum) < 0)
41 return;
42--
432.40.0
44
diff --git a/recipes-extended/dpdk/dpdk_23.11.1.bb b/recipes-extended/dpdk/dpdk_23.11.1.bb
index e7a0a23..4c6d234 100644
--- a/recipes-extended/dpdk/dpdk_23.11.1.bb
+++ b/recipes-extended/dpdk/dpdk_23.11.1.bb
@@ -1,6 +1,8 @@
1include dpdk.inc 1include dpdk.inc
2 2
3SRC_URI += " file://0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch " 3SRC_URI += " file://0001-config-meson-get-cpu_instruction_set-from-meson-opti.patch \
4 file://CVE-2024-11614.patch \
5 "
4 6
5STABLE = "-stable" 7STABLE = "-stable"
6BRANCH = "23.11" 8BRANCH = "23.11"