🔍 CVE-2026-72217

9.8
CVSS Score
CRITICAL
2026-08-15
2026-08-17 06:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 SUNRPC 구성 요소에서 xdr_buf_to_bvec() 함수가 배열 범위를 확인하기 전에 데이터를 먼저 저장하는 취약점이 발견되었습니다. 이로 인해 할당된 메모리 범위를 벗어난 영역에 데이터가 기록되는 Out-of-Bounds(OOB) 쓰기 오류가 발생할 수 있습니다.

💡 쉬운 설명

컴퓨터 메모리의 정해진 칸을 넘어서 데이터를 저장하는 실수로 인해 시스템의 중요한 정보가 덮어씌워질 수 있는 문제입니다. 공격자가 이를 악용하면 시스템의 제어권을 탈취하거나 오류를 일으킬 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: SUNRPC: Bound-check xdr_buf_to_bvec() stores before writing xdr_buf_to_bvec() writes a bio_vec into the caller's array before testing whether that slot is in range, and the head branch performs the store with no check at all. When the caller's budget is exactly used up, the next store lands one element past the end of the array. The overflow label returns count - 1, which masks the surplus store but cannot undo it. rq_bvec, the array passed by nfsd_vfs_write(), is allocated to exactly rq_maxpages entries with no slack. The OOB store can land in adjacent slab memory; the bv_len and bv_offset fields written there are derived from client-supplied RPC payload sizes. Move the in-range check ahead of the store in the head, page-loop, and tail branches. With the check at the top of each sequence, count is incremented only after a successful store, so the overflow label can return count directly.

📍 영향받는 시스템

SUNRPC를 사용하는 Linux 커널 버전 (패치 적용 전 버전)

⚔️ 공격 벡터

클라이언트가 조작된 RPC 페이로드 크기를 전송하여 커널 메모리의 인접한 슬랩(slab) 영역에 잘못된 값을 쓰도록 유도

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 xdr_buf_to_bvec()의 범위 검사 로직을 수정해야 합니다.

🔧 검증 코드

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

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