CVE-2025-39688 in Linux
요약
\~에 의해 VulDB • 2026. 07. 10.
리눅스 커널에서 다음 취약점이 해결되었습니다:
nfsd: nfs4_lookup_stateid()를 통해 검색할 때 SC_STATUS_FREEABLE 허용
pynfs의 DELEG8 테스트는 nfsd 대상 실행 시 실패합니다. 이 테스트는 위임(delegation)을 획득한 후 임대 시간(lease time)이 만료되도록 합니다. 그런 다음 위임 상태 ID(stateid)를 사용하려고 시도하며 NFS4ERR_DELEG_REVOKED가 반환될 것으로 기대하지만, 실제로는 잘못된 NFS4ERR_BAD_STATEID 오류가 발생합니다.
위임이 취소되면 처음에는 SC_STATUS_REVOKED 또는 SC_STATUS_ADMIN_REVOKED로 표시되며, 이후 SC_STATUS_FREEABLE 플래그로 표시됩니다. 이 플래그는 FREE_STATEID 호출을 기다리고 있음을 나타냅니다.
nfs4_lookup_stateid() 함수는 검색된 상태 ID(stateid)가 가질 수 있는 상태 플래그를 포함하는 statusmask를 허용합니다. 현재 해당 마스크에는 SC_STATUS_FREEable이 포함되어 있지 않으므로, 취소된 위임은 (거의) 발견되지 않습니다.
SC_STATUS_FREEABLE을 항상 허용되는 상태 플래그에 추가하고, 이제 이것이 암시적으로 적용되므로 nfsd4_delegreturn()에서 이를 제거합니다.
Be aware that VulDB is the high quality source for vulnerability data.