{"id":25579,"date":"2026-09-18T04:31:35","date_gmt":"2026-09-17T20:31:35","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90170"},"modified":"2026-09-18T04:31:35","modified_gmt":"2026-09-17T20:31:35","slug":"cve-2026-90170","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90170","title":{"rendered":"CVE-2026-90170 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: validate ipc r"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>ksmbd: validate ipc response length before dereferencing its fields<\/p>\n<p>ipc_validate_msg() computes the expected message size by reading length<br \/>\nfields out of the response buffer supplied by the userspace ksmbd daemon<br \/>\n(payload_sz, session_key_len, ngroups, &#8230;).  Those fields are read before<br \/>\nthe buffer is verified to be large enough to contain the struct they belong<br \/>\nto, so a short response makes the read land past the end of the allocation.<\/p>\n<p>handle_response() sizes entry-&gt;response purely from the netlink attribute<br \/>\nlength (nla_len()) and only guards the leading handle read, so the daemon<br \/>\ncan install a response as small as the kmalloc-8 object seen below.  When<br \/>\nipc_msg_send_request() then calls ipc_validate_msg() for a<br \/>\nKSMBD_EVENT_RPC_REQUEST, the cast to struct ksmbd_rpc_command reads<br \/>\nresp-&gt;payload_sz at offset 8 of an 8-byte allocation:<\/p>\n<p>[ 3697.841381] ==================================================================<br \/>\n[ 3697.844099] BUG: KASAN: slab-out-of-bounds in ipc_msg_send_request+0x763\/0x800<br \/>\n[ 3697.846604] Read of size 4 at addr ffff888105f95910 by task kworker\/4:3\/20682<br \/>\n[ 3697.849061]<br \/>\n[ 3697.849801] CPU: 4 UID: 0 PID: 20682 Comm: kworker\/4:3 Not tainted 7.2.0-rc3-next-20260717-virtme #117 PREEMPT(lazy)<br \/>\n[ 3697.850077] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.17.0-debian-1.17.0-1 04\/01\/2014<br \/>\n[ 3697.850303] Workqueue: ksmbd-io handle_ksmbd_work<br \/>\n[ 3697.850592] Call Trace:<br \/>\n[ 3697.850794]<br \/>\n[ 3697.850952]  __dump_stack+0x21\/0x60<br \/>\n[ 3697.851239]  dump_stack_lvl+0xc2\/0x100<br \/>\n[ 3697.851528]  print_address_description+0x77\/0x200<br \/>\n[ 3697.851816]  ? ipc_msg_send_request+0x763\/0x800<br \/>\n[ 3697.852024]  print_report+0x58\/0x70<br \/>\n[ 3697.852316]  kasan_report+0x117\/0x150<br \/>\n[ 3697.852585]  ? down_write+0x146\/0x1f0<br \/>\n[ 3697.852809]  ? ipc_msg_send_request+0x763\/0x800<br \/>\n[ 3697.853082]  ipc_msg_send_request+0x763\/0x800<br \/>\n[ 3697.853385]  ? __pfx_ipc_msg_send_request+0x10\/0x10<br \/>\n[ 3697.853604]  ? kasan_unpoison+0x48\/0x70<br \/>\n[ 3697.853936]  ? __pfx___up_read+0x10\/0x10<br \/>\n[ 3697.854221]  ksmbd_rpc_ioctl+0x380\/0x520<br \/>\n[ 3697.854542]  ? __pfx_ksmbd_rpc_ioctl+0x10\/0x10<br \/>\n[ 3697.854757]  ? kasan_unpoison+0x48\/0x70<br \/>\n[ 3697.854962]  ? copy_from_kernel_nofault+0x32c\/0x4e0<br \/>\n[ 3697.855166]  ? kasan_unpoison+0x48\/0x70<br \/>\n[ 3697.855416]  fsctl_pipe_transceive+0x139\/0x7a0<br \/>\n[ 3697.855705]  ? __pfx_copy_from_kernel_nofault+0x10\/0x10<br \/>\n[ 3697.855937]  ? __pfx_fsctl_pipe_transceive+0x10\/0x10<br \/>\n[ 3697.856388]  ? __sanitizer_cov_trace_switch+0x7b\/0x140<br \/>\n[ 3697.856620]  smb2_ioctl+0x1141\/0x3420<br \/>\n[ 3697.856994]  ? __pfx_smb2_ioctl+0x10\/0x10<br \/>\n[ 3697.857182]  ? get_smb2_cmd_val+0xe3\/0x1c0<br \/>\n[ 3697.857655]  handle_ksmbd_work+0x9ad\/0x15e0<br \/>\n[ 3697.858034]  ? __pfx_handle_ksmbd_work+0x10\/0x10<br \/>\n[ 3697.858251]  ? lock_release+0xf7\/0x360<br \/>\n[ 3697.858466]  ? process_scheduled_works+0x954\/0x1600<br \/>\n[ 3697.858698]  ? process_scheduled_works+0x954\/0x1600<br \/>\n[ 3697.858905]  process_scheduled_works+0xc22\/0x1600<br \/>\n[ 3697.859368]  ? __pfx_process_scheduled_works+0x10\/0x10<br \/>\n[ 3697.859637]  ? __pfx_assign_work+0x10\/0x10<br \/>\n[ 3697.859896]  ? lock_is_held_type+0x7b\/0x110<br \/>\n[ 3697.860146]  worker_thread+0x975\/0xee0<br \/>\n[ 3697.860524]  ? __pfx_do_raw_spin_lock+0x10\/0x10<br \/>\n[ 3697.860830]  ? __kthread_parkme+0x21e\/0x260<br \/>\n[ 3697.861105]  kthread+0x3a6\/0x490<br \/>\n[ 3697.861423]  ? __pfx_worker_thread+0x10\/0x10<br \/>\n[ 3697.861643]  ? __pfx_kthread+0x10\/0x10<br \/>\n[ 3697.861878]  ret_from_fork+0x55a\/0xa20<br \/>\n[ 3697.862194]  ? __pfx_ret_from_fork+0x10\/0x10<br \/>\n[ 3697.862480]  ? __pfx_kthread+0x10\/0x10<br \/>\n[ 3697.862714]  ret_from_fork_asm+0x1a\/0x30<br \/>\n[ 3697.862965]<br \/>\n[ 3697.863039]<br \/>\n[ 3697.938882] Allocated by task 20761:<br \/>\n[ 3697.940257]  kasan_save_track+0x3e\/0x80<br \/>\n[ 3697.941782]  __kasan_kmalloc+0x72\/0x90<br \/>\n[ 3697.943228]  __kvmalloc_node_noprof+0x3e9\/0x6a0<br \/>\n[ 3697.944948]  handle_generic_event+0x59b\/0x750<br \/>\n[ 3697.946592]  genl_family_rcv_msg_doit+0x3d6\/0x560<br \/>\n[ 3697.946977]  genl_rcv_msg+0x67c\/0x900<br \/>\n[ 3697.947224]  netlink_rcv_skb+0x286\/0x580<br \/>\n[ 3697.947488]  genl_rcv+0x2d\/0x80<br \/>\n[ 3<br \/>\n&#8212;truncated&#8212;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>ksmbd: validate ipc response length before dereferencing its fields<\/p>\n<p>ipc_validate_msg() computes the expected message size by readi<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-25579","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/25579","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=25579"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=25579"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=25579"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}