
إثبات المفهوم الذي تم إنشاؤه لـ CVE-2022-35978 للأغراض التعليمية فقط.
CVE-2022-35978 هي ثغرة أمنية خطيرة تؤثر على إصدارات Minetest حتى الإصدار 5.5.1 وما يشملها.
Minetest هو محرك ألعاب فوكسل مجاني ومفتوح المصدر يدعم التعديل السهل وإنشاء الألعاب. في وضع اللاعب الفردي، يمكن للـ mod تعيين إعداد عام يتحكم في سكربت Lua الذي يتم تحميله لعرض القائمة الرئيسية. يتم تحميل هذا السكربت بمجرد الخروج من جلسة اللعبة. بيئة Lua التي تعمل فيها القائمة ليست في صندوق حماية (sandbox)، مما يسمح لها بالتداخل المباشر مع نظام المستخدم.
للتخفيف من هذه المشكلة، يُنصح المستخدمون بتحديث Minetest إلى الإصدار 5.6.0 أو أحدث، حيث تم معالجة الثغرة.
تم تعيين درجة أساسية CVSS v3.1 لهذه الثغرة بقيمة 10.0 (حرجة) من قبل NVD، مما يشير إلى تأثير محتمل عالٍ.
لمزيد من التفاصيل، راجع سجل التغيير الرسمي لـ Minetest وcommit على GitHub الذي يعالج هذه المشكلة.

لتشغيل السكربت(ات):
cve_2022_35978' في مجلد '[MINETEST_PATH]/mods' لديك.[MINETEST_PATH]/bin/mintest.exe' كمسؤول.Esc للعودة إلى القائمة الرئيسية.minetest.conf) ليتضمن السطر التالي:enable_console = true
من هنا، عند تشغيل اللعبة، سيتم أيضًا تشغيل الطرفية الأوامرية لإخراج رسائل الطباعة.
تم اختبار إثبات المفهوم هذا والتحقق من عمله على إصدار Minetest 5.0.0 على Windows 10 (Build 19045).
اختبار إثبات المفهوم على إصدار Minetest 5.6.0 يؤكد أن هذا قد تمت معالجته:
2025-02-28 23:24:11: ERROR[Main]: ModError: Failed to load and run script from C:\Users\Can\Desktop\minetest-5.6.0-win64\bin\..\mods\cve_2022_35978\init.lua:
2025-02-28 23:24:11: ERROR[Main]: Attempted to set disallowed setting.
2025-02-28 23:24:11: ERROR[Main]: stack traceback:
2025-02-28 23:24:11: ERROR[Main]: [C]: in function 'set'
2025-02-28 23:24:11: ERROR[Main]: ...minetest-5.6.0-win64\bin\..\mods\cve_2022_35978\init.lua:29: in main chunk
2025-02-28 23:24:11: ERROR[Main]: Check debug.txt for details.
2025-02-28 23:24:11: ACTION[Main]: Server: Shutting down
لقد قمت بتطوير إثبات المفهوم (PoC) هذا للأغراض التعليمية فقط ولتسهيل التعلم حول أمان التطبيقات بين زملائي. بالإضافة إلى ذلك، كنت مهتمًا بشكل خاص باستكشاف CVE هذه بسبب شغفي القوي بأمان التطبيقات وبرمجة ألعاب الفيديو.
يتم توفير إثبات المفهوم (PoC) هذا للأغراض التعليمية فقط ولتعزيز التعلم في مجال أمن التطبيقات. لا أقر أو أدعم أي استخدام ضار لهذا الكود. قد يكون استغلال الثغرات دون إذن غير قانوني وغير أخلاقي. استخدم إثبات المفهوم هذا بمسؤولية وفقط في البيئات التي لديك فيها إذن صريح.