
CVE-2026-43700에 대한 개념 증명 익스플로잇: importExternalTexture를 통한 Safari WebGPU의 교차 출처 비디오 프레임 유출로, 동일 출처 정책을 우회하여 WGSL 셰이더를 사용하여 픽셀 데이터를 유출합니다.
WebKit WebGPU importExternalTexture 교차 출처 정보 유출. Safari < 26.5.2.
확인 페이지 (Safari < 26.5.2로 열기):
https://cve43700-attacker.vercel.app
교차 출처 동영상:
https://cve43700-victim.vercel.app/colorcycle.mp4
[BYPASS] + 프레임별 [LEAK] RGBA = [...] -> 빨강/초록/파랑/흰색[PATCHED] importExternalTexture blocked: SecurityErrorGPUDevice.importExternalTexture({source: HTMLVideoElement})는 동영상을 GPU가 샘플링할 수 있는 GPUExternalTexture로 가져옵니다. 수정 전에는 동영상에 대해 taintsOrigin 교차 출처 확인을 하지 않았으며, 교차 출처이면서 CORS가 없는 tainted 동영상도 가져올 수 있었습니다. 그런 다음 WGSL 셰이더로 샘플링하고, copyTextureToBuffer + mapAsync로 픽셀을 JS로 읽어와 동일 출처 정책을 우회하여 교차 출처 동영상 프레임을 유출했습니다.
수정 (커밋 67b563b8, 버그 315368)은 GPUDevice::importExternalTexture의 캐시 적중 경로와 새로 생성 경로 모두에 checkVideoElementOriginTaint를 추가했으며, tainted 동영상은 바로 SecurityError를 발생시킵니다.