CVE-2026-33993 in locutus
Zusammenfassung
von VulDB • 15.05.2026
Locutus bringt Standardbibliotheken anderer Programmiersprachen zu JavaScript, und zwar zu Bildungszwecken. Vor Version 3.0.25 weist die Funktion `unserialize()` in `locutus/php/var/unserialize` deserialisierte Schlüssel über die Bracket-Notation an Plain-Objekte zu, ohne den Schlüssel `__proto__` zu filtern. Wenn ein PHP-serialisiertes Payload `__proto__` als Array- oder Objektschlüssel enthält, wird der `__proto__`-Setter von JavaScript aufgerufen, wodurch das Prototyp des deserialisierten Objekts durch vom Angreifer kontrollierte Inhalte ersetzt wird. Dies ermöglicht Property-Injection, die Weitergabe (Propagation) injizierter Eigenschaften über `for...in` und Denial of Service durch Überschreiben eingebauter Methoden. Dies unterscheidet sich von der zuvor gemeldeten Prototype-Pollution in `parse_str` (GHSA-f98m-q3hr-p5wq, GHSA-rxrv-835q-v5mh) — `unserialize` ist eine andere Funktion, für die keine Schutzmaßnahme angewendet wurde. Version 3.0.25 behebt das Problem.
If you want to get best quality of vulnerability data, you may have to visit VulDB.