
استغلال إثبات المفهوم لـ CVE-2026-43700: تسرب إطار فيديو عبر الأصل في Safari WebGPU عبر importExternalTexture، متجاوزًا سياسة نفس الأصل لاستخراج بيانات البكسل باستخدام تظليلات 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. قبل الإصلاح لم يكن هناك فحص عبر النطاقات للفيديو، لذا كان يمكن استيراد فيديو ملوَّث (tainted) عبر النطاقات وبدون CORS، ثم أخذ عينات منه باستخدام WGSL shader، وقراءة البكسلات مرة أخرى إلى JavaScript عبر + ، متجاوزًا سياسة نفس الأصل لتسريب إطارات فيديو عبر النطاقات.
GPUExternalTexturetaintsOrigincopyTextureToBuffermapAsyncالإصلاح (commit 67b563b8، bug 315368) أضاف checkVideoElementOriginTaint في مسار ضرب ذاكرة التخزين المؤقت ومسار الإنشاء داخل GPUDevice::importExternalTexture، بحيث يرمي الفيديو الملوَّث SecurityError مباشرة.