Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a5ec6ae1 authored by Jann Horn's avatar Jann Horn Committed by Daniel Borkmann
Browse files

bpf: force strict alignment checks for stack pointers



Force strict alignment checks for stack pointers because the tracking of
stack spills relies on it; unaligned stack accesses can lead to corruption
of spilled registers, which is exploitable.

Fixes: f1174f77 ("bpf/verifier: rework value tracking")
Signed-off-by: default avatarJann Horn <jannh@google.com>
Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
parent ea25f914
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -1059,6 +1059,11 @@ static int check_ptr_alignment(struct bpf_verifier_env *env,
		break;
	case PTR_TO_STACK:
		pointer_desc = "stack ";
		/* The stack spill tracking logic in check_stack_write()
		 * and check_stack_read() relies on stack accesses being
		 * aligned.
		 */
		strict = true;
		break;
	default:
		break;