syzbot
KASAN: use-after-free Read in ext4_xattr_set_entry (2)
Status:
fixed on 2021/10/13 07:23
Reported-by: syzbot+b0fe9558904a8bb778ac@syzkaller.appspotmail.com
Fix commit:
a54c4613dac1
ext4: fix race writing to an inline_data file while its xattrs are changing
First crash: 2249d, last: 1791d
▶
▼
Similar bugs (28)
| Kernel |
Title |
Rank
🛈
|
Repro |
Cause bisect |
Fix bisect |
Count |
Last |
Reported |
Patched |
Status |
| linux-4.14 |
KASAN: use-after-free Read in ext4_xattr_set_entry (3)
|
19 |
syz, C |
|
error |
1 |
1625d |
2110d
|
0/1 |
upstream: reported C repro on 2020/10/28 15:08
|
| android-5-15 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry (2)
origin:lts
|
19 |
syz, C |
|
|
191 |
7h58m |
401d
|
0/2 |
upstream: reported C repro on 2025/07/03 01:48
|
| android-414 |
KASAN: use-after-free Read in ext4_xattr_set_entry (2)
|
19 |
|
|
|
6 |
2473d |
2528d
|
0/1 |
auto-closed as invalid on 2020/02/28 13:35
|
| linux-4.14 |
KASAN: use-after-free Read in ext4_xattr_set_entry (2)
|
19 |
|
|
|
1 |
2329d |
2329d
|
0/1 |
auto-closed as invalid on 2020/07/21 03:20
|
| upstream |
KASAN: use-after-free Read in ext4_xattr_set_entry
ext4
|
19 |
|
|
|
1 |
2934d |
2934d
|
0/29 |
closed as invalid on 2018/07/29 11:55
|
| upstream |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
prio:high
ext4
|
22 |
syz, C |
error |
|
7866 |
15h47m |
685d
|
0/29 |
upstream: reported C repro on 2024/09/22 00:16
|
| android-414 |
KASAN: use-after-free Read in ext4_xattr_set_entry
|
19 |
|
|
|
4 |
2780d |
2673d
|
0/1 |
auto-closed as invalid on 2019/06/26 01:15
|
| upstream |
KASAN: use-after-free Read in ext4_xattr_set_entry (5)
ext4
|
19 |
|
|
|
2 |
1475d |
1533d
|
0/29 |
auto-obsoleted due to no activity on 2022/11/22 17:19
|
| linux-5.15 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
|
19 |
syz, C |
|
error |
65 |
14d |
511d
|
0/3 |
upstream: reported C repro on 2025/03/15 11:50
|
| upstream |
KASAN: use-after-free Read in ext4_xattr_set_entry (3)
ext4
|
19 |
|
|
|
4 |
2225d |
2343d
|
0/29 |
auto-closed as invalid on 2020/11/02 08:32
|
| linux-4.19 |
KASAN: use-after-free Read in ext4_xattr_set_entry
|
19 |
syz |
|
done |
10 |
2352d |
2600d
|
1/1 |
fixed on 2020/03/30 09:03
|
| upstream |
KASAN: use-after-free Read in ext4_xattr_set_entry (4)
ext4
|
22 |
syz, C |
error |
done |
21 |
1629d |
2016d
|
20/29 |
fixed on 2022/03/28 10:17
|
| upstream |
KASAN: use-after-free Read in ext4_xattr_set_entry (2)
ext4
|
19 |
syz, C |
done |
|
19 |
2427d |
2836d
|
15/29 |
fixed on 2020/02/14 01:19
|
| android-54 |
KASAN: use-after-free Read in ext4_xattr_set_entry
|
19 |
|
|
|
6 |
2192d |
2373d
|
0/2 |
auto-closed as invalid on 2020/12/04 21:44
|
| linux-6.1 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
missing-backport
origin:lts-only
|
21 |
syz, C |
|
inconclusive |
1058 |
15d |
1177d
|
0/3 |
upstream: reported C repro on 2023/05/19 08:42
|
| android-5-10 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
|
19 |
syz, C |
|
inconclusive |
265 |
5d15h |
1053d
|
0/2 |
upstream: reported C repro on 2023/09/20 02:40
|
| linux-4.14 |
KASAN: use-after-free Read in ext4_xattr_set_entry
|
19 |
syz, C |
|
done |
9 |
2381d |
2473d
|
1/1 |
fixed on 2020/03/01 21:06
|
| android-6-1 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
origin:lts
|
21 |
syz, C |
|
|
1013 |
2d10h |
817d
|
0/2 |
upstream: reported C repro on 2024/05/13 18:18
|
| android-5-15 |
general protection fault in ext4_xattr_set_entry
|
2 |
syz, C |
error |
|
1 |
1255d |
1335d
|
2/2 |
fixed on 2023/03/28 12:29
|
| android-5-15 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
|
17 |
|
|
|
1 |
1146d |
1146d
|
0/2 |
auto-obsoleted due to no activity on 2023/09/17 07:02
|
| android-5-10 |
general protection fault in ext4_xattr_set_entry (4)
|
2 |
syz, C |
error |
|
62 |
1158d |
1187d
|
2/2 |
fixed on 2023/06/07 17:22
|
| android-5-10 |
general protection fault in ext4_xattr_set_entry (2)
ext4
|
2 |
syz, C |
error |
|
423 |
1193d |
1393d
|
2/2 |
fixed on 2023/05/03 13:06
|
| android-54 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
ext4
|
17 |
syz, C |
|
|
14 |
1200d |
1965d
|
0/2 |
auto-obsoleted due to no activity on 2023/08/23 09:06
|
| android-5-10 |
general protection fault in ext4_xattr_set_entry (3)
|
2 |
syz, C |
error |
|
9 |
1189d |
1191d
|
2/2 |
fixed on 2023/05/08 19:06
|
| linux-6.6 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
origin:upstream
missing-backport
|
17 |
syz, C |
|
inconclusive |
1398 |
63d |
417d
|
0/2 |
upstream: reported C repro on 2025/06/17 02:45
|
| android-5-10 |
general protection fault in ext4_xattr_set_entry
|
2 |
syz, C |
error |
|
2 |
1416d |
1430d
|
0/2 |
closed as invalid on 2022/09/26 18:30
|
| linux-4.14 |
KASAN: out-of-bounds Read in ext4_xattr_set_entry
|
17 |
syz, C |
|
error |
2 |
1430d |
1944d
|
0/1 |
upstream: reported C repro on 2021/04/12 14:20
|
| android-5-10 |
general protection fault in ext4_xattr_set_entry (5)
|
2 |
syz, C |
done |
|
11 |
1155d |
1157d
|
2/2 |
fixed on 2023/06/13 02:27
|
▶
▼
Fix bisection attempts (12)
Sample crash report:
EXT4-fs (loop0): mounted filesystem without journal. Opts: ,errors=continue
EXT4-fs error (device loop0): ext4_mb_generate_buddy:744: group 0, block bitmap and bg descriptor inconsistent: 50 vs 25 free clusters
==================================================================
BUG: KASAN: out-of-bounds in memmove include/linux/string.h:392 [inline]
BUG: KASAN: out-of-bounds in ext4_xattr_set_entry+0x2562/0x3750 fs/ext4/xattr.c:1733
Read of size 18446744073709551600 at addr ffff8880abc820d4 by task syz-executor288/8103
CPU: 1 PID: 8103 Comm: syz-executor288 Not tainted 4.19.186-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x1fc/0x2ef lib/dump_stack.c:118
print_address_description.cold+0x54/0x219 mm/kasan/report.c:256
kasan_report_error.cold+0x8a/0x1b9 mm/kasan/report.c:354
kasan_report+0x8f/0xa0 mm/kasan/report.c:412
memmove+0x20/0x50 mm/kasan/kasan.c:293
memmove include/linux/string.h:392 [inline]
ext4_xattr_set_entry+0x2562/0x3750 fs/ext4/xattr.c:1733
ext4_xattr_ibody_inline_set+0x81/0x2a0 fs/ext4/xattr.c:2222
ext4_destroy_inline_data_nolock+0x22d/0x4f0 fs/ext4/inline.c:434
ext4_convert_inline_data_nolock+0x145/0xd10 fs/ext4/inline.c:1207
ext4_convert_inline_data+0x347/0x3a0 fs/ext4/inline.c:2027
ext4_fallocate+0x137/0x2150 fs/ext4/extents.c:4956
vfs_fallocate+0x487/0x9a0 fs/open.c:308
ksys_fallocate fs/open.c:331 [inline]
__do_sys_fallocate fs/open.c:339 [inline]
__se_sys_fallocate fs/open.c:337 [inline]
__x64_sys_fallocate+0xcf/0x140 fs/open.c:337
do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x44a649
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f6a6cc272f8 EFLAGS: 00000246 ORIG_RAX: 000000000000011d
RAX: ffffffffffffffda RBX: 00000000004cc410 RCX: 000000000044a649
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000007
RBP: 000000000049c0c4 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000010000101 R11: 0000000000000246 R12: 000000000049b0c0
R13: 0030656c69662f2e R14: e5d26e84aa4cf3c6 R15: 00000000004cc418
The buggy address belongs to the page:
page:ffffea0002af2080 count:2 mapcount:0 mapping:ffff8880ae106b60 index:0x8
flags: 0xfff0000001107c(referenced|uptodate|dirty|lru|active|private|mappedtodisk)
raw: 00fff0000001107c ffffea0002641888 ffffea0002624d08 ffff8880ae106b60
raw: 0000000000000008 ffff88808df34000 00000002ffffffff ffff8880b59f88c0
page dumped because: kasan: bad access detected
page->mem_cgroup:ffff8880b59f88c0
Memory state around the buggy address:
ffff8880abc81f80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ffff8880abc82000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>ffff8880abc82080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
^
ffff8880abc82100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ffff8880abc82180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
==================================================================
* Struck through repros no longer work on HEAD.