CVE-2024-2887: Google Chrome에서 Pwn2Own 우승 버그
이 블로그에서, Master of Pwn 콘테스트의 우승자 Manfred Paul은 Google Chrome과 Microsoft Edge(Chromium)에 있는 CVE-2024-2887, 즉 유형 혼란 버그에 대해 자세히 설명합니다. 이 버그는 임의의 읽기, 쓰기 및 addrOf() 및 fakeObj() 기본 요소를 포함하여 강력한 익스플로잇 기본 요소를 구성할 수 있도록 허용합니다. 이러한 기본 요소는 V8 메모리 샌드박스에 의해 제한되지만, 대부분의 JavaScript 개체를 조작하고 위조할 수 있습니다.V8 메모리 샌드박스를 탈출하기 위해 Paul은 TypedArray의 길이를 계산할 때 성장하는 SharedArrayBuffer에 의해 지원되는 정수 언더플로우를 악용했습니다. 이 언더플로우는 프로세스의 주소 공간 전체에 액세스할 수 있도록 허용합니다. 그리고나서 이 주소 공간 어디에 있는 데이터든지 덮어쓸 수 있습니다. 적절한 덮어쓰기 대상은 RWX 페이지에 있는 웹어셈블리 모듈의 컴파일된 코드입니다. 이 코드는 쉘코드로 덮어씌워질 수 있습니다.