Signed-off-by: jchzhou <zhoujiacheng@iscas.ac.cn> (cherry picked from commit e258642b09c628e0fe81795bf579905504edf8cf)
26 lines
777 B
Diff
26 lines
777 B
Diff
From 3292da1d4dafab2d18c7b750fa278bcc8a362d04 Mon Sep 17 00:00:00 2001
|
|
From: q66 <q66@chimera-linux.org>
|
|
Date: Wed, 20 Dec 2023 04:01:42 +0100
|
|
Subject: [PATCH] fix UB-ass UB in scmp_bpf_sim
|
|
|
|
---
|
|
tools/scmp_bpf_sim.c | 3 ++-
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/tools/scmp_bpf_sim.c b/tools/scmp_bpf_sim.c
|
|
index a381314..eeaa5bc 100644
|
|
--- a/tools/scmp_bpf_sim.c
|
|
+++ b/tools/scmp_bpf_sim.c
|
|
@@ -182,7 +182,8 @@ static void bpf_execute(const struct bpf_program *prg,
|
|
switch (code) {
|
|
case BPF_LD+BPF_W+BPF_ABS:
|
|
if (k < BPF_SYSCALL_MAX) {
|
|
- uint32_t val = *((uint32_t *)&sys_data_b[k]);
|
|
+ uint32_t val;
|
|
+ memcpy(&val, &sys_data_b[k], sizeof(val));
|
|
state.acc = ttoh32(arch, val);
|
|
} else
|
|
exit_error(ERANGE, ip_c);
|
|
--
|
|
2.43.0
|