وُصفت الثغرة CVE-2025-68260 على نطاق واسع بأنها أول ثغرة أمنية تم تعيينها لرمز Rust في نواة لينكس الأساسية. توجد الثغرة في برنامج تشغيل أندرويد بيندر المستند إلى Rust (الصدأ_الموثق) ويوصف بأنه خطأ من فئة الأعطال: حالة سباق يمكن أن تفسد مؤشرات القائمة المرتبطة المتطفلة وتؤدي إلى حدوث خلل في نواة kernel oops / panic (رفض الخدمة).
هذا الأمر مهم لفرق الأمن لسببين. أولاً، لا تزال أخطاء النواة "المعطلة فقط" تسبب تأثيرًا تشغيليًا حقيقيًا - خاصة في البيئات عالية التوفر أو البيئات متعددة المستأجرين. ثانيًا، يعتمد التعرض على التكوين: لن تتأثر العديد من أنظمة Linux ما لم يتم تمكين تطبيق Rust Binder واستخدامه.
الملخص التنفيذي للمهندسين الأمنيين
- CVE: CVE-2025-68260
- المكوّن: نواة لينكس نواة لينكس رست أندرويد بيندر (
الصدأ_الموثق)، بما في ذلكالعقدة::إطلاقوقائمة_الموتالتعامل - فئة الأخطاء: حالة السباق + التلاعب غير الآمن بالقائمة المتطفلة غير الآمنة → تلف المؤشر
- التأثير: تعطل Kernel / DoS (موصوف علنًا)
- يعتمد التعرض على: ما إذا كان Rust Binder ممكّنًا/محددًا (على سبيل المثال,
android_binder_ipc_IPC_rust,الموثق) - حالة NVD: "في انتظار التحليل" في وقت كتابة هذا التقرير (قد يكون CVSS معلقاً)
ما هو CVE-2025-68260: خطأ في التزامن في برنامج تشغيل Rust Binder Binder
يصف سجل NVD عملية إزالة محددة غير آمنة على قائمة مرتبطة متطفلة. لا تكون العملية آمنة إلا إذا لم يتمكن أي مؤشر ترابط آخر من لمس العنصر في نفس الوقت السابق/التالي المؤشرات. يحدث الفشل عندما يحدث نمط إسقاط القفل في العقدة::إطلاق يتداخل مع غير آمن متزامن مع غير آمن متزامن إزالةمما يؤدي إلى تلف القائمة المرتبطة وتعطلها.
يتضمن NVD عرضًا تمثيليًا لتعطل النواة ("غير قادر على معالجة طلب ترحيل النواة...") مرتبط بمؤشرات القائمة التالفة، بما يتوافق مع ثغرة أمنية من فئة الأعطال وليس عيبًا منطقيًا خفيًا.
يبدو رسم تخطيطي مفاهيمي قصير للنمط الإشكالي (من أجل الحدس، وليس كاستغلال) على النحو التالي:
// رسم تصوري (ليس كود نواة كامل):
قفل(death_list);
نقل_جميع_العناصر_إلى_القائمة_المحلية();
إلغاء القفل(death_list);
// التكرار بدون قفل
للعنصر في local_list {
// معالجة العنصر
}
// قد يقوم الخيط المتزامن بـ
غير آمن { غير آمن { death_list.remove(item)} // يلامس المؤشرات السابقة/التالية
// => سباق البيانات => تلف المؤشر => تعطل النواة
المفتاح هو متغير التزامن: يتطلب لمس مؤشرات القائمة المتطفلة بأمان ضمانات وصول حصرية، وتفشل هذه الضمانات عندما يمكن تعديل عناصر القائمة بالتوازي أثناء اجتيازها بدون قفل.
لماذا أصبح هذا "أول نواة صدأ CVE"
وصف غريغ كرواه-هارتمان (المشرف المستقر) هذا الأمر علنًا بأنه أول مشكلة في كود Rust في نواة kernel، مؤكدًا أن المشكلة "تسبب فقط عطلًا" ولا تمثل مسارًا مثبتًا لتلف الذاكرة القابلة للتسلح.
هذا التأطير مفيد من الناحية التشغيلية: فهو يساعد فرق الأمن على فرز الأخطاء الأمنية باعتبارها مخاطر تتعلق بالتوافر مع التعرض للتكوين مع تجنب المبالغة في إمكانية الاستغلال.
الأنظمة المتأثرة: الجدول الزمني للإصدار وواقع التكوين
هناك حقيقتان ترسّخان الجدول الزمني ونموذج التعرّض:
- تم دمج برنامج تشغيل Rust Android Binder في نظام التشغيل Linux الإصدار 6.18-ص1وفقًا لوثائق مشروع Rust for Linux.
- يدعم تكوين نواة Android kernel صراحةً اختيار تطبيق Binder، بما في ذلك متغير Rust. تشير وثائق Kconfig إلى
الموثقكمقبض سطر الأوامر kernel المستخدم لاختيار التنفيذ ويتضمن الخيارات التي تحكم الافتراضي.
هذا يعني أن التعرض ليس "كل لينكس". قد لا يقوم أسطول الخوادم العامة بتمكين Rust Binder. ولكن يجب أن تتعامل النواة التي تركز على نظام أندرويد أو الأجهزة المطوّرة التي تشغّل حزم حاويات أندرويد أو البنيات المخصصة التي تمكّن تطبيق Rust Binder مع CVE-2025-68260 على أنها قابلة للتنفيذ.
الموثق نفسه هو آلية أساسية من آليات IPC للأندرويد، موثقة على نطاق واسع في مواد بنية أندرويد.
فحوصات التعرض السريع (قابلة للتدقيق، بدون محتوى استغلالي)
استخدم هذه الأوامر لتحديد ما إذا كانت بيئتك في النطاق أم لا.
إصدار النواة
Uname -r
تكوين النواة: الصدأ + الموثق + الموثق الصدأ + الموثق الصدأ
# بنمط Distro /boot (شائع في العديد من الأنظمة)
grep -E "CONFIG_ANDROID_BINDER_IPC(_RUST)؟ |CONFIG_RUST" /boot/config-$(uname -r) 2>/dev/null
# إذا تم تمكين /proc/config.gz
zcat /proc/config.gz 2>/dev/null | grep -E "CONFIG_ANDROID_BINDER_IPC(_RUST)؟ |CONFIG_RUST"
اختيار تطبيق الموثق (غالبًا ما تستخدم نواة Android نواة Android binder.impl)
cat /proc/cmdline /proc/cmdline | tr '' \' \n | grep -E '^binder\\.impl=''
إن الموثق تم توثيق المعلمة في Kconfig Kconfig لنواة Android كجزء من سلوك اختيار التنفيذ.
اصطياد إشارة التصادم (الأعراض فقط)
dmesg -T | egrep -i "الصدأ_binder|binder|غير قادر على التعامل مع طلب الترحيل|Oops|KASAN" | tail -n 200
استراتيجية الإصلاح: الترقية أولاً، الترقية أولاً، النقل الخلفي فقط باستخدام CI الحقيقي
النهج الأكثر أمانًا هو الانتقال إلى إصدار نواة مستقر يحتوي على الإصلاح. وتركز التغطية العامة على الترقية إلى نواة مستقرة بدلاً من انتقاء الالتزامات المعزولة، بما يتوافق مع ممارسات استقرار النواة واختبارها.
يتضمن سجل NVD مراجع إلى مصادر kernel.org التي تتبع سياق الإصلاح.
إذا كنت تقوم بتشغيل نواة Android مخصصة ولا يمكنك الترقية على الفور، فإن المسار الهندسي هو عادةً: نقل الإصلاح إلى مجموعة التصحيح التي تحتفظ بها والتحقق من صحتها على أعباء العمل ذات الأعباء الثقيلة على نظام Binder. ومع ذلك، بالنسبة لمعظم الشركات، فإن الخيار العملي هو: استهلاك تحديثات البائعين (قناة الموزع/الموزع/المعدات الموزعة/المعدات الميكانيكية والكيميائية) وتوثيق أدلة الإصلاح.
جدول الفرز
| الحقل | القيمة |
|---|---|
| مكافحة التطرف العنيف | CVE-2025-68260 |
| المكوّن | برنامج تشغيل رست أندرويد الموثق الصدأ (الصدأ_الموثق), العقدة::إطلاق / قائمة_الموت المسار |
| فئة الضعف | حالة السباق + تلف مؤشر القائمة المتطفلة غير الآمنة |
| التأثير في أسوأ الحالات | تعطل Kernel / DoS (الوصف العام) |
| يعتمد التعرض على | تم تمكين/اختيار رابط الصدأ (android_binder_ipc_IPC_rust, الموثق) |
| إثراء NVD | "في انتظار التحليل" (قد تكون معلقة) |
السياق: مكافحة التطرف العنيف النواة ذات الصلة لتحديد الأولويات
وُصفت CVE-2025-68260 علنًا بأنها من فئة الأعطال. ولتحديد الأولويات، تقوم العديد من المؤسسات بمقارنة معاييرها بمكافحة التطرف العنيف في نواة kernel CVEs ذات التأثير الواضح على الامتيازات:
- CVE-2019-2215 (CVE-2019-2215 (Android Binder UAF / EoP): يصف NVD رفع الامتيازات من خلال استخدام الموثق بعد التحرر من القيود؛ ويوفر المشروع صفر تحليلاً مفصلاً.
- CVE-2022-0847 ("الأنبوب القذر"): تم تعقبها على نطاق واسع لتصعيد الامتيازات المحلية؛ وأصدرت وكالة الاستخبارات المالية تنبيهًا
- CVE-2024-1086 (جداول nf_tables UAF / LPE): يلخص NVD وريد هات إمكانات LPE من الاستخدام بعد الفراغ في netfilter/nf_tables.
الخلاصة العملية: تعامل مع CVE-2025-68260 كأولوية قصوى عندما يكون Binder/Rust Binder قيد الاستخدام النشط وتكون الأعطال مؤثرة على الأعمال؛ وإلا فلا تدع عنوان "أول مكافحة لمشكلة Rust CVE" يحل مشاكل نواة LPE التي يمكن الوصول إليها على نطاق أوسع.
تفعيل الاستجابة مع Penligent
بالنسبة لمكافحات التطرف العنيف المعتمدة على التكوين في النواة، نادرًا ما يكون عنق الزجاجة هو قراءة الاستشارات، بل إنتاج إجابات قابلة للدفاع عنها وقابلة للتطوير على "أين تعرضنا" و "هل تم الإصلاح بالفعل". يمكن ل Penligent تبسيط هذه الدورة من خلال تحويل CVE-2025-68260 إلى سير عمل أدلة قابل للتكرار: جمع إصدارات النواة وإشارات التكوين عبر الأصول، وتجميع المضيفين حسب تمكين Rust Binder و الموثق الاختيار، وإنشاء تقرير إصلاح جاهز للتدقيق مع مراجع داعمة. تم تصميم هذا النهج للتحقق والإغلاق، وليس للاستغلال.
NVD CVE-2025-68260
https://nvd.nist.gov/vuln/detail/CVE-2025-68260
إشعار غريغ كرواه-هارتمان (تأطير الأعطال؛ أول مكافحة لمشكلة في نواة الصدأ)
https://social.kernel.org/notice/B1JLrtkxEBazCPQHDM
تغطية سيكيوريتي أونلاين
https://securityonline.info/rusts-first-breach-cve-2025-68260-marks-the-first-rust-vulnerability-in-the-linux-kernel/
Rust لنظام التشغيل Linux: برنامج تشغيل Android Binder Binder (مدمج في الإصدار 6.18-rc1)
https://rust-for-linux.com/android-binder-driver
نواة الأندرويد Kconfig (خيارات Binder Rust؛ اختيار binder.impl)
https://android.googlesource.com/kernel/common/+/refs/tags/android15-6.6-2024-07_r44/drivers/android/Kconfig
مستندات Android: نظرة عامة على الموثق IPC
https://source.android.com/docs/core/architecture/hidl/binder-ipc
NVD CVE-2019-2215
https://nvd.nist.gov/vuln/detail/CVE-2019-2215
مشروع زيرو آر سي إيه: CVE-2019-2215
https://googleprojectzero.github.io/0days-in-the-wild/0day-RCAs/2019/CVE-2019-2215.html
NVD CVE-2022-0847
https://nvd.nist.gov/vuln/detail/CVE-2022-0847
تنبيه CISA: الأنابيب القذرة
https://www.cisa.gov/news-events/alerts/2022/03/10/dirty-pipe-privilege-escalation-vulnerability-linux
NVD CVE-2024-1086
https://nvd.nist.gov/vuln/detail/cve-2024-1086
ريد هات: CVE-2024-1086
https://access.redhat.com/security/cve/cve-2024-1086

