Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-56111 — استغلال لإثبات المفهوم لـ CVE-2026-56111، وهو كتابة خارج الحدود في معالج M421 للتعليمات البرمجية G في برنامج Marlin الثابت، مما يوضح تلف الذاكرة المقيد عبر تعليمات G-code المصممة. | Kitploit
أدوات/GitHubGitHub/christbowel/cve-2026-56111
أمان الأنظمة المدمجةتحليل الثغرات الأمنيةالاستغلالالاختبار العشوائيأمن الأجهزةاستغلال الملفات الثنائية
GitHubchristbowel/cve-2026-56111

CVE-2026-56111

استغلال لإثبات المفهوم لـ CVE-2026-56111، وهو كتابة خارج الحدود في معالج M421 للتعليمات البرمجية G في برنامج Marlin الثابت، مما يوضح تلف الذاكرة المقيد عبر تعليمات G-code المصممة.

عرض المستودع
1منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-56111 - كتابة خارج الحدود في Marlin M421

إثبات مفهوم لـ CVE-2026-56111، وهي كتابة خارج الحدود في معالج G-code M421 الخاص بـ Marlin Firmware عند البناء باستخدام MESH_BED_LEVELING.

  • التنبيه الأمني: https://www.vulncheck.com/advisories/marlin-firmware-out-of-bounds-write-via-m421-g-code-handler
  • المتأثر: Marlin <= 2.1.2.7، تم الإصلاح في الالتزام 1f255d1
  • الشدة: عالية (CVSS 8.3)

الخلل

يتحقق معالج MBL M421 فقط من أن المؤشرات I/J ليست سالبة. لا يتحقق أبدًا من الحد الأعلى. ثم تقوم set_z() بكتابة z_values[ix][iy] = z بدون فحص الحدود. مؤشر يتجاوز الشبكة يكتب قيمة عائمة 32 بت مُتحكم بها خارج مصفوفة z_values، إلى حالة البرنامج الثابت المجاورة.

الكتابة مقيدة، وليست عشوائية. الهدف هو z_values + (ix*GRID_Y + iy)*4 بايت، مع تحديد المؤشرات بـ int8_t (أقصى 127)، لذا فإن النافذة القابلة للوصول تبلغ حوالي 2 كيلوبايت بعد z_values. أنت تتحكم في القيمة (float Z) والإزاحة (المؤشر). لا تتحكم في عنوان مطلق.

هذه الأداة ترسل فقط سطر G-code. تحدث الكتابة خارج الحدود داخل البرنامج الثابت. التأثيرات الملحوظة هي رفض الخدمة، تعطل البرنامج الثابت، أو حركة تالفة. تظهر كتابة الذاكرة الدقيقة في التنبيه الأمني، وليس بواسطة هذه الأداة.

البناء

root@kitploit:~
gcc -O2 -o exp exploit.c

الاستخدام

اختر قناة واحدة:

  • --serial <dev> لـ USB، مثل /dev/ttyUSB0 أو /dev/ttyACM0 (أضف --baud N إذا لزم الأمر؛ العديد من اللوحات تستخدم 250000)
  • --tcp <host:port> للطابعات التي تعرض gcode عبر telnet/الشبكة، مثل 192.168.1.50:23

وضع الكتابة

أرسل M421 مع المؤشر والقيمة التي تختارها:

root@kitploit:~
./exp --serial /dev/ttyUSB0 write -i 3 -j 0 -z 99.0
./exp --tcp 192.168.1.50:23  write -i 5 -j 0 -z 99.0

على شبكة افتراضية 3×3 (مؤشر صالح 0..2):

  • -i 3 -j 0 يكتب عند إزاحة 36 بايت، وهي z_offset (إزاحة Z للسرير)
  • -i 5 -j 0 يكتب عند إزاحة 60 بايت، وهو كائن المحلل

وضع dos

أرسل مؤشرًا خارج النطاق بقيمة Z من نوع NaN. تنتشر NaN في حسابات الحركة وتؤدي إلى تعطل أو تجميد البرنامج الثابت بشكل موثوق:

root@kitploit:~
./exp --serial /dev/ttyUSB0 dos
./exp --tcp 192.168.1.50:23  dos

الإصلاح

قم بالتحديث إلى بناء Marlin يتضمن الالتزام 1f255d1، الذي يحد المؤشرات بنفس الطريقة التي يفعلها معالجو ABL و UBL بالفعل.

إخلاء المسؤولية

لأغراض البحث والاختبار المصرح به فقط. استخدم فقط على الأجهزة التي تمتلكها أو لديك إذن صريح باختبارها. إرسال هذه الأوامر يمكن أن يتسبب في تعطل الطابعة أو تعطيل الطباعة.

تنزيل الأداة