================================================================== BUG: KASAN: use-after-free in tls_fill_prepend include/net/tls.h:379 [inline] BUG: KASAN: use-after-free in tls_push_record+0x104c/0x1370 net/tls/tls_sw.c:220 Write of size 1 at addr ffff888094060000 by task syz-executor.4/30958 CPU: 0 PID: 30958 Comm: syz-executor.4 Not tainted 4.19.204-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 mm/kasan/report.c:412 [inline] __asan_report_store1_noabort+0x88/0x90 mm/kasan/report.c:435 tls_fill_prepend include/net/tls.h:379 [inline] tls_push_record+0x104c/0x1370 net/tls/tls_sw.c:220 tls_handle_open_record net/tls/tls_main.c:156 [inline] tls_sk_proto_close+0x8cf/0xc20 net/tls/tls_main.c:271 inet_release+0xd7/0x1e0 net/ipv4/af_inet.c:427 inet6_release+0x4c/0x70 net/ipv6/af_inet6.c:472 __sock_release+0xcd/0x2a0 net/socket.c:599 sock_close+0x15/0x20 net/socket.c:1212 __fput+0x2ce/0x890 fs/file_table.c:278 task_work_run+0x148/0x1c0 kernel/task_work.c:113 tracehook_notify_resume include/linux/tracehook.h:193 [inline] exit_to_usermode_loop+0x251/0x2a0 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+0x538/0x620 arch/x86/entry/common.c:296 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x4193fb Code: 0f 05 48 3d 00 f0 ff ff 77 45 c3 0f 1f 40 00 48 83 ec 18 89 7c 24 0c e8 63 fc ff ff 8b 7c 24 0c 41 89 c0 b8 03 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 35 44 89 c7 89 44 24 0c e8 a1 fc ff ff 8b 44 RSP: 002b:00007ffea6935df0 EFLAGS: 00000293 ORIG_RAX: 0000000000000003 RAX: 0000000000000000 RBX: 0000000000000004 RCX: 00000000004193fb RDX: 0000000000571040 RSI: ffffffff8167b8ca RDI: 0000000000000003 RBP: 0000000000000001 R08: 0000000000000000 R09: 0000001b30122fa4 R10: 0000000000001b2c R11: 0000000000000293 R12: 00000000001e03e6 R13: 00000000000003e8 R14: 000000000056bf80 R15: 00000000001e03d2 The buggy address belongs to the page: page:ffffea0002501800 count:0 mapcount:-128 mapping:0000000000000000 index:0x0 flags: 0xfff00000000000() raw: 00fff00000000000 ffffea0000f93008 ffffea00007b6008 0000000000000000 raw: 0000000000000000 0000000000000003 00000000ffffff7f 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff88809405ff00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff88809405ff80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff888094060000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ^ ffff888094060080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff888094060100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ================================================================== ---------------- Code disassembly (best guess): 0: 0f 05 syscall 2: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 8: 77 45 ja 0x4f a: c3 retq b: 0f 1f 40 00 nopl 0x0(%rax) f: 48 83 ec 18 sub $0x18,%rsp 13: 89 7c 24 0c mov %edi,0xc(%rsp) 17: e8 63 fc ff ff callq 0xfffffc7f 1c: 8b 7c 24 0c mov 0xc(%rsp),%edi 20: 41 89 c0 mov %eax,%r8d 23: b8 03 00 00 00 mov $0x3,%eax 28: 0f 05 syscall 2a: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 35 ja 0x67 32: 44 89 c7 mov %r8d,%edi 35: 89 44 24 0c mov %eax,0xc(%rsp) 39: e8 a1 fc ff ff callq 0xfffffcdf 3e: 8b .byte 0x8b 3f: 44 rex.R