CVE-2026-54162 in Ember
الملخص
بحسب VulDB • 28/10/2026
Ember هو لوحة تحكم طرفية (terminal dashboard) في الوقت الفعلي لخوادم Caddy مع دعم FrankenPHP. قبل الإصدار 1.4.2، كانت مُنسِّقات صفوف واجهة المستخدم النصية التفاعلية (TUI row formatters) تمرر حقول سجل وصول Caddy، وتحديداً عنوان طلب URI، عبر مساعد العرض `fitCellLeft` دون تحييد تسلسلات الهروب أو التحكم الطرفية. يمكن لعميل عندي غير مُصادق عليه إدراج بايتات تحكم ANSI و OSC أو CSI في هدف طلب HTTP عادي. تقوم Caddy بتهريب هذه البايتات بصيغة JSON، ثم يقوم `ParseLogLine` بفك تشفيرها وإعادتها إلى عناصر تحكم خام (raw controls)، وتقوم المنسِّقات بلصقها في مخرجات `View()` التي تصل إلى `os.Stdout`. عند عرض المشغل للعلامة الافتراضية "Logs"، تفسر الطرفية هذه التسلسلات، مما يتيح انتحال هوية لوحة مراقبة Dashboard، واختطاف الحافظة (clipboard hijacking) عبر `OSC 52`، وانتحال عنوان النافذة عبر `OSC 0/2`. يعمل هذا حتى مع مستمع سجلات مقصور على حلقة العودة المحلية (loopback-only log listener) لأن المدخلات تصل من خلال سجلات وصول Caddy العادية. تشارك علامات "Certificates" و "Routes" أحواض عرض ثانوية غير مُحيَّدة. لا تتأثر أوضاع `--json`، و `--once`، ووضع الخادم الخلفي (daemon) `--expose` لأنها لا تقوم بعرض طرفية تفاعلية. تعتمد العواقب على محاكي الطرفية وعادةً ما تتطلب إجراءاً إضافياً من المشغل للتصعيد؛ وهذا ليس تنفيذًا عامًا للكود عن بُعد (RCE). تم إصلاح هذه المشكلة في الإصدار 1.4.2.
If you want to get best quality of vulnerability data, you may have to visit VulDB.