
Preuve de concept d'exploitation pour CVE-2026-43700 : fuite de trames vidéo inter-origines dans Safari WebGPU via importExternalTexture, contournant la politique de même origine pour exfiltrer des données de pixels à l'aide de shaders WGSL.
WebKit WebGPU importExternalTexture fuite d'informations cross-origin. Safari < 26.5.2.
Page de vérification (ouvrir avec Safari < 26.5.2) :
https://cve43700-attacker.vercel.app
Vidéo cross-origin :
https://cve43700-victim.vercel.app/colorcycle.mp4
[BYPASS] + trame par trame [LEAK] RGBA = [...] -> rouge/vert/bleu/blanc[PATCHED] importExternalTexture blocked: SecurityErrorGPUDevice.importExternalTexture({source: HTMLVideoElement}) importe la vidéo en tant que échantillonnable par le GPU. Avant la correction, la vidéo n'était pas soumise à la vérification cross-origin via ; une vidéo tainted, cross-origin et sans CORS pouvait également être importée, puis échantillonnée via un shader WGSL, et les pixels étaient lus en JS via + , contournant la politique de même origine pour fuiter des trames vidéo cross-origin.
GPUExternalTexturetaintsOrigincopyTextureToBuffermapAsyncLa correction (commit 67b563b8, bug 315368) a ajouté checkVideoElementOriginTaint dans les chemins de cache et de création de GPUDevice::importExternalTexture ; une vidéo tainted lève directement une SecurityError.