Zero length message leads to an empty skb
general protection fault, probably for non-canonical address 0xdffffc0000000019: 0000 [#1] PREEMPT SMP KASAN NOPTI
KASAN: null-ptr-deref in range [0x00000000000000c8-0x00000000000000cf]
CPU: 0 PID: 9665 Comm: syz-executor Not tainted 6.1.0-rc6-next-20221122 #1
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
RIP: 0010:xfrm_policy_lookup_bytype.constprop.0.cold+0x21/0x5d
Code: 93 67 f2 ff e9 04 fc 5e ff e8 59 de 0b fd 48 8b 44 24 10 48 8d b8 cc 00 00 00 b8 ff ff 37 00 48 89 fa 48 c1 e0 2a 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 20 48
RSP: 0018:ffff88806ce09748 EFLAGS: 00010213
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000100
RDX: 0000000000000019 RSI: ffffffff843d2047 RDI: 00000000000000cc
RBP: 0000000000000001 R08: 0000000000000007 R09: fffffffffffff000
R10: 0000000000000000 R11: 0000000000000001 R12: 00000000ffffffff
R13: 0000000000000000 R14: dffffc0000000000 R15: 0000000000000000
FS: 0000555556588400(0000) GS:ffff88806ce00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffec42ce080 CR3: 0000000018c60000 CR4: 0000000000350ef0
Call Trace:
__xfrm_policy_check+0xdd7/0x2190
icmpv6_rcv+0x8bd/0x1d30
ip6_protocol_deliver_rcu+0xdea/0x1870
ip6_input_finish+0x150/0x2c0
ip6_input+0xa0/0xe0
ipv6_rcv+0x159/0x520
__netif_receive_skb_one_core+0x12e/0x1f0
__netif_receive_skb+0x1f/0x1c0
process_backlog+0x38a/0x7a0
__napi_poll+0xb9/0x690
net_rx_action+0x9b4/0xd10
__do_softirq+0x1c7/0x8f9
__irq_exit_rcu+0x11b/0x180
irq_exit_rcu+0x9/0x30
sysvec_apic_timer_interrupt+0x92/0xc0
asm_sysvec_apic_timer_interrupt+0x1a/0x20
RIP: 0010:_raw_spin_unlock_irqrestore+0x32/0x60
Code: 48 83 c7 18 53 48 89 f3 48 8b 74 24 10 e8 a6 53 eb fc 48 89 ef e8 6e cb eb fc 80 e7 02 74 06 e8 a4 5e 0f fd fb bf 01 00 00 00 19 27 e1 fc 65 8b 05 ba d1 c2 7b 85 c0 74 07 5b 5d e9 2b 29 00
RSP: 0018:ffff888044a6fae8 EFLAGS: 00000202
RAX: 00000000001a4b6b RBX: 0000000000000246 RCX: ffffffff812b6ccf
RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000001
RBP: ffff88800b8a66c0 R08: 0000000000000001 R09: ffffffff87631897
R10: fffffbfff0ec6312 R11: 0000000000000001 R12: ffff88800b31aed8
R13: ffffed1001714ce0 R14: ffff88800b31aed8 R15: 0000000000000246
scan_gray_list+0x1fb/0x400
kmemleak_scan+0x70e/0x1600
kmemleak_write+0x574/0x680
full_proxy_write+0x121/0x190
vfs_write+0x358/0xe40
ksys_write+0x12b/0x260
do_syscall_64+0x3f/0x90
entry_SYSCALL_64_after_hwframe+0x72/0xdc
RIP: 0033:0x7f6e5deef5c3
Code: 16 00 00 00 eb ae 90 b8 6e 00 00 00 eb a6 e8 44 ef 04 00 0f 1f 40 00 64 8b 04 25 18 00 00 00 85 c0 75 14 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 55 c3 0f 1f 40 00 48 83 ec 28 48 89 54 24 18
RSP: 002b:00007ffec425efe8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 00007ffec425f628 RCX: 00007f6e5deef5c3
RDX: 0000000000000004 RSI: 00007f6e5dfa5ed9 RDI: 0000000000000003
RBP: 0000000000000002 R08: 000000000000071f R09: 00007ffec42ce080
R10: 00007ffec42ce090 R11: 0000000000000246 R12: 00000000fffffff6
R13: 00007ffec4260ef1 R14: 0000000000000000 R15: 00000000001bd1a6
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:xfrm_policy_lookup_bytype.constprop.0.cold+0x21/0x5d
Code: 93 67 f2 ff e9 04 fc 5e ff e8 59 de 0b fd 48 8b 44 24 10 48 8d b8 cc 00 00 00 b8 ff ff 37 00 48 89 fa 48 c1 e0 2a 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 20 48
RSP: 0018:ffff88806ce09748 EFLAGS: 00010213
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000100
RDX: 0000000000000019 RSI: ffffffff843d2047 RDI: 00000000000000cc
RBP: 0000000000000001 R08: 0000000000000007 R09: fffffffffffff000
R10: 0000000000000000 R11: 0000000000000001 R12: 00000000ffffffff
R13: 0000000000000000 R14: dffffc0000000000 R15: 0000000000000000
FS: 0000555556588400(0000) GS:ffff88806ce00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffec42ce080 CR3: 0000000018c60000 CR4: 0000000000350ef0
----------------
Code disassembly (best guess):
0: 93 xchg %eax,%ebx
1: 67 f2 ff addr32 repnz (bad)
4: e9 04 fc 5e ff jmpq 0xff5efc0d
9: e8 59 de 0b fd callq 0xfd0bde67
e: 48 8b 44 24 10 mov 0x10(%rsp),%rax
13: 48 8d b8 cc 00 00 00 lea 0xcc(%rax),%rdi
1a: b8 ff ff 37 00 mov $0x37ffff,%eax
1f: 48 89 fa mov %rdi,%rdx
22: 48 c1 e0 2a shl $0x2a,%rax
26: 48 c1 ea 03 shr $0x3,%rdx
* 2a: 0f b6 14 02 movzbl (%rdx,%rax,1),%edx <-- trapping instruction
2e: 48 89 f8 mov %rdi,%rax
31: 83 e0 07 and $0x7,%eax
34: 83 c0 03 add $0x3,%eax
37: 38 d0 cmp %dl,%al
39: 7c 04 jl 0x3f
3b: 84 d2 test %dl,%dl
3d: 75 20 jne 0x5f
3f: 48 rex.W