aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firmware/efi/efibc.c
diff options
context:
space:
mode:
authorHyunwoo Kim <imv4bel@gmail.com>2022-09-07 09:07:14 -0700
committerArd Biesheuvel <ardb@kernel.org>2022-09-07 18:23:56 +0200
commit9cb636b5f6a8cc6d1b50809ec8f8d33ae0c84c95 (patch)
treebd9589d71ff723e58ae7ef421691f7728e7e8e0c /drivers/firmware/efi/efibc.c
parentefi/x86: libstub: remove unused variable (diff)
downloadlinux-dev-9cb636b5f6a8cc6d1b50809ec8f8d33ae0c84c95.tar.xz
linux-dev-9cb636b5f6a8cc6d1b50809ec8f8d33ae0c84c95.zip
efi: capsule-loader: Fix use-after-free in efi_capsule_write
A race condition may occur if the user calls close() on another thread during a write() operation on the device node of the efi capsule. This is a race condition that occurs between the efi_capsule_write() and efi_capsule_flush() functions of efi_capsule_fops, which ultimately results in UAF. So, the page freeing process is modified to be done in efi_capsule_release() instead of efi_capsule_flush(). Cc: <stable@vger.kernel.org> # v4.9+ Signed-off-by: Hyunwoo Kim <imv4bel@gmail.com> Link: https://lore.kernel.org/all/20220907102920.GA88602@ubuntu/ Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Diffstat (limited to 'drivers/firmware/efi/efibc.c')
0 files changed, 0 insertions, 0 deletions