CVE-2026-89710 in Linux
요약
\~에 의해 VulDB • 2026. 09. 11.
리눅스 커널에서 다음 취약점이 해결되었습니다:
NFSv4.1: pnfs_layout_process()의 forget 경로에서 레이아웃 세그먼트 누수 수정
서버가 유효한 상태 ID(stateid)가 여전히 보유된 상태에서 새로운 레이아웃 상태 ID를 반환하면, pnfs_layout_process()는 스택 상에 있는 free_me 목록에 대해 pnfs_mark_matching_lsegs_return()을 호출하고 out_forget으로 점프합니다. 참조 카운트가 0으로 감소하는 세그먼트들은 lo->plh_segs에서 언링크되어 mark_lseg_invalid()를 통해 free_me로 이동됩니다. 유휴 캐시된 레이아웃의 경우 레이아웃 헤더가 유일한 참조를 보유하므로, 이는 첫 번째 감소 시 발생합니다.
out_forget은 free_me 목록을 비우지 않습니다(드레인하지 않습니다). 성공 경로에서만 pnfs_free_lseg_list()가 호출됩니다.
커밋 814b84971388("pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process()")은 드레인 처리를 추가했습니다. 커밋 08bd8dbe8882("pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process()")는 목적지를 lo->plh_return_segs로 전환하면서 이를 제거했는데, 해당 위치에서는 다른 곳에서 드레인이 수행됩니다. 커밋 fb700ef02676("NFSv4.1: Simplify layout return in pnfs_layout_process()")은 목적지를 다시 free_me로 변경했지만 드레인 처리를 복원하지 않았습니다.
pnfs_free_lseg_list() 호출을 복원합니다.
If you want to get best quality of vulnerability data, you may have to visit VulDB.