CRITICAL🇬🇧 English

CVE-2023-25933

Type confusion w TypedArray silnika Hermes umożliwia RCE przez JavaScript

CVSS 9.8v3.1pub. 2023-05-18upd. 2025-01-21

Błąd type confusion w implementacji TypedArray w silniku JavaScript Facebook Hermes pozwala atakującemu na wykonanie dowolnego kodu poprzez spreparowany, niezaufany kod JavaScript. Podatność ma ocenę CVSS 9.8 (CRITICAL) i jest zdalnie exploitowalna bez uwierzytelnienia.

Pokaż oryginał (EN)

A type confusion bug in TypedArray prior to commit e6ed9c1a4b02dc219de1648f44cd808a56171b81 could have been used by a malicious attacker to execute arbitrary code via untrusted JavaScript. Note that this is only exploitable in cases where Hermes is used to execute untrusted JavaScript. Hence, most React Native applications are not affected.

🤖 Analiza AI
Jak działa

Podatność wynika z błędu type confusion (CWE-843) w obsłudze obiektów TypedArray w silniku Hermes. Atakujący może dostarczyć specjalnie spreparowany kod JavaScript, który wykorzystuje nieprawidłowe założenia dotyczące typów obiektów w trakcie wykonania. Błąd dotyczy wersji kodu sprzed commitu e6ed9c1a4b02dc219de1648f44cd808a56171b81 w repozytorium GitHub projektu Hermes. Podatność jest exploitowalna wyłącznie w scenariuszach, w których silnik Hermes jest używany do wykonywania niezaufanego kodu JavaScript.

Skutki

Skuteczne wykorzystanie podatności pozwala atakującemu na wykonanie dowolnego kodu (RCE) w kontekście aplikacji korzystającej z silnika Hermes, co może prowadzić do pełnego przejęcia kontroli nad procesem — naruszenia poufności, integralności i dostępności.

Mitygacja

Należy zaktualizować silnik Hermes do wersji zawierającej fix wprowadzony commitem e6ed9c1a4b02dc219de1648f44cd808a56171b81. Szczegóły dostępne w oficjalnym security advisory Facebook oraz w repozytorium GitHub projektu Hermes. Dodatkowo zaleca się unikanie wykonywania niezaufanego kodu JavaScript przez silnik Hermes wszędzie tam, gdzie jest to możliwe.

Kogo dotyczy

Facebook Hermes — wersje silnika JavaScript poprzedzające commit e6ed9c1a4b02dc219de1648f44cd808a56171b81. Podatność dotyczy wyłącznie aplikacji, które używają Hermes do wykonywania niezaufanego kodu JavaScript; większość aplikacji React Native nie jest zagrożona.

Uwagi

Producent explicite wskazuje, że większość aplikacji React Native nie jest podatna — ryzyko dotyczy wyłącznie wdrożeń, w których Hermes wykonuje niezaufany kod JavaScript dostarczany z zewnątrz.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Facebook Hermes

    APP
    Facebook
    wszystkie wersje
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCE
CWE
Referencje

Powiązane podatności

CVE-2023-30470CRITICAL9.8PL ✓ten sam produkt

Use-after-free w Facebook Hermes umożliwiający RCE przez JavaScript

CVE-2023-23556CRITICAL9.8PL ✓ten sam produkt

RCE w Facebook Hermes — błąd zapisu poza granicami przy konwersji BigInt

CVE-2023-23557CRITICAL9.8PL ✓ten sam produkt

RCE w Facebook Hermes via type confusion przy kopiowaniu właściwości obiektów

CVE-2023-28081CRITICAL9.8PL ✓ten sam produkt

Use-after-free w Facebook Hermes umożliwiający RCE przez payload JS

CVE-2022-32234CRITICAL9.8PL ✓ten sam produkt

Out-of-bounds write w Facebook Hermes przy obsłudze dużych tablic