🔍 CVE-2024-46682

5.5
CVSS Score
MEDIUM
2024-09-13
2026-10-21 13:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 nfsd 구성 요소에서 nfsv4.0의 닫힌 파일에 대해 nfs4_show_open 함수가 NULL 포인터를 역참조하여 커널 패닉(Kernel Oops)을 유발하는 취약점입니다. 과거 커밋에서 상태 ID의 유효성 검사 방식이 변경되면서, 이미 닫힌 파일의 상태를 조회할 때 발생하던 문제가 해결되었습니다.

💡 쉬운 설명

리눅스 서버에서 NFS 서비스를 사용할 때, 이미 닫힌 파일을 조회하려고 하면 서버 시스템이 갑자기 멈추거나 오류가 발생할 수 있는 문제입니다. 이는 공격자가 시스템을 강제로 중단시키는 서비스 거부(DoS) 공격에 이용될 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: nfsd: prevent panic for nfsv4.0 closed files in nfs4_show_open Prior to commit 3f29cc82a84c ("nfsd: split sc_status out of sc_type") states_show() relied on sc_type field to be of valid type before calling into a subfunction to show content of a particular stateid. From that commit, we split the validity of the stateid into sc_status and no longer changed sc_type to 0 while unhashing the stateid. This resulted in kernel oopsing for nfsv4.0 opens that stay around and in nfs4_show_open() would derefence sc_file which was NULL. Instead, for closed open stateids forgo displaying information that relies of having a valid sc_file. To reproduce: mount the server with 4.0, read and close a file and then on the server cat /proc/fs/nfsd/clients/2/states [ 513.590804] Call trace: [ 513.590925] _raw_spin_lock+0xcc/0x160 [ 513.591119] nfs4_show_open+0x78/0x2c0 [nfsd] [ 513.591412] states_show+0x44c/0x488 [nfsd] [ 513.591681] seq_read_iter+0x5d8/0x760 [ 513.591896] seq_read+0x188/0x208 [ 513.592075] vfs_read+0x148/0x470 [ 513.592241] ksys_read+0xcc/0x178

📍 영향받는 시스템

Linux kernel (nfsd module 사용 환경)

⚔️ 공격 벡터

NFSv4.0 클라이언트로 파일을 읽고 닫은 후, 서버에서 관련 상태 정보를 조회하는 행위를 통해 유도 가능

🛡️ 대응 방법

해당 취약점이 수정된 최신 버전의 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