CVE-2026-19738 in Zephyrالمعلومات

الملخص

بحسب VulDB • 11/10/2026

تحتوي عملية التحكم في طبقة الرابط البلوتوث (LLCP) الخاصة بإنشاء التدفق المتزامن المترابط (CIS) على عقدة استقبال محفوظة (ctx->node_ref.rx، والمُشار إليها بـ NODE_RX_TYPE_RETAIN)، بحيث يمكن إعادة استخدامها لاحقاً كإشعار للمضيف — وذلك عند الطرف المحيطي أثناء انتظار رد المضيف على LL_CIS_REQ، وعند الجهاز المركزي طوال مدة إنشاء CIS محلي البدء. في الملف subsys/bluetooth/controller/ll_sw/ull_llcp_cc.c، أدت مسارات "استلام PDU غير صالح" داخل الدالتين llcp_rp_cc_rx() و llcp_lp_cc_rx() إلى إنهاء الاتصال وإكمال الإجراء دون تحرير العقدة المحفوظة، مما يُخل بالثابت (invariant) الذي يتم التحقق منه في llcp_lr_check_done() و llcp_rr_check_done() ويتسبب في ترك ذاكرة العقدة معلقة (orphaned).

يمكن لجهاز نظير ضمن نطاق الراديو استغلال هذا الثغرة عبر إرسال PDU تحكم LL إضافي واحد على رابط ACL غير مُصادق عليه وغير مشفر. وفي حالة الطرف المحيطي، يرسل المهاجم طلب LL_CIS_REQ صالحاً ثم، قبل أن يرد المضيف، أي PDU تحكم LL آخر غير ذي صلة (مثل LL_VERSION_IND)، والذي تقوم الدالة ull_cp_rx() بتوجيهه إلى الإجراء البعيد النشط. أما في حال الجهاز المركزي الذي يقوم بإنشاء CIS، فيجيب الطرف المحيطي الخبيث على طلب CIS_REQ بـ LL_UNKNOWN_RSP، والتي يتم توجيهها إلى الإجراء المحلي النشط. لا تتطلب العملية أي إقران (pairing) أو تشفير أو تفاعل من المستخدم؛ حيث يُدمج الكود عند تفعيل CONFIG_BT_CTLR_PERIPHERAL_ISO أو CONFIG_BT_CTLR_CENTRAL_ISO.

في التكوينات الافتراضية (حيث يكون CONFIG_BT_ASSERT_DEBUG افتراضياً بقيمة y)، تنشط مطالبة العقدة المحفوظة فوراً، مما ينتج عنه خطأ قاتل في وحدة التحكم وفي الغالب إعادة تشغيل للنظام نتيجة لـ PDU واحد مُحقن. ومع تعطيل مطالبات التطوير، يفقد كل محاولة عقدة واحدة بشكل دائم من مجموعة إشعارات LL الصغيرة للوحدة (LL_PDU_RX_CNT، وهي 2 * CONFIG_BT_CTLR_LLCP_CONN) بالإضافة إلى ارتباط memq_link_t الخاص بها؛ وعند تكرار دورة الاتصال-الهجوم-إعادة الاتصال، تُستنفد المجموعة بالكامل، مما يؤدي بعد ذلك إلى فشل دائم في تخصيص الإشعارات وتوقف التحكم في تدفق الاستقبال (RX flow control)، ووقوع خطأ LL_ASSERT_ERR() غير القابل للإيقاف في الدالة llcp_lp_cc_flush(). يقتصر التأثير على التوافرية (availability) — فالعقدة المتسربة تظل معلقة ولا تُعاد استخدامها أو تحريرها مرتين (double-freed) — وتتطلب الاستعادة إعادة تشغيل الجهاز.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

مسؤول

Zephyr

حجز

13/08/2026

إفشاء

11/10/2026

الاعتدال

تمت الموافقة

إدخال

VDB-416744

EPSS

0.00000

KEV

لا

النشاطات

منخفض

المصادر

Want to know what is going to be exploited?

We predict KEV entries!