العودة إلى التحديثات
UpdatedAug 4, 2026

CVE-2026-39875-macOS-CUPS-LPE — Updated!

من مستخدم غير مميَّز إلى صلاحيات الجذر على أنظمة macOS Sonoma وSequoia وTahoe. تم إصلاح الثغرة في macOS 26.6 / 15.7.8 / 14.8.8.

مشاركة

CVE-2026-39875-macOS-CUPS-LPE

تصعيد صلاحيات من مستخدم غير مميَّز إلى الجذر (root) عبر ثغرة في CUPS تؤثر على أنظمة macOS Tahoe وSequoia وSonoma قبل الإصدارات macOS 26.6 / 15.7.8 / 14.8.8.

عروض إثبات المفهوم

macOS Tahoe 26.4.1

Tahoe 26.4.1

macOS Sequoia 15.7.5

Sequoia 15.7.5

macOS Sonoma 14.8.5

Sonoma 14.8.5

السبب الجذري

تنشأ الثغرة عن ثغرتين منطقيتين متسلسلتين في الخفيّة المميَّزة cupsd.

1. إعادة توجيه رمز مصادقة مميَّز عبر حد الثقة.

عندما يقوم CUPS بفحص طابعة مسجَّلة حديثًا، فإنه يعيد توجيه رمز مصادقة محلي صالح إلى الواجهة الخلفية للطابعة — أي نقطة النهاية المحددة بواسطة device-uri الخاص بالطابعة. ولأن المستخدم غير المميَّز يتحكم في ذلك device-uri، فيمكنه تسجيل طابعة تشير إلى مستمع يتحكم فيه واستلام رمز لم يكن مقصودًا أبدًا أن يغادر حدود النظام الفرعي الموثوق. يفترض التصميم أن الواجهة الخلفية موثوقة؛ والسماح للمستخدمين غير المميَّزين بتسجيل الطابعات يكسر هذا الافتراض.

2. إجراء عمليات إدخال/إخراج ملفات بصلاحيات الجذر قبل اكتمال التحقق من المصادقة.

ضمن نافذة زمنية قابلة للتكرار بشكل موثوق أثناء تسجيل الطابعة، يقوم cupsd بكتابة ملف بصلاحيات الجذر قبل اكتمال التحقق من المصادقة. عملية الإدخال/الإخراج المميَّزة غير مرهونة باكتمال فحص المصادقة، وكل من مسار الوجهة ومحتوى الملف متأثران من قِبل المهاجم في اللحظة التي تتم فيها الكتابة.


العرض

python3 poc.py

يجمع إثبات المفهوم بين الثغرتين في ثلاث مراحل.

المرحلة 1 — التقاط الرمز. يسجّل المهاجم طابعة يكون device-uri الخاص بها يشير إلى مستمع محلي يتحكم فيه، ثم يطلق فحصًا. يقوم cupsd بإعادة توجيه رمز مصادقة محلي صالح إلى المستمع الذي يتحكم فيه المهاجم.

المرحلة 2 — إعادة تشغيل الرمز. يعيد المهاجم تشغيل الرمز الملتقط لتسجيل طابعة ثانية باستخدام device-uri من نوع file:// يستهدف مسارًا عشوائيًا غير محمي بـ SIP من اختياره.

المرحلة 3 — كتابة عشوائية بصلاحيات الجذر. يُرسل المهاجم مهمة طباعة بمحتوى يتحكم فيه إلى الطابعة الثانية. يقوم cupsd بكتابة بيانات المهمة إلى المسار المحدد بصلاحيات الجذر. لا يُطلب أي تفاعل من المستخدم في أي مرحلة.

بعد ذلك، يتحقق السكربت من إنشاء الملف بصلاحيات الجذر، مما يثبت الثغرة.

ملاحظة: يوضح إثبات المفهوم هذا الكتابة العشوائية للملفات بصلاحيات الجذر فقط. لا يقوم بتصعيد الصلاحيات.


الاعتمادات

اكتُشفت بشكل مستقل بواسطة Dallas Dubs؛ كما نسبتها Apple إلى: Aaron Grattafiori - NVIDIA AI Red Team, XBreach.ai, Andreas Jaegersberger & Ro Achterberg of Nosebeard Labs

الفئات