🔍 CVE-2026-99110

7.0
CVSS Score
HIGH
2026-10-28
2026-10-31 13:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 SMB 클라이언트 cifs_do_set_acl() 함수에서 힙 오버플로우 취약점이 수정되었습니다. ACL 크기 검증이 xattr 기준(4+count*8)으로만 이루어져, CIFS 와이어 포맷(6+count*10)으로 기록될 때 버퍼를 초과할 수 있었습니다. 또한 data_count가 __u16이라 USHRT_MAX를 넘는 크기가 패킷 길이를 잘못 잘라 서버가 부분적인 ACL을 적용하는 문제도 함께 해결되었습니다.

💡 쉬운 설명

Linux 커널이 네트워크 공유 폴더의 접근 권한 정보를 처리하는 과정에서 메모리 영역을 넘어 데이터를 쓸 수 있는 결함이 있었습니다. 이번 업데이트로 크기 검증을 강화하여 이 문제를 막았습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix heap overflow in cifs_do_set_acl() cifs_set_acl() validates ACL size using posix_acl_xattr_size(): 4 + (count * 8) // 4-byte header + 8 bytes per ACE cifs_do_set_acl() then calls posix_acl_to_cifs() to write the CIFS wire format into the same buffer: 6 + (count * 10) // 6-byte header + 10 bytes per ACE An ACL that passes the xattr-based check in cifs_set_acl() can overflow the heap when posix_acl_to_cifs() writes the larger CIFS format. Validate the CIFS format size against the remaining buffer space and USHRT_MAX before converting--data_count is __u16, so sizes above USHRT_MAX truncate the on-wire packet length, causing the server to apply a partial ACL. Replace MaxDataCount = 1000 with min(CIFSMaxBufSize, USHRT_MAX).

📍 영향받는 시스템

CIFS/SMB 클라이언트 기능이 포함된 Linux 커널 (수정 이전 버전, 배포판별 패치 버전 확인 필요)

⚔️ 공격 벡터

악성 SMB 서버 또는 네트워크 상의 공격자가 특수하게 조작된 ACL 응답을 보내 클라이언트 커널 힙 메모리를 오버플로우시키는 방식

🛡️ 대응 방법

배포판 제공 커널 보안 업데이트를 적용하고 재부팅하거나, cifs 모듈을 사용하지 않는 경우 모듈을 비활성화합니다.

🔧 검증 코드

커널 버전이 배포판의 패치된 버전 이상인지 확인하고, cifs 모듈이 로드되지 않았다면 해당 취약점 노출 위험이 낮음을 의미합니다.

Shell / Script
uname -r && (lsmod | grep -E '^cifs' || echo 'cifs module not loaded')

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel