syzbot


KASAN: out-of-bounds Write in tls_push_record

Status: auto-closed as invalid on 2019/12/16 22:08
Reported-by: syzbot+d79ed422dc06ae26a022@syzkaller.appspotmail.com
First crash: 1780d, last: 1721d
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.19 KASAN: use-after-free Write in tls_push_record C error 120 456d 1840d 0/1 upstream: reported C repro on 2019/04/21 15:31
linux-4.19 KASAN: out-of-bounds Write in tls_push_record (2) 3 1418d 1572d 0/1 auto-closed as invalid on 2020/10/14 06:11
upstream KASAN: out-of-bounds Write in tls_push_record net C 10 2027d 2128d 11/26 fixed on 2019/02/26 22:09

Sample crash report:
RDX: ffffffffffffffc1 RSI: 0000000020000080 RDI: 0000000000000003
RBP: 000000000075bf20 R08: 0000000000000000 R09: fffffffffffffe5b
R10: 0000000000000040 R11: 0000000000000246 R12: 00007fa2d0db76d4
R13: 00000000004c77e7 R14: 00000000004dd068 R15: 0000000000000005
==================================================================
BUG: KASAN: out-of-bounds in tls_fill_prepend include/net/tls.h:373 [inline]
BUG: KASAN: out-of-bounds in tls_push_record+0x102a/0x13a0 net/tls/tls_sw.c:220
Write of size 1 at addr ffff88808e440000 by task syz-executor.2/26360

CPU: 0 PID: 26360 Comm: syz-executor.2 Not tainted 4.19.67 #41
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+0x172/0x1f0 lib/dump_stack.c:113
 print_address_description.cold+0x7c/0x20d mm/kasan/report.c:256
 kasan_report_error mm/kasan/report.c:354 [inline]
 kasan_report mm/kasan/report.c:412 [inline]
 kasan_report.cold+0x8c/0x2ba mm/kasan/report.c:396
 __asan_report_store1_noabort+0x17/0x20 mm/kasan/report.c:435
 tls_fill_prepend include/net/tls.h:373 [inline]
 tls_push_record+0x102a/0x13a0 net/tls/tls_sw.c:220
 tls_sw_push_pending_record+0x23/0x30 net/tls/tls_sw.c:257
 tls_handle_open_record net/tls/tls_main.c:156 [inline]
 tls_sk_proto_close+0x5bb/0xa20 net/tls/tls_main.c:271
 inet_release+0xff/0x1e0 net/ipv4/af_inet.c:428
 inet6_release+0x53/0x80 net/ipv6/af_inet6.c:472
 __sock_release+0xce/0x2a0 net/socket.c:579
 sock_close+0x1b/0x30 net/socket.c:1140
 __fput+0x2dd/0x8b0 fs/file_table.c:278
 ____fput+0x16/0x20 fs/file_table.c:309
 task_work_run+0x145/0x1c0 kernel/task_work.c:113
 tracehook_notify_resume include/linux/tracehook.h:193 [inline]
 exit_to_usermode_loop+0x273/0x2c0 arch/x86/entry/common.c:167
 prepare_exit_to_usermode arch/x86/entry/common.c:198 [inline]
 syscall_return_slowpath arch/x86/entry/common.c:271 [inline]
 do_syscall_64+0x53d/0x620 arch/x86/entry/common.c:296
 entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x413511
Code: 75 14 b8 03 00 00 00 0f 05 48 3d 01 f0 ff ff 0f 83 04 1b 00 00 c3 48 83 ec 08 e8 0a fc ff ff 48 89 04 24 b8 03 00 00 00 0f 05 <48> 8b 3c 24 48 89 c2 e8 53 fc ff ff 48 89 d0 48 83 c4 08 48 3d 01
RSP: 002b:00007ffee4b2dcd0 EFLAGS: 00000293 ORIG_RAX: 0000000000000003
RAX: 0000000000000000 RBX: 0000000000000004 RCX: 0000000000413511
RDX: 0000001b30f20000 RSI: 0000000000000000 RDI: 0000000000000003
RBP: 0000000000000001 R08: 000000000f142f5c R09: 000000000f142f60
R10: 00007ffee4b2ddb0 R11: 0000000000000293 R12: 000000000075c9a0
R13: 000000000075c9a0 R14: 0000000000760820 R15: ffffffffffffffff

The buggy address belongs to the page:
page:ffffea0002391000 count:0 mapcount:-128 mapping:0000000000000000 index:0x0
flags: 0x1fffc0000000000()
raw: 01fffc0000000000 ffffea000245e608 ffff88812fffc878 0000000000000000
raw: 0000000000000000 0000000000000003 00000000ffffff7f 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff88808e43ff00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
 ffff88808e43ff80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
>ffff88808e440000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
                      ^
 ffff88808e440080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
 ffff88808e440100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
==================================================================

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2019/08/18 22:07 linux-4.19.y a5aa80588fcd 55bf8926 .config console log report ci2-linux-4-19
2019/06/30 17:00 linux-4.19.y aec3002d07fd 7509bf36 .config console log report ci2-linux-4-19
2019/06/24 05:21 linux-4.19.y 78778071092e 472f0082 .config console log report ci2-linux-4-19
2019/06/20 09:31 linux-4.19.y 9f31eb60d7a2 34bf9440 .config console log report ci2-linux-4-19
* Struck through repros no longer work on HEAD.