🔍 CVE-2025-38588

5.5
CVSS Score
MEDIUM
2025-08-19
2026-11-05 22:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 IPv6 라우팅 코드에서 rt6_nlmsg_size() 함수가 무한 루프에 빠질 수 있는 문제가 수정되었습니다. fib6_del_route()와 fib6_add_rt2node()가 list_del_rcu()를 사용하면서 RCU 리더가 리스트 헤드를 더 이상 보지 못해 순회가 끝나지 않을 수 있었습니다. 패치는 fib6_nsiblings가 0이면 루프를 다시 시작하도록 변경했습니다.

💡 쉬운 설명

리눅스 커널이 IPv6 경로 정보를 계산하는 과정에서 같은 작업을 끝없이 반복할 수 있는 버그가 있었습니다. 이 문제가 발생하면 시스템이 멈추거나 응답이 느려질 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: ipv6: prevent infinite loop in rt6_nlmsg_size() While testing prior patch, I was able to trigger an infinite loop in rt6_nlmsg_size() in the following place: list_for_each_entry_rcu(sibling, &f6i->fib6_siblings, fib6_siblings) { rt6_nh_nlmsg_size(sibling->fib6_nh, &nexthop_len); } This is because fib6_del_route() and fib6_add_rt2node() uses list_del_rcu(), which can confuse rcu readers, because they might no longer see the head of the list. Restart the loop if f6i->fib6_nsiblings is zero.

📍 영향받는 시스템

IPv6 라우팅 기능을 사용하는 수정 전 Linux 커널 버전 (패치된 안정 버전 업데이트 필요)

⚔️ 공격 벡터

네트워크 경로 변경이 많이 발생하는 상황에서 라우팅 테이블 갱신과 조회가 겹칠 때 발생하며, 로컬 또는 네트워크 측면의 서비스 거부(DoS) 가능성이 있습니다.

🛡️ 대응 방법

배포판 제공 보안 업데이트 또는 CVE-2025-38588을 포함한 최신 커널 버전으로 업그레이드하고 재부팅합니다.

🔧 검증 코드

출력된 커널 버전을 배포판 보안 공지나 Linux 커널 패치 정보와 대조하여 수정이 포함된 버전인지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel