CRITICAL🇬🇧 English

CVE-2026-25521

Prototype pollution w bibliotece Locutus (JavaScript stdlibs)

CVSS 9.4v4.0pub. 2026-02-04upd. 2026-06-27

W bibliotece Locutus (wersje 2.0.12 – 2.0.38) istnieje podatność typu prototype pollution, która pozwala atakującemu na manipulację globalnym obiektem Object.prototype. Jest ona szczególnie niebezpieczna, ponieważ omija wcześniej wdrożoną naprawę, korzystając z obejścia przez String.prototype.

Pokaż oryginał (EN)

Locutus brings stdlibs of other programming languages to JavaScript for educational purposes. In versions from 2.0.12 to before 2.0.39, a prototype pollution vulnerability exists in locutus. Despite a previous fix that attempted to mitigate prototype pollution by checking whether user input contained a forbidden key, it is still possible to pollute Object.prototype via a crafted input using String.prototype. This issue has been patched in version 2.0.39.

🤖 Analiza AI
Jak działa

Poprzednia łatka próbowała zablokować prototype pollution poprzez sprawdzanie, czy dane wejściowe użytkownika zawierają zabronione klucze. Atakujący może jednak dostarczyć spreparowane dane wejściowe wykorzystujące String.prototype, co pozwala ominąć to zabezpieczenie i mimo wszystko zanieczyścić Object.prototype. Modyfikacja Object.prototype wpływa na wszystkie obiekty w danym środowisku JavaScript, co może prowadzić do zmiany logiki działania aplikacji. Podatność sklasyfikowana jest jako CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes).

Skutki

Atakujący może zmodyfikować właściwości globalnego obiektu Object.prototype, co może skutkować nieautoryzowanym dostępem do zasobów, obejściem mechanizmów uwierzytelnienia lub autoryzacji, a w określonych scenariuszach również wykonaniem dowolnego kodu w kontekście aplikacji.

Mitygacja

Należy zaktualizować bibliotekę Locutus do wersji 2.0.39 lub nowszej, w której podatność została naprawiona. Szczegóły dostępne w referencjach producenta na GitHub.

Kogo dotyczy

Biblioteka Locutus w wersjach od 2.0.12 do 2.0.38 (włącznie).

Uwagi

Podatność stanowi obejście wcześniejszej, niepełnej naprawy tego samego problemu. Poprawka dostępna w commit 042af9ca7fde2ff599120783e720a17f335bb01c w repozytorium locutusjs/locutus.

CVSS Vector
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
  • Locutus

    APP
    Locutus
    2.0.12 – 2.0.39 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2026-32304CRITICAL9.8PL ✓ten sam produkt

Locutus: RCE w funkcji create_function() przez brak sanityzacji danych wejściowych

CVE-2020-7719CRITICAL9.8ten sam produkt

Versions of package locutus before 2.0.12 are vulnerable to prototype Pollution via the php.strings.parse_str ...

CVE-2026-29091HIGH8.1ten sam produkt

Locutus brings stdlibs of other programming languages to JavaScript for educational purposes. Prior to version...

CVE-2026-33993MEDIUM6.9ten sam produkt

Locutus brings stdlibs of other programming languages to JavaScript for educational purposes. Prior to version...

CVE-2026-33994MEDIUM6.3ten sam produkt

Locutus brings stdlibs of other programming languages to JavaScript for educational purposes. Starting in vers...