ترجمة آلية لم تُراجَع بعد. النص الإنجليزي هو المرجع في حال الاختلاف.
الملخص
AVideo هي منصة مشاركة فيديو. قبل الإصدار 8.1.0، تقبل نقطة نهاية البث المباشر `view/videosListToLive.php` اسم بث يحدده المهاجم في `webSiteRootURL`، وتستدعي `Login::run` في `objects/Login.php`، وتثق في JSON المعاد كحالة جلسة. يمكن لمهاجم عن بُعد دون مصادقة يستطيع استضافة خدمة HTTP يمكن للمشفر الوصول إليها منح نفسه `isLogged` و `canStream` دون بيانات اعتماد شرعية. تتطلب نقطة النهاية فقط قيم `playlists_id` و `APISecret` غير فارغتين؛ حيث تتم إعادة توجيه `APISecret` بدلاً من التحقق منه مقابل سر مخزن. لا يستدعي هذا المسار أبداً `Streamer::isURLAllowed` وبالتالي يعمل بغض النظر عن قائمة السماح الخاصة بالمشغل. يجلب استجابة قائمة فيديو ثانية يتحكم فيها المهاجم ويدرج `videos[].path` دون الهروب من وسائط الغلاف في أوامر `ffprobe` و `ffmpeg` الممررة إلى `exec`؛ وتستدعي `isAudio` الدالة `isVideo` للوصول إلى أمر `ffprobe`. المسارات التي تحتوي على محددات الغلاف تنفذ أوامر نظام تشغيل عشوائية بصلاحيات مستخدم خادم الويب. لا يفحص مرشح الطلبات ملف JSON الخاص بقائمة الفيديو. قد يكشف هذا عن بيانات اعتماد قاعدة البيانات والبث المخزنة، ويخترق المنصة المنبعية باستخدام بيانات الاعتماد تلك، ويعدل الملفات المملوكة لمستخدم خادم الويب، ويقيم استمرارية، ويحجب خدمة المشفر. تم إصلاح هذه المشكلة في الإصدار 8.1.0.