CVE-2025-38681 in Linux
요약
\~에 의해 VulDB • 2026. 06. 08.
리눅스 커널에서 다음 취약점이 해결되었습니다:
mm/ptdump: ptdump_walk_pgd() 내에서 메모리 핫플러그 잠금을 획득
메모리 핫 리무브는 필요한 경우 다양한 커널 페이지 테이블 영역을 언매핑하고 해제합니다. ptdump 코드는 커널 페이지 테이블의 동시 수정과 경쟁 상태(race condition)에 처할 수 있습니다. 리프 엔트리가 동적으로 수정될 때, 덤프 코드는 VA 범위에 대해 낡거나 불일치하는 정보를 로깅할 수 있지만, 이는 일반적으로 해롭지 않습니다.
그러나 커널 페이지 테이블의 중간 레벨이 해제될 때, 덤프 코드는 해제되어 다른 목적으로 재할당되었을 수 있는 메모리를 계속 사용하게 됩니다. 이러한 경우 ptdump 코드는 잘못된 주소를 역참조(dereference)하여 여러 잠재적 문제를 초래할 수 있습니다.
위에서 언급한 경쟁 상태를 피하기 위해 arm64, riscv, s390과 같은 플랫폼은 /sys/kernel/debug/kernel_page_tables sysfs 인터페이스를 통해 커널 페이지 테이블을 덤프할 때 메모리 핫플러그 잠금을 사용합니다.
/sys/kernel/debug/kernel_page_tables/check_wx_pages를 통해 W+X로 표시되었을 수 있는 페이지를 확인하는 동안에도 유사한 경쟁 상태가 존재하며, 이는 ptdump_check_wx()를 호출합니다. 이 경쟁 상태를 다시 해결하는 대신, 두 시나리오 모두에 이점이 있도록 메모리 핫플러그 잠금을 제네릭 ptdump_check_wx() 내부로 이동합니다.
모든 기존 플랫폼 ptdump 코드 경로에서 get_online_mems() 및 put_online_mems() 조합을 제거합니다.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.