Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-5281 — تحليل CVE-2026-5281 (Chrome Dawn WebGPU UAF)، أدوات تحقق مخبرية، وبيئة قابلة لإعادة الإنتاج للبنيات المعرضة للثغرة مقابل البنيات المُصححة. | Kitploit
أدوات/GitHubGitHub/themalwareguardian/cve-2026-5281
تحليل الثغرات الأمنيةالاستغلالالتعلم والتعليماستغلال الملفات الثنائيةمختبرات وتدريب عمليArchived
GitHubthemalwareguardian/cve-2026-5281

CVE-2026-5281

تحليل CVE-2026-5281 (Chrome Dawn WebGPU UAF)، أدوات تحقق مخبرية، وبيئة قابلة لإعادة الإنتاج للبنيات المعرضة للثغرة مقابل البنيات المُصححة.

عرض المستودع
215منذ 5 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

⚡ CVE-2026-5281 - Chrome Dawn WebGPU Use-After-Free

CWE Status Fixed In

هذه الثغرة أثرت على أحد العملاء الذين نقدم لهم الخدمات. هذا المستودع هو مساهمتنا في البحث الأصلي: نقطة انطلاق مركزية للفريق، بحيث إذا ظهرت ثغرة مشابهة تؤثر على هذا المكون مرة أخرى، يكون لدينا الأساس جاهزًا. يجمع المستودع النظرية وراء الخلل، وملخصًا موثقًا لنتائج الباحث الأصلي، ومجموعة من الأدوات العملية للتحقق من التعرض في بيئة مختبرية.

ملاحظة: كنت أرغب في مشاركة المزيد من هذا البحث، لكن بسبب قيود الشركة لا يمكنني الكشف عنه أكثر. كل ما هو مدرج هنا قد تمت مراجعته ولا ينتهك أي اتفاقيات أنا ملزم بها. لذلك تم أرشفة المستودع في حالته الحالية.




📑 جدول المحتويات

  • السياق والغرض
  • ما هو WebGPU؟
  • ما هو Dawn؟

  • أساسيات الذاكرة (المكدس، الكومة، ذاكرة الفيديو)
  • ما هو استخدام بعد التحرير (Use-After-Free)؟
  • الثغرة
  • 📂
    • ما نعرفه من المصادر العامة
    • من JavaScript إلى العتاد
    • كيف يتصرف UAF على ذاكرة GPU
    • التأثير ومتطلبات الاستغلال

  • الجدول الزمني
  • البحث الأصلي
  • 📂
    • استراتيجية الاستغلال
    • النتائج الملاحظة

  • نتائج المختبر
  • 📂
    • لقطات الشاشة
    • رفض الخدمة (DoS)
    • حالة البحث

  • الموارد
  • جهة الاتصال



📌 السياق والغرض

في الأول من أبريل 2026، أصدرت Google تحديثًا أمنيًا لـ Chrome يعالج 21 ثغرة، إحداها CVE-2026-5281، والتي كانت تُستغل بنشاط في النسخة المتداولة وقت الإفصاح. بعد ثلاثة أيام، أضافتها CISA إلى فهرس الثغرات المعروفة والمستغلة وأصدرت توجيهًا تشغيليًا ملزمًا يطالب الوكالات الفيدرالية بتطبيق التصحيح. بحلول ذلك الوقت، كانت قد أثرت علينا بالفعل.

هذا المستودع موجود لسبب واحد: حتى في المرة القادمة التي يحدث فيها شيء كهذا، يكون لدينا نقطة انطلاق بدلاً من البدء من الصفر. يجمع المستودع بين:

  • النظرية: ما هما WebGPU و Dawn، وماذا يعني استخدام بعد التحرير (Use-After-Free) على مستوى العتاد، ولماذا هذا الخلل المحدد خطير.
  • البحث: ملخص موثق لاستراتيجية استغلال الباحث الأصلي والنتائج الملاحظة.
  • الأدوات: كاشف الإصدار، ومدقق الثغرات الذي يفحص سلسلة الهجوم الكاملة لـ WebGPU، وماسح محلي، وماسح أسطول للتدقيق الجماعي لملفات CSV، ومشغل UAF للتحقق المختبري.



🌐 ما هو WebGPU؟

عندما تريد فهم سبب وجود ثغرة معينة، تبدأ بما صُمم النظام لفعله والافتراضات التي بني عليها.

  • مواصفات W3C لـ WebGPU

    يقدم WebGPU واجهة برمجة تطبيقات (API) لتنفيذ عمليات، مثل التصيير والحساب، على وحدة معالجة الرسومات (GPU). WebGPU ليس محاولة لتقديم OpenGL أو OpenGL ES (الأنظمة المضمنة). إنها واجهة برمجة تطبيقات جديدة مبنية على أفكار واجهات برمجة التطبيقات الحديثة مثل Direct3D 12 و Metal و Vulkan.

WebGPU هو البديل الحديث لـ WebGL، واجهة برمجة تطبيقات GPU القديمة التي استخدمتها المتصفحات لسنوات. الفرق الرئيسي هو أن WebGPU صُمم من البداية ليكون آمنًا وذا إدارة واضحة للموارد. أنت تعلن عن دورة حياة كل مخزن مؤقت (buffer) ونسيج (texture) وخط أنابيب (pipeline) بنفسك. يعمل المتصفح كطبقة تحقق بين JavaScript والعتاد GPU.

الكائنات التي تقع في مركز هذه الثغرة، حسب ترتيب الإنشاء:``` GPUAdapter ← represents a physical GPU or software fallback └─ GPUDevice ← your logical connection to the adapter; owns everything ├─ GPUBuffer ← a chunk of GPU-accessible memory ├─ GPUShaderModule ← a compiled WGSL shader program ├─ GPUComputePipeline ← a shader wired to a pipeline layout ├─ GPUBindGroup ← binds buffers as inputs to a pipeline ├─ GPUCommandEncoder ← records a sequence of GPU commands └─ GPUQueue ← submits recorded commands to hardware

القاعدة المهمة هنا: كل كائن مملوك لـ GPUDevice. إتلاف المخزن المؤقت بينما لا يزال الجهاز يحتوي على أوامر قيد التنفيذ تشير إليه هو أمر غير قانوني صراحةً بموجب المواصفات. من المفترض أن يكتشف تطبيق Dawn ذلك ويرفضه. CVE-2026-5281 هو حالة لم يفعل فيها ذلك.



---
---
---



<div id='whatisdawn'/>

## ***⚙️ ما هو Dawn؟***

- **[Dawn - تنفيذ WebGPU مفتوح المصدر](https://dawn.googlesource.com/dawn)**

	> Dawn هو تنفيذ مفتوح المصدر ومتعدد المنصات لمعيار WebGPU قيد التطوير. يعرض واجهة برمجة تطبيقات C++ أصلية تعكس WebGPU IDL مع بعض الامتدادات.

Dawn هي مكتبة C++ داخل Chrome تترجم استدعاءات JavaScript الخاصة بـ WebGPU إلى أوامر GPU أصلية للمنصة. على Windows تستهدف D3D12، على macOS تستهدف Metal، وعلى Linux تستهدف Vulkan. تقع بين محرك JavaScript في Chrome وبرنامج تشغيل الأجهزة، وهي مسؤولة عن أربعة أشياء: التحقق من صحة استدعاءات API، تسلسل الأوامر، تتبع عمر الكائنات، وإظهار الأخطاء إلى JavaScript.

يقع CVE-2026-5281 في جزء تتبع العمر. تحديدًا، في المدة التي يحتفظ فيها Dawn بكائنات المخزن المؤقت لل GPU حية بينما لا تزال الأوامر التي تشير إليها معلقة للتنفيذ على قائمة انتظار الأجهزة.```
JavaScript (V8)
	│  WebGPU API calls
	▼
Dawn (C++) - validates, serializes, tracks lifetimes, reports errors
	│
	▼
D3D12 (Windows) - Metal (macOS) - Vulkan (Linux)
	│
	▼
GPU hardware driver
	│
	▼
Physical GPU - shader cores, VRAM



🧠 أساسيات الذاكرة (المكدس، الكومة، VRAM)

تحتاج إلى نموذج ذهني واضح لمكان وجود الأشياء في الذاكرة قبل أن يصبح Use-After-Free بديهيًا.``` High addresses ┌────────────────────────────────────┐ │ Kernel space │ The OS and drivers live here. │ │ User-mode code cannot touch it. ├────────────────────────────────────┤ │ Stack │ Function call frames. Fast. │ (grows downward) │ Freed automatically when the │ │ function returns. ├────────────────────────────────────┤ │ Heap │ Dynamic allocations - malloc, new, │ (grows upward) │ smart pointers like Ref. │ │ Freed only when you say so. ├────────────────────────────────────┤ │ BSS / Data / Text │ Globals, constants, compiled code. └────────────────────────────────────┘ Low addresses

كائنات C++ الخاصة بـ Dawn، مثل الكائن الداخلي الذي يدعم GPUBuffer، تعيش على الـ heap. ويتم عدّها بالمراجع: يحتفظ مؤشر ذكي بعدد الأشياء التي تحتفظ بمرجع للكائن. عندما يصل هذا العدد إلى الصفر، يتم تشغيل المدمر وتُعاد الذاكرة إلى المخصص.
تنزيل الأداة