Координационният център на CERT (CERT/CC) разкри две некоригирани уязвимости в библиотеката за HTML5 видео плейър на Kaltura, които позволяват на отдалечен атакуващ без оторизация да чете произволни файлове от сървъра и да изпълнява код на него.
Проблемите, проследявани като CVE-2026-19913 и CVE-2026-19912, произтичат от една и съща небезопасна десериализация в крайната точка mwEmbedLoader.php на библиотеката на плейъра mwEmbed, която Kaltura разпространява и под името html5lib.
Нито една от двете уязвимости не изисква удостоверяване на автентичността или токен за сесия в Kaltura, а мрежовият достъп до крайната точка е единственото предварително условие, посочено от CERT/CC.
Към момента няма налична корекция за сигурност и от CERT/CC заявиха, че „не са успели да се свържат с Kaltura, за да координират тези уязвимости“. На администраторите се препоръчва да ограничат или деактивират външния достъп до крайната точка и да приложат строг списък с разрешени адреси (allow-list) за параметъра ServiceUrl, който позволява само легитимни URL адреси на бекенд API.
Към момента на изготвяне на материала не се съобщава за експлоатиране на уязвимостите и нито един от двата CVE идентификатора не фигурира в каталога с известни експлоатирани уязвимости (KEV) на CISA към 25 август 2026 г.
CERT/CC описва Kaltura като видео платформа, предоставяща инструменти за управление, публикуване, възпроизвеждане на видео и интегриране с уеб приложения. Уязвимата зареждаща програма (loader) е достъпна при инсталациите на клиентите и на собствените споделени производствени хостове на Kaltura.
„Тъй като засегнатата крайна точка е изложена и в споделената, мултинаемателска CDN инфраструктура на Kaltura, тези уязвимости засягат не само отделните клиентски инсталации, но и всеки наемател, обслужван от тези споделени хостове“, се посочва в бележката за уязвимостта на CERT/CC.
Проблемът с четенето на файлове, CVE-2026-19913, започва с параметъра ServiceUrl, който mwEmbedLoader.php приема и използва като целеви URL адрес за бекенд API заявки. PHP клиентът KalturaClientBase извлича всичко, което този URL адрес връща, и го предава на функцията unserialize() на PHP, без да проверява източника, схемата или съдържанието.
Предоставянето на път от типа file:// кара сървъра да извлече локален файл вместо отговор от API. След това опитът за десериализация се проваля. Необработените байтове на извлечения файл се връщат обратно на заявителя в рамките на полученото съобщение за грешка.
Герян Вемекамп, изследовател от AndDone, на когото се приписва откриването и на двата проблема, заяви в технически доклад, публикуван във вторник, че е ескалирал четенето на файлове, като е извлякъл конфигурацията на приложението Kaltura на адрес /opt/kaltura/app/configurations/local.ini, която съдържа некриптирани низове за връзка с базата данни, пароли за администратори и конзоли, както и препратки към вътрешни хостове.
Втората уязвимост, CVE-2026-19912, превръща същата десериализация в изпълнение на код чрез параметъра на заявката uiconf_id, който се добавя към пътя на папката с кеша без филтриране, когато приложението записва на диска.
Атакуващият насочва ServiceUrl към злонамерен сериализиран обект, съдържащ изпълним PHP код. Клиентът го извлича и десериализира. Стойност на uiconf_id, съдържаща последователности за преминаване през директории като ../, пренасочва записа извън предвидената директория за кеширане и го насочва в директория с достъп през уеб. Директната заявка към този файл го изпълнява с правата на потребителя на уеб сървъра.
„Стъпката с пускането на файла зависи от файлово базирания бекенд за кеширане, който е по подразбиране за Kaltura. Конфигурация само с memcached може да спре записа и следователно този конкретен път за отдалечено изпълнение на код (RCE). Това обаче не прави внедряването безопасно“, казва Вемекамп.
Тъй като няма фиксирана версия за инсталиране, на администраторите, които използват плейъра, се препоръчва да предприемат следните стъпки:
- Блокиране или премахване на крайната точка на ниво WAF, обратен прокси сървър или CDN, където не се обслужват стари mwEmbed плейъри.
- Добавяне на позволени адреси (allow-list) за
ServiceUrl, като се разрешава само собственият API хост на внедряването и се отхвърлят схеми, различни от HTTP(S). - Отхвърляне на стойности за
uiconf_id, съдържащи последователности за преминаване през директории, абсолютни пътища или разделители за директории. - Забрана на изпълнението на PHP в директориите за кеширане.
- Ограничаване на изходящия мрежов достъп от сървъра на приложението, който е необходим на пътя за изпълнение на код, за да изтегли съответния злонамерен код.
- Промяна на всички данни за достъп в
local.ini, където крайната точка е била изложена, обхващайки идентификационните данни за базата данни, администраторските и конзолните пароли, тайните ключове на партньорите и API ключовете.
CERT/CC изброява засегнатите версии като html5lib v2.45, v2.103 и по-ранни, както и други версии от клона v2.x, които излагат на риск уязвимата крайна точка.
Вемекамп оценява CVE-2026-19912 с рейтинг 10.0, а CVE-2026-19913 с 9.1, като определя и двете оценки в доклада си като зададени от откривателя. CERT/CC не публикува оценка за нито един от двата проблема, а към 25 август 2026 г. нямаше запис в NVD за нито един от идентификаторите.
NIST заяви през април, че вече не обогатява всеки CVE, като дава приоритет на тези в каталога KEV, софтуера, използван във федералното правителство, и софтуера, определен като критичен съгласно Указ 14028.
Изследователят беше ясен относно това какво е демонстрирал и какво не.
„За да бъда точен относно обхвата: пълното инжектиране на уеб шел беше демонстрирано върху Docker образ на Kaltura Server от 2019 г. Това, което проверих в текущата версия, е, че и двете части от веригата присъстват и че частта с десериализацията все още се изпълнява...“