syzbot


KMSAN: uninit-value in move_addr_to_user

Status: fixed on 2018/05/08 18:30
Subsystems: net
[Documentation on labels]
Fix commit: 6780db244d6b sctp: do not leak kernel memory to user space
First crash: 2210d, last: 2178d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KMSAN: uninit-value in move_addr_to_user (2) net C 44 2170d 2177d 5/26 fixed on 2018/05/17 10:02

Sample crash report:
==================================================================
BUG: KMSAN: uninit-value in copy_to_user include/linux/uaccess.h:184 [inline]
BUG: KMSAN: uninit-value in move_addr_to_user+0x32e/0x530 net/socket.c:227
CPU: 1 PID: 3586 Comm: syzkaller481044 Not tainted 4.16.0+ #82
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:17 [inline]
 dump_stack+0x185/0x1d0 lib/dump_stack.c:53
 kmsan_report+0x142/0x240 mm/kmsan/kmsan.c:1067
 kmsan_internal_check_memory+0x164/0x1d0 mm/kmsan/kmsan.c:1176
 kmsan_copy_to_user+0x69/0x160 mm/kmsan/kmsan.c:1199
 copy_to_user include/linux/uaccess.h:184 [inline]
 move_addr_to_user+0x32e/0x530 net/socket.c:227
 ___sys_recvmsg+0x4e2/0x810 net/socket.c:2211
 __sys_recvmmsg+0x54e/0xdb0 net/socket.c:2313
 SYSC_recvmmsg+0x29b/0x3e0 net/socket.c:2394
 SyS_recvmmsg+0x76/0xa0 net/socket.c:2378
 do_syscall_64+0x309/0x430 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x3d/0xa2
RIP: 0033:0x4401c9
RSP: 002b:00007ffc56f73098 EFLAGS: 00000217 ORIG_RAX: 000000000000012b
RAX: ffffffffffffffda RBX: 00000000004002c8 RCX: 00000000004401c9
RDX: 0000000000000001 RSI: 0000000020003ac0 RDI: 0000000000000003
RBP: 00000000006ca018 R08: 0000000020003bc0 R09: 0000000000000010
R10: 0000000000000000 R11: 0000000000000217 R12: 0000000000401af0
R13: 0000000000401b80 R14: 0000000000000000 R15: 0000000000000000

Local variable description: ----addr@___sys_recvmsg
Variable was created at:
 ___sys_recvmsg+0xd5/0x810 net/socket.c:2172
 __sys_recvmmsg+0x54e/0xdb0 net/socket.c:2313

Bytes 8-15 of 16 are uninitialized
==================================================================
Kernel panic - not syncing: panic_on_warn set ...

CPU: 1 PID: 3586 Comm: syzkaller481044 Tainted: G    B            4.16.0+ #82
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:17 [inline]
 dump_stack+0x185/0x1d0 lib/dump_stack.c:53
 panic+0x39d/0x940 kernel/panic.c:183
 kmsan_report+0x238/0x240 mm/kmsan/kmsan.c:1083
 kmsan_internal_check_memory+0x164/0x1d0 mm/kmsan/kmsan.c:1176
 kmsan_copy_to_user+0x69/0x160 mm/kmsan/kmsan.c:1199
 copy_to_user include/linux/uaccess.h:184 [inline]
 move_addr_to_user+0x32e/0x530 net/socket.c:227
 ___sys_recvmsg+0x4e2/0x810 net/socket.c:2211
 __sys_recvmmsg+0x54e/0xdb0 net/socket.c:2313
 SYSC_recvmmsg+0x29b/0x3e0 net/socket.c:2394
 SyS_recvmmsg+0x76/0xa0 net/socket.c:2378
 do_syscall_64+0x309/0x430 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x3d/0xa2
RIP: 0033:0x4401c9
RSP: 002b:00007ffc56f73098 EFLAGS: 00000217 ORIG_RAX: 000000000000012b
RAX: ffffffffffffffda RBX: 00000000004002c8 RCX: 00000000004401c9
RDX: 0000000000000001 RSI: 0000000020003ac0 RDI: 0000000000000003
RBP: 00000000006ca018 R08: 0000000020003bc0 R09: 0000000000000010
R10: 0000000000000000 R11: 0000000000000217 R12: 0000000000401af0
R13: 0000000000401b80 R14: 0000000000000000 R15: 0000000000000000
Dumping ftrace buffer:
   (ftrace buffer empty)
Kernel Offset: disabled
Rebooting in 86400 seconds..

Crashes (74):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/04/07 13:35 https://github.com/google/kmsan.git master e2ab7e8abba4 66f22a7f .config console log report syz C ci-upstream-kmsan-gce
2018/05/08 11:04 https://github.com/google/kmsan.git master d2d741e5d189 045bbd4a .config console log report ci-upstream-kmsan-gce
2018/05/08 02:23 https://github.com/google/kmsan.git master d2d741e5d189 9e0846e8 .config console log report ci-upstream-kmsan-gce
2018/05/07 19:45 https://github.com/google/kmsan.git master d2d741e5d189 9e0846e8 .config console log report ci-upstream-kmsan-gce
2018/05/07 07:58 https://github.com/google/kmsan.git master d2d741e5d189 a211da1a .config console log report ci-upstream-kmsan-gce
2018/05/07 06:52 https://github.com/google/kmsan.git master d2d741e5d189 a211da1a .config console log report ci-upstream-kmsan-gce
2018/05/07 04:18 https://github.com/google/kmsan.git master d2d741e5d189 a211da1a .config console log report ci-upstream-kmsan-gce
2018/05/06 19:21 https://github.com/google/kmsan.git master d2d741e5d189 6c18ddb0 .config console log report ci-upstream-kmsan-gce
2018/05/05 20:44 https://github.com/google/kmsan.git master d2d741e5d189 6a0382b5 .config console log report ci-upstream-kmsan-gce
2018/05/05 06:06 https://github.com/google/kmsan.git master d2d741e5d189 9ce14f4b .config console log report ci-upstream-kmsan-gce
2018/05/05 00:47 https://github.com/google/kmsan.git master d2d741e5d189 9ce14f4b .config console log report ci-upstream-kmsan-gce
2018/05/04 19:34 https://github.com/google/kmsan.git master d2d741e5d189 9ce14f4b .config console log report ci-upstream-kmsan-gce
2018/05/03 10:09 https://github.com/google/kmsan.git master d2d741e5d189 9ce14f4b .config console log report ci-upstream-kmsan-gce
2018/05/03 05:17 https://github.com/google/kmsan.git master d2d741e5d189 d5b114b4 .config console log report ci-upstream-kmsan-gce
2018/05/02 12:28 https://github.com/google/kmsan.git master d2d741e5d189 d5b114b4 .config console log report ci-upstream-kmsan-gce
2018/05/02 05:33 https://github.com/google/kmsan.git master d2d741e5d189 d5b114b4 .config console log report ci-upstream-kmsan-gce
2018/05/01 11:21 https://github.com/google/kmsan.git master d2d741e5d189 d5b114b4 .config console log report ci-upstream-kmsan-gce
2018/05/01 06:18 https://github.com/google/kmsan.git master d2d741e5d189 d5b114b4 .config console log report ci-upstream-kmsan-gce
2018/05/01 03:13 https://github.com/google/kmsan.git master d2d741e5d189 d5b114b4 .config console log report ci-upstream-kmsan-gce
2018/04/30 12:16 https://github.com/google/kmsan.git master d2d741e5d189 06db3cec .config console log report ci-upstream-kmsan-gce
2018/04/30 05:12 https://github.com/google/kmsan.git master d2d741e5d189 bb79c6ab .config console log report ci-upstream-kmsan-gce
2018/04/29 11:48 https://github.com/google/kmsan.git master d2d741e5d189 d5a5d045 .config console log report ci-upstream-kmsan-gce
2018/04/28 13:26 https://github.com/google/kmsan.git master d2d741e5d189 d5a5d045 .config console log report ci-upstream-kmsan-gce
2018/04/27 08:56 https://github.com/google/kmsan.git master d2d741e5d189 73417389 .config console log report ci-upstream-kmsan-gce
2018/04/25 20:38 https://github.com/google/kmsan.git master d2d741e5d189 73417389 .config console log report ci-upstream-kmsan-gce
2018/04/25 01:30 https://github.com/google/kmsan.git master d2d741e5d189 37e76fe2 .config console log report ci-upstream-kmsan-gce
2018/04/23 19:14 https://github.com/google/kmsan.git master d2d741e5d189 0d8e591c .config console log report ci-upstream-kmsan-gce
2018/04/23 02:02 https://github.com/google/kmsan.git master d2d741e5d189 d23fcf6c .config console log report ci-upstream-kmsan-gce
2018/04/22 13:53 https://github.com/google/kmsan.git master a7f95e9c8a95 d23fcf6c .config console log report ci-upstream-kmsan-gce
2018/04/22 12:20 https://github.com/google/kmsan.git master a7f95e9c8a95 d23fcf6c .config console log report ci-upstream-kmsan-gce
2018/04/22 07:48 https://github.com/google/kmsan.git master a7f95e9c8a95 d23fcf6c .config console log report ci-upstream-kmsan-gce
2018/04/22 01:00 https://github.com/google/kmsan.git master a7f95e9c8a95 d23fcf6c .config console log report ci-upstream-kmsan-gce
2018/04/21 09:30 https://github.com/google/kmsan.git master 48c6a2b0ab1b ca03d688 .config console log report ci-upstream-kmsan-gce
2018/04/21 06:05 https://github.com/google/kmsan.git master 48c6a2b0ab1b ca03d688 .config console log report ci-upstream-kmsan-gce
2018/04/21 01:34 https://github.com/google/kmsan.git master 48c6a2b0ab1b ca03d688 .config console log report ci-upstream-kmsan-gce
2018/04/20 18:34 https://github.com/google/kmsan.git master 48c6a2b0ab1b cc402841 .config console log report ci-upstream-kmsan-gce
2018/04/19 13:01 https://github.com/google/kmsan.git master 48c6a2b0ab1b 3642839c .config console log report ci-upstream-kmsan-gce
2018/04/19 11:37 https://github.com/google/kmsan.git master 48c6a2b0ab1b d1b2ef69 .config console log report ci-upstream-kmsan-gce
2018/04/19 08:21 https://github.com/google/kmsan.git master 48c6a2b0ab1b d1b2ef69 .config console log report ci-upstream-kmsan-gce
2018/04/19 07:17 https://github.com/google/kmsan.git master 48c6a2b0ab1b 829f0234 .config console log report ci-upstream-kmsan-gce
2018/04/19 05:18 https://github.com/google/kmsan.git master 48c6a2b0ab1b 829f0234 .config console log report ci-upstream-kmsan-gce
2018/04/18 22:45 https://github.com/google/kmsan.git master 48c6a2b0ab1b 829f0234 .config console log report ci-upstream-kmsan-gce
2018/04/18 21:06 https://github.com/google/kmsan.git master 48c6a2b0ab1b 829f0234 .config console log report ci-upstream-kmsan-gce
2018/04/17 15:37 https://github.com/google/kmsan.git master 48c6a2b0ab1b b80fd3b5 .config console log report ci-upstream-kmsan-gce
2018/04/17 12:06 https://github.com/google/kmsan.git master 48c6a2b0ab1b b80fd3b5 .config console log report ci-upstream-kmsan-gce
2018/04/07 00:10 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
* Struck through repros no longer work on HEAD.