================================================================== BUG: KASAN: slab-out-of-bounds in pfkey_msg2xfrm_state net/key/af_key.c:1227 [inline] BUG: KASAN: slab-out-of-bounds in pfkey_add+0x145d/0x3220 net/key/af_key.c:1506 Read of size 4313 at addr ffff8800b3ef2518 by task syz-executor6/6754 CPU: 1 PID: 6754 Comm: syz-executor6 Not tainted 4.4.135-ge75204c #55 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 0000000000000000 44794e677b1e6053 ffff8800b37f7740 ffffffff81e0ed0d ffffea0002cfbc80 ffff8800b3ef2518 0000000000000000 ffff8800b3ef2700 ffff8800b3ef2500 ffff8800b37f7778 ffffffff81515946 ffff8800b3ef2518 Call Trace: [] __dump_stack lib/dump_stack.c:15 [inline] [] dump_stack+0xc1/0x124 lib/dump_stack.c:51 [] print_address_description+0x6c/0x216 mm/kasan/report.c:252 [] kasan_report_error mm/kasan/report.c:351 [inline] [] kasan_report.cold.7+0x175/0x2f7 mm/kasan/report.c:408 [] check_memory_region_inline mm/kasan/kasan.c:325 [inline] [] check_memory_region+0x14f/0x1b0 mm/kasan/kasan.c:332 [] memcpy+0x23/0x50 mm/kasan/kasan.c:367 [] pfkey_msg2xfrm_state net/key/af_key.c:1227 [inline] [] pfkey_add+0x145d/0x3220 net/key/af_key.c:1506 [] pfkey_process+0x671/0x740 net/key/af_key.c:2834 [] pfkey_sendmsg+0x346/0xae0 net/key/af_key.c:3678 [] sock_sendmsg_nosec net/socket.c:625 [inline] [] sock_sendmsg+0xcc/0x110 net/socket.c:635 [] ___sys_sendmsg+0x745/0x880 net/socket.c:1962 [] __sys_sendmsg+0xd6/0x190 net/socket.c:1996 [] SYSC_sendmsg net/socket.c:2007 [inline] [] SyS_sendmsg+0x2d/0x50 net/socket.c:2003 [] entry_SYSCALL_64_fastpath+0x22/0x9e Allocated by task 6754: [] save_stack_trace+0x26/0x50 arch/x86/kernel/stacktrace.c:63 [] save_stack+0x43/0xd0 mm/kasan/kasan.c:512 [] set_track mm/kasan/kasan.c:524 [inline] [] kasan_kmalloc+0xc7/0xe0 mm/kasan/kasan.c:616 [] kasan_krealloc+0x64/0x80 mm/kasan/kasan.c:654 [] ksize+0x8a/0xf0 mm/slub.c:3727 [] __alloc_skb+0x133/0x600 net/core/skbuff.c:237 [] alloc_skb include/linux/skbuff.h:815 [inline] [] pfkey_sendmsg+0xfe/0xae0 net/key/af_key.c:3665 [] sock_sendmsg_nosec net/socket.c:625 [inline] [] sock_sendmsg+0xcc/0x110 net/socket.c:635 [] ___sys_sendmsg+0x745/0x880 net/socket.c:1962 [] __sys_sendmsg+0xd6/0x190 net/socket.c:1996 [] SYSC_sendmsg net/socket.c:2007 [inline] [] SyS_sendmsg+0x2d/0x50 net/socket.c:2003 [] entry_SYSCALL_64_fastpath+0x22/0x9e Freed by task 5061: [] save_stack_trace+0x26/0x50 arch/x86/kernel/stacktrace.c:63 [] save_stack+0x43/0xd0 mm/kasan/kasan.c:512 [] set_track mm/kasan/kasan.c:524 [inline] [] kasan_slab_free+0x72/0xc0 mm/kasan/kasan.c:589 [] slab_free_hook mm/slub.c:1383 [inline] [] slab_free_freelist_hook mm/slub.c:1405 [inline] [] slab_free mm/slub.c:2859 [inline] [] kfree+0xf4/0x310 mm/slub.c:3749 [] load_elf_binary+0x1fc3/0x4c20 fs/binfmt_elf.c:1079 [] search_binary_handler+0x14f/0x6f0 fs/exec.c:1471 [] exec_binprm fs/exec.c:1513 [inline] [] do_execveat_common.isra.36+0x116d/0x1f10 fs/exec.c:1635 [] do_execve fs/exec.c:1679 [inline] [] SYSC_execve fs/exec.c:1760 [inline] [] SyS_execve+0x42/0x50 fs/exec.c:1755 [] return_from_execve+0x0/0x23 The buggy address belongs to the object at ffff8800b3ef2500 which belongs to the cache kmalloc-512 of size 512 The buggy address is located 24 bytes inside of 512-byte region [ffff8800b3ef2500, ffff8800b3ef2700) The buggy address belongs to the page: kasan: CONFIG_KASAN_INLINE enabled kasan: GPF could be caused by NULL-ptr deref or user memory accessgeneral protection fault: 0000 [#1] PREEMPT SMP KASAN Dumping ftrace buffer: (ftrace buffer empty) Modules linked in: CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.4.135-ge75204c #55 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 task: ffffffff84417840 task.stack: ffffffff84400000 RIP: 0010:[] [] rb_set_parent_color include/linux/rbtree_augmented.h:117 [inline] RIP: 0010:[] [] ____rb_erase_color lib/rbtree.c:345 [inline] RIP: 0010:[] [] rb_erase+0x721/0x1cb0 lib/rbtree.c:429 RSP: 0018:ffff8801db207cf8 EFLAGS: 00010086 RAX: 5028454741505f4e RBX: dffffc0000000000 RCX: ffff8800b277fe08 RDX: ffffed003b6432e2 RSI: ffff8801db219710 RDI: 0a0508a8e82a0be9 RBP: ffff8801db207d40 R08: ffffffff8535b790 R09: 0000000000000001 R10: 0000000000000000 R11: ffffffff84417840 R12: ffff8800b277fdf8 R13: ffff8800b277fdf9 R14: ffffffff83aa9ee8 R15: ffffffff83aa9ee0 FS: 0000000000000000(0000) GS:ffff8801db200000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000020011fd2 CR3: 00000001bec16000 CR4: 00000000001606f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Stack: ffffffff844c6720 ffffffff84417840 fffffbfff0883023 ffffffff84418120 ffff8801ceddfdf8 ffff8801db219710 ffff8801db219718 0000000000000000 0000000000000000 ffff8801db207d70 ffffffff81e2c928 ffffffff844bdba0 Call Trace: [] timerqueue_del+0x78/0x170 lib/timerqueue.c:86 [] __remove_hrtimer+0x8e/0x250 kernel/time/hrtimer.c:917 [] __run_hrtimer kernel/time/hrtimer.c:1242 [inline] [] __hrtimer_run_queues+0x2dd/0x1000 kernel/time/hrtimer.c:1325 [] hrtimer_interrupt+0x1b1/0x430 kernel/time/hrtimer.c:1359 [] local_apic_timer_interrupt+0x74/0xa0 arch/x86/kernel/apic/apic.c:901 [] smp_apic_timer_interrupt+0x7c/0xa0 arch/x86/kernel/apic/apic.c:925 [] apic_timer_interrupt+0xa0/0xb0 arch/x86/entry/entry_64.S:741 [] arch_safe_halt arch/x86/include/asm/paravirt.h:117 [inline] [] default_idle+0x55/0x3c0 arch/x86/kernel/process.c:290 [] arch_cpu_idle+0x10/0x20 arch/x86/kernel/process.c:281 [] default_idle_call+0x57/0x70 kernel/sched/idle.c:93 [] cpuidle_idle_call kernel/sched/idle.c:157 [inline] [] cpu_idle_loop kernel/sched/idle.c:253 [inline] [] cpu_startup_entry+0x6af/0x780 kernel/sched/idle.c:301 [] rest_init+0x188/0x18e init/main.c:410 [] start_kernel+0x6b3/0x6e7 init/main.c:682 [] x86_64_start_reservations+0x29/0x2b arch/x86/kernel/head64.c:196 [] x86_64_start_kernel+0x13f/0x162 arch/x86/kernel/head64.c:185 Code: 15 00 00 4c 89 f7 49 89 44 24 10 48 c1 ef 03 80 3c 1f 00 0f 85 fd 14 00 00 48 89 c7 4d 89 e5 4d 89 67 08 48 c1 ef 03 49 83 cd 01 <80> 3c 1f 00 0f 85 95 0f 00 00 4c 89 e7 4c 89 28 48 c1 ef 03 80 RIP [] rb_set_parent_color include/linux/rbtree_augmented.h:117 [inline] RIP [] ____rb_erase_color lib/rbtree.c:345 [inline] RIP [] rb_erase+0x721/0x1cb0 lib/rbtree.c:429 RSP ---[ end trace f12c2c17abd87aae ]---