🔍 CVE-2026-22980

7.8
CVSS Score
HIGH
2026-01-23
2026-10-19 19:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 nfsd 구성 요소에서 v4_end_grace를 작성할 때 서버 종료 프로세스와 경합이 발생하여 메모리 해제 후 접근하는 Use-After-Free 취약점이 존재합니다. 이 문제는 nfsd_mutex를 유지할 수 없는 데드락 위험 때문에 발생하며, 새로운 플래그와 락을 도입하여 이를 해결했습니다.

💡 쉬운 설명

리눅스 서버가 종료되는 과정에서 특정 데이터가 이미 삭제되었음에도 불구하고 시스템이 해당 데이터에 접근하려고 시도하여 오류가 발생할 수 있는 문제입니다. 이로 인해 시스템이 불안정해지거나 보안 위협이 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: nfsd: provide locking for v4_end_grace Writing to v4_end_grace can race with server shutdown and result in memory being accessed after it was freed - reclaim_str_hashtbl in particularly. We cannot hold nfsd_mutex across the nfsd4_end_grace() call as that is held while client_tracking_op->init() is called and that can wait for an upcall to nfsdcltrack which can write to v4_end_grace, resulting in a deadlock. nfsd4_end_grace() is also called by the landromat work queue and this doesn't require locking as server shutdown will stop the work and wait for it before freeing anything that nfsd4_end_grace() might access. However, we must be sure that writing to v4_end_grace doesn't restart the work item after shutdown has already waited for it. For this we add a new flag protected with nn->client_lock. It is set only while it is safe to make client tracking calls, and v4_end_grace only schedules work while the flag is set with the spinlock held. So this patch adds a nfsd_net field "client_tracking_active" which is set as described. Another field "grace_end_forced", is set when v4_end_grace is written. After this is set, and providing client_tracking_active is set, the laundromat is scheduled. This "grace_end_forced" field bypasses other checks for whether the grace period has finished. This resolves a race which can result in use-after-free.

📍 영향받는 시스템

Linux kernel (nfsd module 사용 환경)

⚔️ 공격 벡터

서버 종료 시점과 NFSv4 grace period 종료 시점 사이의 타이밍을 이용한 경합 조건 유도

🛡️ 대응 방법

nfsd 관련 패치가 적용된 최신 버전의 Linux 커널로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

NVIDIA Cloud Gaming Guest Driver for Linux