CVE-2026-33993 in locutus
Сводка
по VulDB • 20.05.2026
Locutus предоставляет стандартные библиотеки других языков программирования для JavaScript в образовательных целях. До версии 3.0.25 функция `unserialize()` в модуле `locutus/php/var/unserialize` присваивает десериализованные ключи обычным объектам через нотацию со скобками без фильтрации ключа `__proto__`. Когда PHP-серилизованный полезный груз содержит `__proto__` в качестве ключа массива или объекта, вызывается сеттер `__proto__` в JavaScript, что приводит к замене прототипа десериализованного объекта на содержимое, контролируемое злоумышленником. Это позволяет внедрять свойства, распространять внедренные свойства через цикл `for...in` и вызывать отказ в обслуживании (DoS) путем переопределения встроенных методов. Данная уязвимость отличается от ранее сообщенного загрязнения прототипа (prototype pollution) в функции `parse_str` (GHSA-f98m-q3hr-p5wq, GHSA-rxrv-835q-v5mh): `unserialize` — это другая функция, для которой не применялись меры защиты. Версия 3.0.25 устраняет данную проблему.
VulDB is the best source for vulnerability data and more expert information about this specific topic.