Go to file
Dongliang Mu 07db5e247a fs: hfsplus: fix UAF issue in hfsplus_put_super
The current hfsplus_put_super first calls hfs_btree_close on
sbi->ext_tree, then invokes iput on sbi->hidden_dir, resulting in an
use-after-free issue in hfsplus_release_folio.

As shown in hfsplus_fill_super, the error handling code also calls iput
before hfs_btree_close.

To fix this error, we move all iput calls before hfsplus_btree_close.

Note that this patch is tested on Syzbot.

Link: https://lkml.kernel.org/r/20230226124948.3175736-1-mudongliangabcd@gmail.com
Reported-by: syzbot+57e3e98f7e3b80f64d56@syzkaller.appspotmail.com
Tested-by: Dongliang Mu <mudongliangabcd@gmail.com>
Signed-off-by: Dongliang Mu <mudongliangabcd@gmail.com>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Muchun Song <songmuchun@bytedance.com>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: "Theodore Ts'o" <tytso@mit.edu>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2023-03-02 21:54:23 -08:00
arch kasan, x86: don't rename memintrinsics in uninstrumented files 2023-03-02 21:54:22 -08:00
block Driver core changes for 6.3-rc1 2023-02-24 12:58:55 -08:00
certs certs: don't try to update blacklist keys 2023-02-13 10:11:20 +02:00
crypto Networking changes for 6.3. 2023-02-21 18:24:12 -08:00
Documentation We have one small patch to the clk core this time around. It fixes a corner 2023-02-25 15:16:23 -08:00
drivers We have one small patch to the clk core this time around. It fixes a corner 2023-02-25 15:16:23 -08:00
fs fs: hfsplus: fix UAF issue in hfsplus_put_super 2023-03-02 21:54:23 -08:00
include mm/hwpoison: convert TTU_IGNORE_HWPOISON to TTU_HWPOISON 2023-02-27 17:00:14 -08:00
init There is no particular theme here - mainly quick hits all over the tree. 2023-02-23 17:55:40 -08:00
io_uring - Daniel Verkamp has contributed a memfd series ("mm/memfd: add 2023-02-23 17:09:35 -08:00
ipc Merge branch 'work.namespace' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2023-02-24 19:20:07 -08:00
kernel panic: fix the panic_print NMI backtrace setting 2023-03-02 21:54:23 -08:00
lib lib: parser: update documentation for match_NUMBER functions 2023-03-02 21:54:22 -08:00
LICENSES LICENSES: Add the copyleft-next-0.3.1 license 2022-11-08 15:44:01 +01:00
mm kasan: test: fix test for new meminstrinsic instrumentation 2023-03-02 21:54:22 -08:00
net TTY/Serial driver updates for 6.3-rc1 2023-02-24 12:17:14 -08:00
rust Rust changes for v6.3 2023-02-20 10:40:42 -08:00
samples VFIO updates for v6.3-rc1 2023-02-25 11:52:57 -08:00
scripts kasan: treat meminstrinsic as builtins in uninstrumented files 2023-03-02 21:54:22 -08:00
security powerpc updates for 6.3 2023-02-25 11:00:06 -08:00
sound soundwire updates for 6.3 2023-02-24 17:29:52 -08:00
tools virtio,vhost,vdpa: features, fixes 2023-02-25 11:48:02 -08:00
usr usr/gen_init_cpio.c: remove unnecessary -1 values from int file 2022-10-03 14:21:44 -07:00
virt KVM/riscv changes for 6.3 2023-02-15 12:33:28 -05:00
.clang-format iommufd for 6.2 2022-12-14 09:15:43 -08:00
.cocciconfig
.get_maintainer.ignore get_maintainer: add Alan to .get_maintainer.ignore 2022-08-20 15:17:44 -07:00
.gitattributes .gitattributes: use 'dts' diff driver for dts files 2019-12-04 19:44:11 -08:00
.gitignore .gitignore: ignore *.rpm 2022-12-30 17:22:14 +09:00
.mailmap mailmap: map Georgi Djakov's old Linaro address to his current one 2023-02-27 17:00:15 -08:00
.rustfmt.toml rust: add .rustfmt.toml 2022-09-28 09:02:20 +02:00
COPYING COPYING: state that all contributions really are covered by this file 2020-02-10 13:32:20 -08:00
CREDITS There is no particular theme here - mainly quick hits all over the tree. 2023-02-23 17:55:40 -08:00
Kbuild Kbuild updates for v6.1 2022-10-10 12:00:45 -07:00
Kconfig kbuild: ensure full rebuild when the compiler is updated 2020-05-12 13:28:33 +09:00
MAINTAINERS We have one small patch to the clk core this time around. It fixes a corner 2023-02-25 15:16:23 -08:00
Makefile Devicetree updates for v6.3: 2023-02-24 13:31:53 -08:00
README Drop all 00-INDEX files from Documentation/ 2018-09-09 15:08:58 -06:00

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.