🔍 CVE-2026-89639

7.1
CVSS Score
HIGH
2026-09-11
2026-10-19 09:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 CIFS 구현에서 O_TRUNC 플래그를 사용할 때 cifs_do_truncate() 함수가 적절한 캐시 무효화를 수행하지 않는 취약점입니다. 이로 인해 파일 크기를 줄일 때 fscache의 쿠키 크기 조정이 제대로 이루어지지 않아 오래된 캐시 데이터가 제공될 수 있습니다. 이를 해결하기 위해 cifs_setsize() 이후에 cifs_invalidate_cache()를 호출하도록 수정되었습니다.

💡 쉬운 설명

파일의 내용을 지우고 크기를 줄일 때, 컴퓨터가 예전에 저장해둔 잘못된 데이터를 계속 보여줄 수 있는 문제입니다. 이 취약점이 해결되면 파일 크기가 변했을 때 예전 데이터를 사용하지 않도록 강제로 초기화합니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: cifs: use cifs_invalidate_cache() in cifs_do_truncate() for O_TRUNC cifs_do_truncate() is invoked from cifs_open() without i_rwsem, so it cannot use cifs_resize_file_locked() to perform a proper fscache cookie resize. Instead, add cifs_invalidate_cache() after cifs_setsize(). cifs_invalidate_cache() calls fscache_invalidate(), which works without holding i_rwsem: it unconditionally increments inval_counter and sets FSCACHE_COOKIE_NO_DATA_TO_READ, ensuring that stale cached data is not served once the cookie is later activated by fscache_use_cookie(). Truncation to zero leaves no valid cached data, making invalidation the correct semantic here.

📍 영향받는 시스템

Linux Kernel (CIFS module 사용 시스템)

⚔️ 공격 벡터

로컬 또는 네트워크를 통해 CIFS 파일 시스템의 파일 크기를 0으로 만드는(Truncation) 동작을 수행하여 캐시 불일치 유도

🛡️ 대응 방법

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:N

💻 영향받는 소프트웨어

Linux Kernel