syzbot


KASAN: use-after-free Read in packet_getsockopt

Status: closed as invalid on 2017/10/18 08:55
Subsystems: net
[Documentation on labels]
First crash: 2416d, last: 2390d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KASAN: use-after-free Read in packet_getsockopt (2) net syz 12 2378d 2386d 3/26 fixed on 2017/11/11 01:37

Sample crash report:
BUG: KASAN: use-after-free in __read_once_size include/linux/compiler.h:276 [inline]
BUG: KASAN: use-after-free in atomic64_read arch/x86/include/asm/atomic64_64.h:21 [inline]
BUG: KASAN: use-after-free in atomic_long_read include/asm-generic/atomic-long.h:44 [inline]
BUG: KASAN: use-after-free in packet_getsockopt+0xc72/0xe00 net/packet/af_packet.c:3924
Read of size 8 at addr ffff8801c93833d8 by task syzkaller893861/12646

CPU: 1 PID: 12646 Comm: syzkaller893861 Not tainted 4.14.0-rc1+ #93
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:16 [inline]
 dump_stack+0x194/0x257 lib/dump_stack.c:52
 print_address_description+0x73/0x250 mm/kasan/report.c:252
 kasan_report_error mm/kasan/report.c:351 [inline]
 kasan_report+0x24e/0x340 mm/kasan/report.c:409
 __asan_report_load8_noabort+0x14/0x20 mm/kasan/report.c:430
 __read_once_size include/linux/compiler.h:276 [inline]
 atomic64_read arch/x86/include/asm/atomic64_64.h:21 [inline]
 atomic_long_read include/asm-generic/atomic-long.h:44 [inline]
 packet_getsockopt+0xc72/0xe00 net/packet/af_packet.c:3924
 SYSC_getsockopt net/socket.c:1883 [inline]
 SyS_getsockopt+0x178/0x340 net/socket.c:1865
 entry_SYSCALL_64_fastpath+0x1f/0xbe
RIP: 0033:0x44cb99
RSP: 002b:00007f7bd051cd08 EFLAGS: 00000246 ORIG_RAX: 0000000000000037
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 000000000044cb99
RDX: 0000000000000015 RSI: 0000000000000107 RDI: 0000000000000008
RBP: 0000000000000082 R08: 00000000208a5000 R09: 00007f7bd051d700
R10: 0000000020ec8000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fff6f768a6f R14: 00007f7bd051d9c0 R15: 0000000000000000

Allocated by task 12645:
 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59
 save_stack+0x43/0xd0 mm/kasan/kasan.c:447
 set_track mm/kasan/kasan.c:459 [inline]
 kasan_kmalloc+0xad/0xe0 mm/kasan/kasan.c:551
 kmem_cache_alloc_trace+0x136/0x750 mm/slab.c:3627
 kmalloc include/linux/slab.h:493 [inline]
 kzalloc include/linux/slab.h:666 [inline]
 fanout_add+0x345/0x1190 net/packet/af_packet.c:1698
 packet_setsockopt+0xfdc/0x1e80 net/packet/af_packet.c:3795
 SYSC_setsockopt net/socket.c:1852 [inline]
 SyS_setsockopt+0x189/0x360 net/socket.c:1831
 entry_SYSCALL_64_fastpath+0x1f/0xbe

Freed by task 12645:
 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59
 save_stack+0x43/0xd0 mm/kasan/kasan.c:447
 set_track mm/kasan/kasan.c:459 [inline]
 kasan_slab_free+0x71/0xc0 mm/kasan/kasan.c:524
 __cache_free mm/slab.c:3503 [inline]
 kfree+0xca/0x250 mm/slab.c:3820
 fanout_add+0x2d0/0x1190 net/packet/af_packet.c:1766
 packet_setsockopt+0xfdc/0x1e80 net/packet/af_packet.c:3795
 SYSC_setsockopt net/socket.c:1852 [inline]
 SyS_setsockopt+0x189/0x360 net/socket.c:1831
 entry_SYSCALL_64_fastpath+0x1f/0xbe

The buggy address belongs to the object at ffff8801c93833c0
 which belongs to the cache kmalloc-128 of size 128
The buggy address is located 24 bytes inside of
 128-byte region [ffff8801c93833c0, ffff8801c9383440)
The buggy address belongs to the page:
page:ffffea000724e0c0 count:1 mapcount:0 mapping:ffff8801c9383000 index:0x0
flags: 0x200000000000100(slab)
raw: 0200000000000100 ffff8801c9383000 0000000000000000 0000000100000015
raw: ffffea000724d9e0 ffffea0007220060 ffff8801dac00640 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff8801c9383280: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc
 ffff8801c9383300: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
>ffff8801c9383380: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb
                                                    ^
 ffff8801c9383400: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
 ffff8801c9383480: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================

Crashes (69):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2017/09/21 00:16 upstream c52f56a69d10 653022e6 .config console log report syz C ci-upstream-kasan-gce-386
2017/10/03 04:47 upstream 9e66317d3c92 c26ea367 .config console log report syz ci-upstream-kasan-gce-386
2017/10/03 02:50 upstream 9e66317d3c92 c26ea367 .config console log report syz ci-upstream-kasan-gce-386
2017/09/20 18:36 upstream c52f56a69d10 653022e6 .config console log report syz ci-upstream-kasan-gce-386
2017/09/22 01:35 mmots 720bbe532b7c c26ea367 .config console log report syz ci-upstream-mmots-kasan-gce
2017/09/21 23:13 mmots 720bbe532b7c c26ea367 .config console log report syz ci-upstream-mmots-kasan-gce
2017/09/21 00:30 linux-next 0b093a564fe0 4e341009 .config console log report syz ci-upstream-next-kasan-gce
2017/09/20 18:50 linux-next 0b093a564fe0 4e341009 .config console log report syz ci-upstream-next-kasan-gce
2017/09/25 16:06 upstream e19b205be43d c26ea367 .config console log report ci-upstream-kasan-gce
2017/09/23 19:41 upstream c65da8e22b1d c26ea367 .config console log report ci-upstream-kasan-gce
2017/10/16 15:54 upstream 33d930e59a98 766bfcfd .config console log report ci-upstream-kasan-gce-386
2017/10/11 18:44 upstream 56ae414e9d27 c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/10/07 23:34 upstream 1c86f2e4c84f c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/10/03 10:44 upstream 9e66317d3c92 c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/10/02 14:30 upstream 9e66317d3c92 c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/10/01 06:13 upstream a8c964eacb21 c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/29 03:31 upstream 02a2b05395dd c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/27 17:17 upstream dc972a67cc54 c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/26 23:02 upstream e365806ac289 c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/26 21:47 upstream e365806ac289 c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/26 08:48 upstream 19240e6b2a6c c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/23 09:38 upstream 0a8abd97dcda c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/21 17:20 upstream 4a704d6db0ee c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/21 16:55 upstream 4a704d6db0ee c26ea367 .config console log report ci-upstream-kasan-gce-386
2017/09/21 11:01 upstream c52f56a69d10 653022e6 .config console log report ci-upstream-kasan-gce-386
2017/09/21 09:10 upstream c52f56a69d10 653022e6 .config console log report ci-upstream-kasan-gce-386
2017/09/29 04:27 linux-next 00d47fc93ae9 c26ea367 .config console log report ci-upstream-next-kasan-gce
2017/09/29 02:31 linux-next 00d47fc93ae9 c26ea367 .config console log report ci-upstream-next-kasan-gce
* Struck through repros no longer work on HEAD.