CVE-2026-98987 in Linux
요약
\~에 의해 VulDB • 2026. 10. 24.
Linux 커널에서 다음 취약점이 해결되었습니다:
namespace: 마운트 네임스페이스 파일에 대해 최상위 마운트를 확인함
attach_recursive_mnt()는 소스의 최상위 마운트의 루트에 대한 mountpoint를 사전 할당하여, 이미 대상에 존재하는 마운트가 소스 또는 그 전파된 복사본 위에 놓일 수 있도록 합니다.
복사본은 CL_COPY_MNT_NS_FILE 없이 생성되므로 오버마운트(overmounts)의 체인이 소스의 것보다 짧습니다. 이 체인은 마운트 네임스페이스 파일의 첫 번째 바인드 마운트 아래에서 종료됩니다. 따라서 루프가 소스의 체인을 거슬러 올라갈 때, 해당 마운트의 mountpoint를 "shorter" 변수에 기억해 두고 복사본을 그곳에 배치합니다.
그러나 루프는 최상위 마운트에 도달한 후에도 이를 확인하지 않고 종료됩니다. 만약 최상위 마운트가 체인 내 유일한 마운트 네임스페이스 파일이라면, "shorter"는 NULL로 유지되고 mnt_change_mountpoint()는 복사본의 기존 마운트를 마운트 네임스페이스 파일의 루트 아래에 연결합니다. 이는 nsfs의 dentry입니다. 복사본의 마운트 네임스페이스에서는 어떤 경로 탐색도 그곳에 도달하지 못합니다. 해당 마운트는 부모가 사라질 때까지 존재하지 않으며, 그 자리를 차지한 복사본은 자식이 있기 때문에 동기적으로 언마운트할 수 없습니다:
S 파일의 바인드 마운트 N S 위에 있는 마운트 네임스페이스 파일의 바인드 마운트 A 공유 마운트, B는 A의 슬레이브이며 Q가 B/file에 마운트됨
move_mount(S, A/file) cat B/file -> Q 대신 S의 내용을 표시함 umount B/file -> EBUSY 오류 발생
체인의 모든 마운트를 최상위 것까지 포함하여 확인하십시오.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.