كشف فريق من الباحثين الأكاديميين من جامعتي VUSec وScuola Superiore Sant’Anna عن متغير جديد وخطير من ثغرات Spectre الشهيرة في المعالجات، يحمل اسم Branch Target Reuse (BTR)، ويستهدف محركات الترجمة الفورية Just-In-Time (JIT) المستخدمة في متصفحات الويب وبيئات تشغيل اللغات البرمجية وحتى نواة نظام لينوكس. ويؤكد الباحثون أن هذا الهجوم قادر على تجاوز بعض آليات الحماية المعتمدة حاليًا، ما يفتح الباب أمام تسريب بيانات حساسة من الأنظمة المستهدفة.
BTR.. ثغرة جديدة تستغل سلوكًا غير متوقع في المعالجات الحديثة
تعتمد الثغرة الجديدة على نقطة ضعف دقيقة في كيفية تعامل المعالجات الحديثة مع عمليات تعديل الكود أثناء التشغيل. فبينما تقوم المعالجات بإعادة مزامنة التعليمات البرمجية بعد تعديلها، فإنها لا تتخلص دائمًا من سجلات التنبؤ القديمة الخاصة بأهداف القفزات غير المباشرة داخل المعالج.
هذه السجلات القديمة يمكن أن تظل مخزنة داخل آليات التنبؤ بالتفرعات لفترة أطول من عمر الكود الأصلي نفسه. وعندما يعيد محرك JIT استخدام نفس المنطقة في الذاكرة لتخزين كود جديد، يستطيع المهاجم استغلال هذه المعلومات المتبقية لتوجيه التنفيذ المؤقت نحو تعليمات مختلفة تمامًا عن المقصودة.
ويمنح هذا السيناريو المهاجم قدرة على اختطاف مسار التنفيذ العابر داخل المعالج، ما يؤدي إلى تجاوز بعض وسائل التقوية البرمجية أو الوصول إلى تعليمات غير متوقعة تسمح في النهاية باستخراج بيانات سرية من الذاكرة.
ويمثل هذا الاكتشاف تطورًا لافتًا في تاريخ هجمات Spectre التي ظهرت لأول مرة عام 2017، والتي استندت إلى استغلال ميزة التنفيذ التخميني Speculative Execution المستخدمة في المعالجات الحديثة لتحسين الأداء وتسريع تنفيذ الأوامر.
كيف يعمل الهجوم الجديد على محركات JIT؟
اختبر الباحثون هجوم BTR على عدد من البيئات واسعة الانتشار، بما في ذلك محرك SpiderMonkey المستخدم داخل متصفح Firefox، وبيئة GraalVM، إضافة إلى محرك cBPF JIT المدمج داخل نواة لينوكس.
وتبدأ العملية بإجبار محرك JIT على إنشاء كتلة تدريبية من التعليمات البرمجية، ثم دفع مسار التنفيذ إلى استخدامها بحيث يتم تسجيلها داخل مخزن أهداف التفرعات Branch Target Buffer المعروف اختصارًا بـ BTB.
بعد ذلك يعمل المهاجم على تحرير هذه الكتلة وإعادة تخصيص مساحة الذاكرة نفسها تقريبًا لكود جديد مختلف. وعند إعادة تنفيذ التفرع غير المباشر، قد يعتمد المعالج على بيانات BTB القديمة ويقفز بشكل تخميني إلى الموقع السابق، رغم أن محتوى الذاكرة قد تغير بالكامل.
النتيجة النهائية هي تنفيذ تعليمات برمجية لم يكن يفترض تنفيذها أصلًا، ما يتيح كشف معلومات حساسة أو الالتفاف على الحواجز الأمنية المفروضة على النظام.
ووصف الباحثون هذا الأسلوب بأنه أول مثال عملي لهجوم Spectre-v2 “زمني” أو Temporal Spectre Attack، إذ لا يعتمد على نقل التفرع إلى هدف جديد في مكان مختلف، بل على إعادة استخدام الهدف نفسه بعد تغير معنى الكود الموجود داخله.
إثبات عملي: استخراج كلمة مرور الجذر من لينوكس خلال دقائق
الأكثر إثارة للقلق أن الباحثين لم يكتفوا بالجانب النظري، بل نجحوا في تطوير استغلالين عمليين كاملين ضد نواة لينوكس.
وأظهرت التجارب إمكانية استخراج واستعادة قيمة تجزئة كلمة مرور المستخدم الجذر Root Password Hash خلال بضع دقائق فقط، حتى على أنظمة Intel المحدثة بالكامل والتي تعمل بإعدادات الحماية الافتراضية.
وتعكس هذه النتيجة خطورة الهجوم، لأنها تثبت قدرة الثغرة على تجاوز طبقات أمنية عديدة صُممت خصيصًا لمواجهة هجمات Spectre-v2 التقليدية.
ويؤكد الباحثون أن سر نجاح BTR يكمن في أنه لا يعتمد على ما يعرف بالانتهاكات المكانية Spatial Violations التي استخدمتها الهجمات السابقة، بل يستغل تغير دلالة الكود داخل العنوان نفسه، وهو أمر لم تكن آليات الحماية الراهنة مصممة للتعامل معه بالدرجة الكافية.
تداعيات أمنية واسعة وإطلاق تحديثات للحماية
يشير الباحثون إلى أن متغير BTR نجح أيضًا في تقويض فعالية بعض وسائل التخفيف الأمنية السابقة المستخدمة ضد هجمات Spectre-v2، بما في ذلك الدفاعات المرتبطة بأبحاث Training Solo التي كُشف عنها خلال السنوات الماضية.
ورغم أن نطاق التأثير يتركز في محركات JIT، فإن خطورة الأمر تتضاعف بسبب وجود هذه المحركات اليوم داخل مكونات شديدة الحساسية مثل نواة لينوكس نفسها عبر تقنية cBPF.
وعقب الإفصاح المسؤول عن الثغرة، طُرحت معالجات أمنية رسمية وتم دمجها بالفعل داخل نواة لينوكس ضمن الثغرتين CVE-2026-64507 وCVE-2026-64508.
كما اتخذ مشروع GraalVM نهجًا مختلفًا عبر عشوائية مواقع ذاكرة التخزين الخاصة بكود JIT للحد من فرص إعادة استخدام المناطق نفسها. أما مؤسسة Mozilla فقد درست تطبيق وسائل حماية قائمة على تقنية IBPB، لكنها تركز حاليًا على استكمال ونشر آليات العزل بين المواقع Site Isolation.
ويرى الباحثون أن اكتشاف BTR يسلط الضوء على مشكلة أعمق في تصميم المعالجات الحديثة، إذ يتبين أن إعادة مزامنة الذاكرة والتخزين المؤقت بعد تعديل الكود ليست كافية وحدها لضمان الأمان الكامل. فهناك حالات أخرى قد تظل فيها بعض البنى الميكرو-معمارية محتفظة بمعلومات قديمة يمكن استغلالها لاحقًا بطرق مشابهة.
ويأتي هذا الكشف بعد أسابيع قليلة من إعلان باحثين في مختبر CSAIL التابع لمعهد MIT عن تقنية هجومية جديدة تحمل اسم Interrupt Injection، قادرة هي الأخرى على تجاوز بعض دفاعات Spectre-v2 وتسريب بيانات من ذاكرة أنظمة لينوكس المعتمدة على معالجات Intel وAMD، ما يشير إلى استمرار الباحثين في اكتشاف مسارات جديدة لاستغلال التنفيذ التخميني رغم مرور ما يقرب من عقد على ظهور عائلة Spectre للمرة الأولى.































