CVE-2025-38708 in Linux
요약
\~에 의해 VulDB • 2026. 07. 12.
리눅스 커널에서 다음 취약점이 해결되었습니다:
drbd: handle_write_conflicts 함수에서 누락된 kref_get 추가
`two-primaries(다중 주석)` 모드가 활성화되면 DRBD는 "동시" 쓰기를 감지하고 쓰기 충돌을 처리하여, 두 노드 모두에서 동일한 섹터에 동시에 작성하더라도 작성이 완료되었을 때 양쪽이 동일한 데이터를 갖도록 합니다.
"superseeded(업데이트된)" 쓰기를 처리하는 과정에서 kref_get 호출을 누락한 결과, drbd_destroy_device가 조기에 실행되고 Use-After-Free(UAF) 취약점이 발생하여 커널 크래시로 이어졌습니다. (증상: ...)
관련성: DRBD를 무작위 데이터 생성기로 사용하는 사람은 없어야 하며, 현재 `two-primaries` 사용자는 상위 레이어에서 동시 쓰기를 올바르게 처리하고 있는 것으로 보입니다. 즉, 클러스터 파일 시스템은 분산 락 관리자(DLM)를 사용하고, 가상화 환경의 라이브 마이그레이션(live migration)은 다른 노드에서 작성을 시작하기 전에 한쪽 노드의 작지를 중지합니다.
이는 "테스트 케이스"가 아닌 실제 운영 환경에서는 해당 코드 경로가 실행되지 않음을 의미합니다.
참고로 DRBD 9 버전에서는 상황이 다르게 처리됩니다. 여전히 "쓰기 충돌"을 감지하지만, 더 이상 이에 대해 복잡한 대응(스마트한 처리)을 시도하지 않습니다. 대신 연결을 강제로 끊는 방식으로 결정했습니다: 상위 레이어에서 동시 쓰기를 제출해서는 안 됩니다. 만약 그렇게 한다면 그 책임은 상위 레이어에 있습니다.
If you want to get best quality of vulnerability data, you may have to visit VulDB.