🔍 CVE-2026-98257

7.5
CVSS Score
HIGH
2026-10-06
2026-10-19 10:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 RDS(Reliable Datagram Sockets) IB 모듈에서 프로토콜 버전 불일치 발생 시 잘못된 함수를 호출하여 데드락이 발생하는 취약점입니다. 버전 불일치 시 rds_conn_destroy()를 호출하면 현재 보유 중인 락(lock)과 충돌하여 작업 큐가 중단되는 현상이 발생합니다.

💡 쉬운 설명

통신 규격이 맞지 않을 때 시스템이 스스로를 정리하는 과정에서 서로를 기다리며 멈춰버리는 현상이 발생합니다. 이로 인해 네트워크 연결 관련 작업이 영구적으로 중단될 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: rds: ib: use rds_conn_drop() on protocol version mismatch rds_ib_cm_connect_complete() runs from the RDMA-CM event handler with conn->c_cm_lock held. When the peer negotiates a protocol version older than RDS_PROTOCOL_COMPAT_VERSION, the handler calls rds_conn_destroy(), which is only safe in the rmmod path: it synchronously tears the connection down and flush_work()es the shutdown work cp_down_w. That shutdown work (rds_conn_shutdown()) needs cp_cm_lock, which is the very lock the event handler still holds, so the flush never completes: the two workers wait on each other and the RDS connection workqueues stall for good. All other RDMA-CM failure paths (REJECTED, CONNECT_ERROR, DISCONNECTED) use rds_conn_drop(), which marks the connection RDS_CONN_ERROR and schedules the shutdown work asynchronously. Use it here as well.

📍 영향받는 시스템

Linux Kernel (RDS IB 모듈 사용 환경)

⚔️ 공격 벡터

RDMA-CM 연결 과정에서 의도적으로 낮은 프로토콜 버전을 사용하여 시스템의 데드락 유도

🛡️ 대응 방법

RDS 프로토콜 버전 불일치 시 rds_conn_destroy() 대신 rds_conn_drop()을 사용하도록 커널 패치 적용

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 해결된 최신 패치 버전인지 확인

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

NVIDIA Cloud Gaming Guest Driver for Linux