syzbot


general protection fault in nft_parse_register

Status: fixed on 2020/02/18 14:31
Subsystems: netfilter
[Documentation on labels]
Reported-by: syzbot+cf23983d697c26c34f60@syzkaller.appspotmail.com
Fix commit: 7eaecf7963c1 netfilter: nft_osf: add missing check for DREG attribute
First crash: 1552d, last: 1552d
Discussions (6)
Title Replies (including bot) Last reply
[PATCH 4.19 00/92] 4.19.100-stable review 98 (98) 2020/01/31 13:57
[PATCH 5.4 000/104] 5.4.16-stable review 113 (113) 2020/01/29 15:36
[PATCH 0/7] Netfilter fixes for net 9 (9) 2020/01/25 20:40
[Patch nf] netfilter: nft_osf: NFTA_OSF_DREG must not be null 3 (3) 2020/01/18 20:37
[PATCH nf] netfilter: nft_osf: add missing check for DREG attribute 3 (3) 2020/01/18 20:19
general protection fault in nft_parse_register 0 (1) 2020/01/18 08:25

Sample crash report:
kasan: CONFIG_KASAN_INLINE enabled
kasan: GPF could be caused by NULL-ptr deref or user memory access
general protection fault: 0000 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 30417 Comm: syz-executor.2 Not tainted 5.5.0-rc5-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:nla_get_be32 include/net/netlink.h:1483 [inline]
RIP: 0010:nft_parse_register+0x24/0x90 net/netfilter/nf_tables_api.c:7576
Code: ff ff ff eb d8 90 55 48 89 e5 41 54 53 48 89 fb e8 91 50 10 fb 48 8d 7b 04 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 47 8b
RSP: 0018:ffffc900087bf380 EFLAGS: 00010247
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffffc9000ded3000
RDX: 0000000000000000 RSI: ffffffff8664a4ff RDI: 0000000000000004
RBP: ffffc900087bf390 R08: ffff88805b34a5c0 R09: ffffed1015d2703d
R10: ffffed1015d2703c R11: ffff8880ae9381e3 R12: ffff8880a072da98
R13: ffffc900087bf498 R14: 0000000000000000 R15: dffffc0000000000
FS:  00007f4ff3b5a700(0000) GS:ffff8880ae800000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000000000075c000 CR3: 000000009d23d000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 nft_osf_init+0x1b7/0x280 net/netfilter/nft_osf.c:78
 nf_tables_newexpr net/netfilter/nf_tables_api.c:2478 [inline]
 nf_tables_newrule+0xd96/0x2400 net/netfilter/nf_tables_api.c:3086
 nfnetlink_rcv_batch+0xf42/0x17a0 net/netfilter/nfnetlink.c:433
 nfnetlink_rcv_skb_batch net/netfilter/nfnetlink.c:543 [inline]
 nfnetlink_rcv+0x3e7/0x460 net/netfilter/nfnetlink.c:561
 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline]
 netlink_unicast+0x58c/0x7d0 net/netlink/af_netlink.c:1328
 netlink_sendmsg+0x91c/0xea0 net/netlink/af_netlink.c:1917
 sock_sendmsg_nosec net/socket.c:639 [inline]
 sock_sendmsg+0xd7/0x130 net/socket.c:659
 ____sys_sendmsg+0x753/0x880 net/socket.c:2330
 ___sys_sendmsg+0x100/0x170 net/socket.c:2384
 __sys_sendmsg+0x105/0x1d0 net/socket.c:2417
 __do_sys_sendmsg net/socket.c:2426 [inline]
 __se_sys_sendmsg net/socket.c:2424 [inline]
 __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2424
 do_syscall_64+0xfa/0x790 arch/x86/entry/common.c:294
 entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x45aff9
Code: ad b6 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 0f 83 7b b6 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f4ff3b59c78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
RAX: ffffffffffffffda RBX: 00007f4ff3b5a6d4 RCX: 000000000045aff9
RDX: 0000000000000000 RSI: 00000000200000c0 RDI: 0000000000000003
RBP: 000000000075bf20 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 0000000000000901 R14: 00000000004ca2fe R15: 000000000075bf2c
Modules linked in:
---[ end trace a22f7f52a398972c ]---
RIP: 0010:nla_get_be32 include/net/netlink.h:1483 [inline]
RIP: 0010:nft_parse_register+0x24/0x90 net/netfilter/nf_tables_api.c:7576
Code: ff ff ff eb d8 90 55 48 89 e5 41 54 53 48 89 fb e8 91 50 10 fb 48 8d 7b 04 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 47 8b
RSP: 0018:ffffc900087bf380 EFLAGS: 00010247
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffffc9000ded3000
RDX: 0000000000000000 RSI: ffffffff8664a4ff RDI: 0000000000000004
RBP: ffffc900087bf390 R08: ffff88805b34a5c0 R09: ffffed1015d2703d
R10: ffffed1015d2703c R11: ffff8880ae9381e3 R12: ffff8880a072da98
R13: ffffc900087bf498 R14: 0000000000000000 R15: dffffc0000000000
FS:  00007f4ff3b5a700(0000) GS:ffff8880ae900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f6efdf3a518 CR3: 000000009d23d000 CR4: 00000000001406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/01/17 21:06 net-old 5a9ef19454cd 3de7aabb .config console log report ci-upstream-net-this-kasan-gce
* Struck through repros no longer work on HEAD.