binfmt_elf: Use elf_load() for interpreter
authorKees Cook <keescook@chromium.org>
Fri, 29 Sep 2023 03:24:31 +0000 (20:24 -0700)
committerKees Cook <keescook@chromium.org>
Fri, 29 Sep 2023 16:54:27 +0000 (09:54 -0700)
commit8b04d32678e3c46b8a738178e0e55918eaa3be17
treeac36398007ce897037fdc4b1cdeacfa8226a1e96
parent8ed2ef21ff564cf4a25c098ace510ee6513c9836
binfmt_elf: Use elf_load() for interpreter

Handle arbitrary memsz>filesz in interpreter ELF segments, instead of
only supporting it in the last segment (which is expected to be the
BSS).

Cc: Eric Biederman <ebiederm@xmission.com>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Christian Brauner <brauner@kernel.org>
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-mm@kvack.org
Reported-by: Pedro Falcato <pedro.falcato@gmail.com>
Closes: https://lore.kernel.org/lkml/20221106021657.1145519-1-pedro.falcato@gmail.com/
Tested-by: Pedro Falcato <pedro.falcato@gmail.com>
Signed-off-by: Sebastian Ott <sebott@redhat.com>
Link: https://lore.kernel.org/r/20230929032435.2391507-3-keescook@chromium.org
Signed-off-by: Kees Cook <keescook@chromium.org>
fs/binfmt_elf.c