🔍 CVE-2023-53517

9.8
CVSS Score
CRITICAL
2025-10-01
2026-10-15 22:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 TIPC 프로토콜에서 MTU 협상 과정 중 매우 작은 MTU 값이 전달될 경우 정수 오버플로우가 발생합니다. 이로 인해 비정상적으로 큰 메모리가 할당되거나 시스템 크래시(General Protection Fault)가 발생할 수 있습니다.

💡 쉬운 설명

네트워크 통신 규격을 정하는 과정에서 공격자가 아주 작은 숫자를 보내 시스템을 혼란에 빠뜨리는 취약점입니다. 이로 인해 컴퓨터가 갑자기 멈추거나 꺼지는 현상이 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: tipc: do not update mtu if msg_max is too small in mtu negotiation When doing link mtu negotiation, a malicious peer may send Activate msg with a very small mtu, e.g. 4 in Shuang's testing, without checking for the minimum mtu, l->mtu will be set to 4 in tipc_link_proto_rcv(), then n->links[bearer_id].mtu is set to 4294967228, which is a overflow of '4 - INT_H_SIZE - EMSG_OVERHEAD' in tipc_link_mss(). With tipc_link.mtu = 4, tipc_link_xmit() kept printing the warning: tipc: Too large msg, purging xmit list 1 5 0 40 4! tipc: Too large msg, purging xmit list 1 15 0 60 4! And with tipc_link_entry.mtu 4294967228, a huge skb was allocated in named_distribute(), and when purging it in tipc_link_xmit(), a crash was even caused: general protection fault, probably for non-canonical address 0x2100001011000dd: 0000 [#1] PREEMPT SMP PTI CPU: 0 PID: 0 Comm: swapper/0 Kdump: loaded Not tainted 6.3.0.neta #19 RIP: 0010:kfree_skb_list_reason+0x7e/0x1f0 Call Trace: <IRQ> skb_release_data+0xf9/0x1d0 kfree_skb_reason+0x40/0x100 tipc_link_xmit+0x57a/0x740 [tipc] tipc_node_xmit+0x16c/0x5c0 [tipc] tipc_named_node_up+0x27f/0x2c0 [tipc] tipc_node_write_unlock+0x149/0x170 [tipc] tipc_rcv+0x608/0x740 [tipc] tipc_udp_recv+0xdc/0x1f0 [tipc] udp_queue_rcv_one_skb+0x33e/0x620 udp_unicast_rcv_skb.isra.72+0x75/0x90 __udp4_lib_rcv+0x56d/0xc20 ip_protocol_deliver_rcu+0x100/0x2d0 This patch fixes it by checking the new mtu against tipc_bearer_min_mtu(), and not updating mtu if it is too small.

📍 영향받는 시스템

Linux kernel (TIPC 프로토콜을 사용하는 시스템)

⚔️ 공격 벡터

악의적인 피어가 매우 작은 MTU 값을 포함한 Activate 메시지를 전송하여 정수 오버플로우 유도

🛡️ 대응 방법

TIPC 관련 커널 패치를 적용하여 MTU 협상 시 최소 크기 검증 로직을 포함해야 함

🔧 검증 코드

현재 실행 중인 커널 버전을 확인하여 취약점이 해결된 최신 패치 버전인지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel