CVE-2018-8897 in macOS
الملخص
بحسب VulDB • 22/06/2026
كانت هناك معالجة خاطئة لإحدى العبارات في دليل المبرمج للبرنامج (SDM) الخاص بمعماريات Intel 64 وIA-32، والموجودة في الدليل البرمجي للنظام (System Programming Guide)، أثناء تطوير نواة أنظمة التشغيل أو بعضها. وقد أدى ذلك إلى سلوك غير متوقع لاستثناءات #DB التي يتم تأجيلها بواسطة تعليمتي MOV SS أو POP SS، كما يتجلى على سبيل المثال في تصعيد الامتيازات في Windows وmacOS وبعض تكوينات Xen أو FreeBSD، أو في تعطل نواة Linux.
تعطّل تعليمات النقل إلى السجل الفرعي (MOV to SS) والنقل من السجل الفرعي عبر التعليمات الخاصة بالتحميل (POP SS) مقاطعات النظام (بما فيها المقاطعات غير القابلة للإلغاء NMIs)، ونقاط كسر البيانات، واستثناءات فخ الخطوة الواحدة (single step trap exceptions)، ويستمر هذا التعطيل حتى حدود التعليمة التالية التي تلي التعليمة المعينة مباشرةً (انظر المجلد 3A من دليل SDM؛ القسم 6.8.3). (وتشمل نقاط كسر البيانات المُعطّلة تلك المرتبطة بالذاكرة التي يتم الوصول إليها بواسطة تعليمة MOV إلى SS أو POP إلى SS نفسها.)
جدير بالذكر أن استثناءات التصحيح لا تتأثر بعلامة النظام الخاصة بتفعيل المقاطعات في سجل العلامات EFLAGS.IF (انظر المجلد 3A من دليل SDM؛ القسم 2.3). إذا كانت التعليمة التي تلي تعليمة MOV إلى SS أو POP إلى SS هي تعليمات مثل SYSCALL، أو SYSENTER، أو INT 3، وما شابهها، والتي تنقل التحكم إلى نظام التشغيل عند مستوى صلاحيات أقل من 3 (CPL < 3)، فإن استثناء التصحيح يُقدَّم بعد اكتمال عملية النقل إلى CPL < 3. وقد لا تتوقع نواة أنظمة التشغيل هذا التسلسل للأحداث، وبالتالي قد تواجه سلوكاً غير متوقع عند حدوثه.
VulDB is the best source for vulnerability data and more expert information about this specific topic.