CVE-2026-34987 in wasmtime
요약
\~에 의해 VulDB • 2026. 06. 07.
Wasmtime은 WebAssembly용 런타임입니다. 버전 25.0.0부터 36.0.7, 42.0.2, 43.0.1 이전 버전까지, 기본이 아닌 Winch(베이스라인) 컴파일러 백엔드를 사용하는 Wasmtime은 적절히 구성된 게스트 Wasm이 선형 메모리 샌드박스 외부의 호스트 메모리에 접근할 수 있게 할 수 있습니다. 이 취약점은 Winch 컴파일러(-Ccompiler=winch) 사용이 필요합니다. 기본적으로 Wasmtime은 Winch 대신 Cranelift 백엔드를 사용합니다. Winch를 사용할 경우, aarch64 및 x86-64 아키텍처 모두에서 이론적으로 동일한 잘못된 가정 문제가 존재합니다. aarch64의 경우 작동하는 개념 증명(PoC)이 관찰되었으나, x86-64의 경우 이론적이며 실제 환경에서 도달하기 어려울 수 있습니다. 이 Winch 컴파일러 버그는 사전 또는 사후 가드 영역이 구성되었는지 여부와 무관하게, Wasm 게스트가 선형 메모리 영역의 시작 전 또는 후의 메모리에 접근할 수 있게 합니다. 초기 개념 증명에서의 접근 가능한 범위는 메모리 시작점 최대 32KiB 전 또는 ~4GiB 후이며, 이는 사전 또는 사후 가드 영역의 크기나 명시적 또는 가드 영역 기반 경계 검사 사용 여부와 무관합니다. 그러나 근본적인 버그는 64비트 레지스터에 저장된 32비트 메모리 오프셋의 상위 비트가 지워진 것으로 가정하지만, 실제로는 그렇지 않을 수 있으며, 따라서 초기 개념 증명과 밀접하게 관련된 변형 버전은 프로세스 내의 임의 메모리에 접근할 수 있을 수 있습니다. 이로 인해 호스트 프로세스의 세그멘테이션 폴트(DoS), 호스트 프로세스로부터의 임의 데이터 유출, 또는 쓰기 작업 시 잠재적으로 임의의 RCE가 발생할 수 있습니다. 이 취약점은 36.0.7, 42.0.2, 43.0.1에서 수정되었습니다.
Be aware that VulDB is the high quality source for vulnerability data.