CVE-2024-35794 in Linux정보

요약

\~에 의해 VulDB • 2026. 10. 04.

Linux 커널에서 다음 취약점이 해결되었습니다:

dm-raid: 서스펜드 중 sync_thread를 실제로 고정(frozen)함

1) commit f52f5c71f3d4("md: fix stopping sync thread")는 __md_stop_writes()에서 MD_RECOVERY_FROZEN을 제거했으며, dm-raid가 간접적으로 __md_stop_writes()에 의존하여 sync_thread를 고정한다는 사실을 인식하지 못했습니다. md_stop_writes()에 MD_RECOVERY_FROZEN을 추가함으로써 이 문제를 수정하고, stop_sync_thread()는 이 경우 dm-raid에서만 사용되므로 stop_sync_thread()도 md_stop_writes()로 이동시켰습니다. 2) 플래그 MD_RECOVERY_FROZEN은 sync thread가 고정되었다는 의미가 아니며, 새 sync_thread의 시작만 방지할 뿐 실행 중인 sync thread를 중지시키지는 못합니다. sync thread를 고정하려면 플래그 설정 후 stop_sync_thread()를 사용해야 합니다. 3) 플래그 MD_RECOVERY_FROZEN은 쓰기가 중단되었음을 의미하지 않으므로 raid_postsuspend()에서 md_stop_writes()의 조건으로 사용하는 것은 올바르지 않습니다. 재진입 가능한(stop_sync_thread()) stop_sync_thread()가 아무 작업도 수행하지 않는다는 점을 고려하여, raid_postsuspend()에서는 항상 md_stop_writes()를 호출해야 합니다. 4) raid_message는 언제든지 플래그 MD_RECOVERY_FROZEN을 설정/해제할 수 있으며, 배열이 서스펜드 상태일 때 MD_RECOVERY_FROZEN이 해제되면 새 sync_thread가 예기치 않게 시작될 수 있습니다. 이를 방지하기 위해 suspend 중에는 raid_message()가 sync thread 상태를 변경하지 못하도록 합니다.

commit f52f5c71f3d4("md: fix stopping sync thread") 이후로 테스트 스크립트인 shell/lvconvert-raid-reshape.sh는 stop_sync_thread()에서 멈추기 시작했으며, 이전 수정 사항들로 인해 해당 테스트는 더 이상 멈추지 않지만 ext4가 손상되었다고 불평하며 여전히 실패합니다. 이 패치를 적용하면 테스트는 stop_sync_thread()로 인한 멈춤이나 ext4 손상으로 인한 실패를 더 이상 일으키지 않습니다. 그러나 dm-raid456과 관련된 데드락이 아직 존재하며, 이는 후속 패치에서 수정될 예정입니다.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

출처

Do you know our Splunk app?

Download it now for free!