syzbot


KASAN: stack-out-of-bounds Read in xfrm_state_find (2)

Status: fixed on 2017/11/18 01:42
Subsystems: net
[Documentation on labels]
Reported-by: syzbot+19b21aa652248382e2b8cbb81fa1cdc03b4bda01@syzkaller.appspotmail.com
Fix commit: c9f3f813d462 xfrm: Fix stack-out-of-bounds read in xfrm_state_find.
First crash: 2348d, last: 2331d
Similar bugs (13)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KASAN: stack-out-of-bounds Read in xfrm_state_find (3) net C 10353 2253d 2320d 4/26 fixed on 2018/01/31 00:24
android-44 KASAN: stack-out-of-bounds Read in xfrm_state_find C 842 1581d 1813d 0/2 public: reported C repro on 2019/04/12 00:00
android-54 KASAN: stack-out-of-bounds Read in xfrm_state_find C 1 453d 453d 0/2 upstream: reported C repro on 2023/01/01 01:05
android-5-15 KASAN: stack-out-of-bounds Read in xfrm_state_find origin:upstream missing-backport C error 2 30d 453d 0/2 upstream: reported C repro on 2023/01/01 00:40
upstream KASAN: stack-out-of-bounds Read in xfrm_state_find (5) net C done 654 1886d 2188d 13/26 fixed on 2019/11/11 16:48
upstream KMSAN: uninit-value in xfrm_state_find net C error done 215 315d 2114d 22/26 fixed on 2023/07/01 16:05
android-5-10 KASAN: stack-out-of-bounds Read in xfrm_state_find (2) syz error error 1 453d 453d 0/2 auto-obsoleted due to no activity on 2023/05/14 02:28
upstream KASAN: stack-out-of-bounds Read in xfrm_state_find net C 365 2349d 2422d 0/26 closed as invalid on 2017/10/23 16:19
android-5-10 KASAN: stack-out-of-bounds Read in xfrm_state_find 1 873d 873d 0/2 closed as invalid on 2022/02/03 13:56
android-49 KASAN: stack-out-of-bounds Read in xfrm_state_find C 4151 1914d 2425d 0/3 closed as invalid on 2019/01/01 20:10
android-414 KASAN: stack-out-of-bounds Read in xfrm_state_find C 137 1887d 1814d 0/1 public: reported C repro on 2019/04/11 00:00
android-49 KASAN: stack-out-of-bounds Read in xfrm_state_find (2) C 392 1577d 1814d 0/3 public: reported C repro on 2019/04/11 08:44
upstream KASAN: stack-out-of-bounds Read in xfrm_state_find (4) net C 102 2198d 2248d 4/26 fixed on 2018/03/23 18:14

Sample crash report:
BUG: KASAN: stack-out-of-bounds in xfrm_state_find+0x303d/0x3170 net/xfrm/xfrm_state.c:1051
Read of size 4 at addr ffff8801d23cf760 by task syzkaller765370/2984

CPU: 0 PID: 2984 Comm: syzkaller765370 Not tainted 4.14.0-rc6+ #145
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+0x25b/0x340 mm/kasan/report.c:409
 __asan_report_load4_noabort+0x14/0x20 mm/kasan/report.c:429
 xfrm_state_find+0x303d/0x3170 net/xfrm/xfrm_state.c:1051
 xfrm_tmpl_resolve_one net/xfrm/xfrm_policy.c:1388 [inline]
 xfrm_tmpl_resolve+0x309/0xc00 net/xfrm/xfrm_policy.c:1432
 xfrm_resolve_and_create_bundle+0x186/0x24a0 net/xfrm/xfrm_policy.c:1830
 xfrm_lookup+0xf0a/0x2540 net/xfrm/xfrm_policy.c:2141
 xfrm_lookup_route+0x39/0x1a0 net/xfrm/xfrm_policy.c:2259
 ip_route_output_flow+0x7c/0xa0 net/ipv4/route.c:2555
 udp_sendmsg+0x19b8/0x2cd0 net/ipv4/udp.c:1019
 udpv6_sendmsg+0x743/0x3380 net/ipv6/udp.c:1186
 inet_sendmsg+0x11f/0x5e0 net/ipv4/af_inet.c:762
 sock_sendmsg_nosec net/socket.c:633 [inline]
 sock_sendmsg+0xca/0x110 net/socket.c:643
 SYSC_sendto+0x352/0x5a0 net/socket.c:1750
 SyS_sendto+0x40/0x50 net/socket.c:1718
 entry_SYSCALL_64_fastpath+0x1f/0xbe
RIP: 0033:0x43fef9
RSP: 002b:00007fff50b47838 EFLAGS: 00000217 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: ffffffffffffffff RCX: 000000000043fef9
RDX: 0000000000000000 RSI: 0000000020efcf90 RDI: 0000000000000003
RBP: 0000000000000082 R08: 0000000020efc000 R09: 0000000000000010
R10: 0000000000004090 R11: 0000000000000217 R12: 0000000000401860
R13: 00000000004018f0 R14: 0000000000000000 R15: 0000000000000000

The buggy address belongs to the page:
page:ffffea000748f3c0 count:0 mapcount:0 mapping:          (null) index:0x0
flags: 0x200000000000000()
raw: 0200000000000000 0000000000000000 0000000000000000 00000000ffffffff
raw: 0000000000000000 0000000100000001 0000000000000000 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff8801d23cf600: 00 f1 f1 f1 f1 04 f2 f2 f2 f2 f2 f2 f2 00 f2 f2
 ffff8801d23cf680: f2 f2 f2 f2 f2 f8 f2 f2 f2 f2 f2 f2 f2 00 00 00
>ffff8801d23cf700: 00 f2 f2 f2 f2 00 00 00 00 00 00 00 f2 f2 f2 f2
                                                       ^
 ffff8801d23cf780: f2 00 00 00 00 00 00 00 00 00 f2 f2 f2 f3 f3 f3
 ffff8801d23cf800: f3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
==================================================================

Crashes (93):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2017/10/23 22:27 upstream 6cff0a118f23 92f543f0 .config console log report syz C ci-upstream-kasan-gce-386
2017/10/23 21:43 upstream 6cff0a118f23 92f543f0 .config console log report syz C ci-upstream-kasan-gce-386
2017/10/23 21:54 net-next-old 058c8d591241 92f543f0 .config console log report syz C ci-upstream-net-kasan-gce
2017/10/29 04:31 linux-next 36ef71cae353 e511d9f8 .config console log report syz C ci-upstream-next-kasan-gce
2017/10/28 15:31 linux-next 36ef71cae353 e511d9f8 .config console log report syz C ci-upstream-next-kasan-gce
2017/10/26 01:52 linux-next 36ef71cae353 e511d9f8 .config console log report syz C ci-upstream-next-kasan-gce
2017/10/23 22:17 linux-next 36ef71cae353 e511d9f8 .config console log report syz C ci-upstream-next-kasan-gce
2017/10/23 21:55 mmots 0f611fb6dcc0 e0a2b195 .config console log report syz C ci-upstream-mmots-kasan-gce
2017/10/26 07:27 upstream 4ed590271a65 6fd57ceb .config console log report ci-upstream-kasan-gce-386
2017/11/10 01:36 net-next-old 19aeeb9f46cb e0a2b195 .config console log report ci-upstream-net-kasan-gce
2017/11/09 04:43 net-next-old 19aeeb9f46cb e0a2b195 .config console log report ci-upstream-net-kasan-gce
2017/11/08 18:16 net-next-old 7f5d3f2721b0 9547ae3a .config console log report ci-upstream-net-kasan-gce
2017/11/08 02:55 net-next-old 27c565ae9d55 699e0a68 .config console log report ci-upstream-net-kasan-gce
2017/11/08 02:52 net-next-old 27c565ae9d55 699e0a68 .config console log report ci-upstream-net-kasan-gce
2017/11/07 21:40 net-next-old 27c565ae9d55 699e0a68 .config console log report ci-upstream-net-kasan-gce
2017/11/06 20:01 net-next-old 27c565ae9d55 699e0a68 .config console log report ci-upstream-net-kasan-gce
2017/11/06 12:50 net-next-old 27c565ae9d55 699e0a68 .config console log report ci-upstream-net-kasan-gce
2017/11/06 08:26 net-next-old 27c565ae9d55 699e0a68 .config console log report ci-upstream-net-kasan-gce
2017/11/04 19:09 net-next-old 0f04d0575152 c78b455b .config console log report ci-upstream-net-kasan-gce
2017/11/04 10:44 net-next-old 2a171788ba7b 7c537a4b .config console log report ci-upstream-net-kasan-gce
2017/11/04 05:47 net-next-old 2a171788ba7b 7c537a4b .config console log report ci-upstream-net-kasan-gce
2017/11/02 07:29 net-next-old 59c1cecce340 e511d9f8 .config console log report ci-upstream-net-kasan-gce
2017/10/30 16:35 net-next-old e1ea2f9856b7 edfd374b .config console log report ci-upstream-net-kasan-gce
2017/10/30 13:03 net-next-old e1ea2f9856b7 edfd374b .config console log report ci-upstream-net-kasan-gce
2017/10/30 09:52 net-next-old aad93c70b9a3 80c74880 .config console log report ci-upstream-net-kasan-gce
2017/10/27 09:26 net-next-old a78ec0d4f0ea 0a4d6e56 .config console log report ci-upstream-net-kasan-gce
2017/10/26 13:17 net-next-old 3fc27b71b894 0a4d6e56 .config console log report ci-upstream-net-kasan-gce
2017/10/25 07:01 net-next-old 6a331e1513af 3d7d860f .config console log report ci-upstream-net-kasan-gce
* Struck through repros no longer work on HEAD.