syzbot


KASAN: stack-out-of-bounds Write in ip6gre_tunnel_locate

Status: fixed on 2018/05/08 18:30
Subsystems: net
[Documentation on labels]
Fix commit: 5f42df013b8b ip6_gre: better validate user provided tunnel names
First crash: 2237d, last: 2229d

Sample crash report:
==================================================================
BUG: KASAN: stack-out-of-bounds in strlcpy include/linux/string.h:300 [inline]
BUG: KASAN: stack-out-of-bounds in ip6gre_tunnel_locate+0x334/0x860 net/ipv6/ip6_gre.c:339
Write of size 20 at addr ffff8801afb9f7b8 by task syzkaller851048/4466

CPU: 1 PID: 4466 Comm: syzkaller851048 Not tainted 4.16.0+ #1
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+0x1b9/0x29f lib/dump_stack.c:53
 print_address_description+0x6c/0x20b mm/kasan/report.c:256
 kasan_report_error mm/kasan/report.c:354 [inline]
 kasan_report.cold.7+0xac/0x2f5 mm/kasan/report.c:412
 check_memory_region_inline mm/kasan/kasan.c:260 [inline]
 check_memory_region+0x13e/0x1b0 mm/kasan/kasan.c:267
 memcpy+0x37/0x50 mm/kasan/kasan.c:303
 strlcpy include/linux/string.h:300 [inline]
 ip6gre_tunnel_locate+0x334/0x860 net/ipv6/ip6_gre.c:339
 ip6gre_tunnel_ioctl+0x69d/0x12e0 net/ipv6/ip6_gre.c:1195
 dev_ifsioc+0x43e/0xb90 net/core/dev_ioctl.c:334
 dev_ioctl+0x69a/0xcc0 net/core/dev_ioctl.c:525
 sock_ioctl+0x47e/0x680 net/socket.c:1015
 vfs_ioctl fs/ioctl.c:46 [inline]
 file_ioctl fs/ioctl.c:500 [inline]
 do_vfs_ioctl+0x1cf/0x1650 fs/ioctl.c:684
 ksys_ioctl+0xa9/0xd0 fs/ioctl.c:701
 SYSC_ioctl fs/ioctl.c:708 [inline]
 SyS_ioctl+0x24/0x30 fs/ioctl.c:706
 do_syscall_64+0x29e/0x9d0 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x42/0xb7
RIP: 0033:0x43fd19
RSP: 002b:00007ffd4c8e5ef8 EFLAGS: 00000213 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00000000004002c8 RCX: 000000000043fd19
RDX: 00000000200000c0 RSI: 00000000000089f1 RDI: 0000000000000003
RBP: 00000000006ca018 R08: 00000000004002c8 R09: 00000000004002c8
R10: 00000000004002c8 R11: 0000000000000213 R12: 0000000000401640
R13: 00000000004016d0 R14: 0000000000000000 R15: 0000000000000000

The buggy address belongs to the page:
page:ffffea0006bee7c0 count:0 mapcount:0 mapping:0000000000000000 index:0x0
flags: 0x2fffc0000000000()
raw: 02fffc0000000000 0000000000000000 0000000000000000 00000000ffffffff
raw: 0000000000000000 ffffea0006be0101 0000000000000000 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff8801afb9f680: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 ffff8801afb9f700: 00 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1 f8
>ffff8801afb9f780: f2 f2 f2 f2 f2 f2 f2 00 00 f2 f2 00 00 00 00 00
                                              ^
 ffff8801afb9f800: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1
 ffff8801afb9f880: f1 f1 f8 f2 f2 f2 f2 f2 f2 f2 00 00 00 00 00 00
==================================================================

Crashes (923):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/04/05 09:56 net-next-old 17dec0a94915 5e1ccffc .config console log report syz C ci-upstream-net-kasan-gce
2018/04/09 09:36 upstream 3fd14cdcc05a f13fb445 .config console log report ci-upstream-kasan-gce-root
2018/04/07 10:41 upstream 3fd14cdcc05a d613535f .config console log report ci-upstream-kasan-gce
2018/04/07 06:21 upstream 3fd14cdcc05a d613535f .config console log report ci-upstream-kasan-gce
2018/04/06 23:10 upstream 3fd14cdcc05a d613535f .config console log report ci-upstream-kasan-gce
2018/04/05 16:49 upstream 06dd3dfeea60 5e1ccffc .config console log report ci-upstream-kasan-gce-root
2018/04/13 05:39 net-next-old 17dec0a94915 eb2295de .config console log report ci-upstream-net-kasan-gce
2018/04/13 03:08 net-next-old 17dec0a94915 eb2295de .config console log report ci-upstream-net-kasan-gce
2018/04/12 19:18 net-next-old 17dec0a94915 eb2295de .config console log report ci-upstream-net-kasan-gce
2018/04/12 18:11 net-next-old 17dec0a94915 eb2295de .config console log report ci-upstream-net-kasan-gce
2018/04/12 08:18 net-next-old 17dec0a94915 9cd56d71 .config console log report ci-upstream-net-kasan-gce
2018/04/12 01:48 net-next-old 17dec0a94915 9cd56d71 .config console log report ci-upstream-net-kasan-gce
2018/04/11 11:01 net-next-old 17dec0a94915 8b8de427 .config console log report ci-upstream-net-kasan-gce
2018/04/11 04:01 net-next-old 17dec0a94915 8b8de427 .config console log report ci-upstream-net-kasan-gce
2018/04/10 19:37 net-next-old 17dec0a94915 8b8de427 .config console log report ci-upstream-net-kasan-gce
2018/04/10 14:49 net-next-old 17dec0a94915 8e873e9d .config console log report ci-upstream-net-kasan-gce
2018/04/10 13:02 net-next-old 17dec0a94915 8e873e9d .config console log report ci-upstream-net-kasan-gce
2018/04/07 13:24 net-next-old 17dec0a94915 66f22a7f .config console log report ci-upstream-net-kasan-gce
2018/04/06 11:12 net-next-old 17dec0a94915 4f1152d4 .config console log report ci-upstream-net-kasan-gce
2018/04/05 22:41 net-next-old 17dec0a94915 a932eae6 .config console log report ci-upstream-net-kasan-gce
2018/04/05 18:54 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 18:54 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 18:51 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 18:30 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 18:24 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 18:16 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 17:54 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 17:46 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 17:45 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 17:39 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 17:25 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 17:24 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 17:08 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 17:04 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 16:58 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 16:51 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 16:04 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 15:36 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 14:57 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 14:21 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
2018/04/05 13:53 net-next-old 17dec0a94915 5e1ccffc .config console log report ci-upstream-net-kasan-gce
* Struck through repros no longer work on HEAD.