syzbot


KASAN: slab-out-of-bounds Write in hiddev_ioctl_usage

Status: fixed on 2021/10/13 19:27
Reported-by: syzbot+57acae826df68a4c5866@syzkaller.appspotmail.com
Fix commit: 851d0813ab80 HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage()
First crash: 1469d, last: 1450d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KASAN: slab-out-of-bounds Write in hiddev_ioctl_usage input usb C 279 1326d 1669d 15/26 fixed on 2020/09/25 01:17

Sample crash report:
==================================================================
BUG: KASAN: slab-out-of-bounds in hiddev_ioctl_usage+0x1764/0x1830 drivers/hid/usbhid/hiddev.c:528
Write of size 4 at addr ffff8881cd9eca58 by task syz-executor342/404

CPU: 1 PID: 404 Comm: syz-executor342 Not tainted 5.4.35-syzkaller-00685-gab5026515199 #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+0x14a/0x1ce lib/dump_stack.c:118
 print_address_description+0x93/0x620 mm/kasan/report.c:374
 __kasan_report+0x16d/0x1e0 mm/kasan/report.c:506
 kasan_report+0x34/0x60 mm/kasan/common.c:634
 hiddev_ioctl_usage+0x1764/0x1830 drivers/hid/usbhid/hiddev.c:528
 hiddev_ioctl+0x7a7/0x29a0 drivers/hid/usbhid/hiddev.c:794
 do_vfs_ioctl+0x770/0x1750 fs/ioctl.c:47
 ksys_ioctl fs/ioctl.c:714 [inline]
 __do_sys_ioctl fs/ioctl.c:721 [inline]
 __se_sys_ioctl fs/ioctl.c:719 [inline]
 __x64_sys_ioctl+0xd4/0x110 fs/ioctl.c:719
 do_syscall_64+0xcb/0x150 arch/x86/entry/common.c:290
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x444d19
Code: e8 bc af 02 00 48 83 c4 18 c3 0f 1f 80 00 00 00 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 0f 83 1b d8 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007ffcf633aef8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00000000004002e0 RCX: 0000000000444d19
RDX: 0000000020000000 RSI: 000000004018480c RDI: 0000000000000004
RBP: 00000000006cf018 R08: 9188084ba2bfac07 R09: 00000000004002e0
R10: 000000000000000f R11: 0000000000000246 R12: 00000000004029c0
R13: 0000000000402a50 R14: 0000000000000000 R15: 0000000000000000

The buggy address belongs to the page:
page:ffffea0007367800 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 compound_mapcount: 0
flags: 0x8000000000010000(head)
raw: 8000000000010000 dead000000000100 dead000000000122 0000000000000000
raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff8881cd9ec900: fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
 ffff8881cd9ec980: fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
>ffff8881cd9eca00: fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
                                                    ^
 ffff8881cd9eca80: fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
 ffff8881cd9ecb00: fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
==================================================================
Disab

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/04/26 19:16 https://android.googlesource.com/kernel/common android-5.4 ab5026515199 0ce7569e .config console log report syz C ci2-android-5-4-kasan
2020/04/08 00:07 https://android.googlesource.com/kernel/common android-5.4 fc78ab971efe db9bcd4b .config console log report syz C ci2-android-5-4-kasan
2020/04/27 09:46 https://android.googlesource.com/kernel/common android-5.4 5d7b3b73e9a8 0ce7569e .config console log report ci2-android-5-4-kasan
2020/04/26 07:16 https://android.googlesource.com/kernel/common android-5.4 954c82e77d8a b8bb8e5f .config console log report ci2-android-5-4-kasan
* Struck through repros no longer work on HEAD.