CVE-2023-52700 in Linuxinfo

Summary

by MITRE • 05/21/2024

In the Linux kernel, the following vulnerability has been resolved:

tipc: fix kernel warning when sending SYN message

When sending a SYN message, this kernel stack trace is observed:

... [ 13.396352] RIP: 0010:_copy_from_iter+0xb4/0x550
... [ 13.398494] Call Trace:
[ 13.398630]
[ 13.398630] ? __alloc_skb+0xed/0x1a0
[ 13.398630] tipc_msg_build+0x12c/0x670 [tipc]
[ 13.398630] ? shmem_add_to_page_cache.isra.71+0x151/0x290
[ 13.398630] __tipc_sendmsg+0x2d1/0x710 [tipc]
[ 13.398630] ? tipc_connect+0x1d9/0x230 [tipc]
[ 13.398630] ? __local_bh_enable_ip+0x37/0x80
[ 13.398630] tipc_connect+0x1d9/0x230 [tipc]
[ 13.398630] ? __sys_connect+0x9f/0xd0
[ 13.398630] __sys_connect+0x9f/0xd0
[ 13.398630] ? preempt_count_add+0x4d/0xa0
[ 13.398630] ? fpregs_assert_state_consistent+0x22/0x50
[ 13.398630] __x64_sys_connect+0x16/0x20
[ 13.398630] do_syscall_64+0x42/0x90
[ 13.398630] entry_SYSCALL_64_after_hwframe+0x63/0xcd

It is because commit a41dad905e5a ("iov_iter: saner checks for attempt to copy to/from iterator") has introduced sanity check for copying from/to iov iterator. Lacking of copy direction from the iterator viewpoint would lead to kernel stack trace like above.

This commit fixes this issue by initializing the iov iterator with the correct copy direction when sending SYN or ACK without data.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Analysis

by VulDB Data Team • 09/19/2025

The vulnerability CVE-2023-52700 resides within the Linux kernel's TIPC (Transparent Inter-Process Communication) subsystem, specifically addressing a kernel warning that occurs during the transmission of SYN messages. This issue manifests as a kernel stack trace indicating a problem in the _copy_from_iter function, which is part of the kernel's iterator subsystem responsible for managing data transfers between user space and kernel space. The stack trace reveals the execution path leading from tipc_connect through __tipc_sendmsg to tipc_msg_build, ultimately terminating at the problematic _copy_from_iter function. This represents a classic case of improper iterator initialization that can lead to kernel instability and potential denial of service conditions.

The root cause of this vulnerability stems from a change introduced in commit a41dad905e5a which implemented stricter sanity checks for iov (io vector) iterator operations. These checks were designed to prevent invalid memory access patterns but inadvertently created a scenario where the iterator's copy direction was not properly initialized when handling SYN or ACK messages that contain no data payload. The TIPC subsystem's message building process fails to correctly set the iterator's direction flag, leading to the kernel attempting to perform operations with an improperly configured iterator state. This issue directly maps to CWE-1210, which deals with improper initialization of iterator objects, and represents a failure in the kernel's memory management subsystem to properly handle edge cases in data transfer operations.

The operational impact of this vulnerability extends beyond simple kernel warnings, as it can potentially lead to system instability or denial of service conditions within networked environments that rely on TIPC for inter-process communication. When a SYN message is sent through the TIPC subsystem, the kernel's memory management functions fail to properly initialize the iterator state, causing the system to generate a warning and potentially crash if the error conditions are severe enough. This vulnerability affects systems running Linux kernel versions that include the problematic commit, particularly those implementing TIPC networking protocols where applications may be actively connecting to remote endpoints or establishing network connections. The vulnerability is especially concerning in high-availability environments where TIPC is used for cluster communication, as it could lead to service disruption when the kernel encounters these error conditions during normal network operation.

The fix for CVE-2023-52700 involves properly initializing the iov iterator with the correct copy direction when sending SYN or ACK messages that contain no data payload. This solution addresses the fundamental issue by ensuring that the iterator's direction flag is correctly set before any data transfer operations are attempted, thereby preventing the kernel from encountering invalid iterator states. The mitigation strategy requires updating to a kernel version that includes the patched commit, which properly handles the iterator initialization for these specific message types. Organizations should prioritize this update as part of their security maintenance procedures, particularly those environments where TIPC is actively used for inter-process communication. The fix aligns with ATT&CK technique T1547.001 which involves establishing persistence through kernel modules, as proper iterator handling prevents potential exploitation of kernel memory management flaws that could be leveraged for privilege escalation or system compromise. System administrators should monitor for any kernel warnings related to TIPC functionality after applying the patch to ensure complete resolution of the issue.

Reservation

03/07/2024

Disclosure

05/21/2024

Moderation

accepted

CPE

ready

EPSS

0.00217

KEV

no

Activities

very low

Sources

Interested in the pricing of exploits?

See the underground prices here!