🔍 CVE-2021-47506

9.8
CVSS Score
CRITICAL
2024-05-24
2026-08-04 10:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 nfsd 구성 요소에서 위임(delegation) 처리 중 레이스 컨디션으로 인해 발생하는 Use-After-Free 취약점입니다. 위임 해제 콜백이 실행되는 과정에서 메모리 해제 후 참조가 발생하여 시스템 불안정이나 리스트 손상을 초래할 수 있습니다.

💡 쉬운 설명

서버가 클라이언트에게 파일 권한을 잠시 맡기는 과정에서, 데이터가 삭제된 후에도 시스템이 해당 데이터를 계속 사용하려고 시도하는 오류입니다. 이로 인해 시스템이 멈추거나 보안 문제가 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: nfsd: fix use-after-free due to delegation race A delegation break could arrive as soon as we've called vfs_setlease. A delegation break runs a callback which immediately (in nfsd4_cb_recall_prepare) adds the delegation to del_recall_lru. If we then exit nfs4_set_delegation without hashing the delegation, it will be freed as soon as the callback is done with it, without ever being removed from del_recall_lru. Symptoms show up later as use-after-free or list corruption warnings, usually in the laundromat thread. I suspect aba2072f4523 "nfsd: grant read delegations to clients holding writes" made this bug easier to hit, but I looked as far back as v3.0 and it looks to me it already had the same problem. So I'm not sure where the bug was introduced; it may have been there from the beginning.

📍 영향받는 시스템

Linux Kernel (nfsd 모듈 사용 시, v3.0 이후 버전 포함)

⚔️ 공격 벡터

NFSv4 클라이언트가 특정 타이밍에 위임 해제(delegation break) 요청을 보내 레이스 컨디션을 유도함

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트

🔧 검증 코드

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

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