CRITICAL🇬🇧 English

CVE-2022-35289

Integer overflow w Facebook Hermes prowadzący do RCE przez JavaScript

CVSS 9.8v3.1pub. 2022-10-11upd. 2024-11-21

Podatność integer overflow w silniku JavaScript Facebook Hermes powoduje warunek write-what-where, który może umożliwić atakującemu wykonanie dowolnego kodu. Dotyczy wyłącznie aplikacji, które pozwalają na ewaluację niezaufanego kodu JavaScript.

Pokaż oryginał (EN)

A write-what-where condition in hermes caused by an integer overflow, prior to commit 5b6255ae049fa4641791e47fad994e8e8c4da374 allows attackers to potentially execute arbitrary code via crafted JavaScript. Note that this is only exploitable if the application using Hermes permits evaluation of untrusted JavaScript. Hence, most React Native applications are not affected.

🤖 Analiza AI
Jak działa

Błąd wynika z przepełnienia liczby całkowitej (integer overflow, CWE-190), które prowadzi do warunku write-what-where (CWE-680) — atakujący może kontrolować, co i gdzie zostaje zapisane w pamięci procesu. Exploit wymaga dostarczenia specjalnie spreparowanego kodu JavaScript do silnika Hermes. Podatność istnieje w wersjach poprzedzających commit 5b6255ae049fa4641791e47fad994e8e8c4da374 w repozytorium projektu.

Skutki

Atakujący może potencjalnie wykonać dowolny kod (RCE) w kontekście aplikacji wykorzystującej silnik Hermes, co grozi pełnym przejęciem kontroli nad procesem, naruszeniem poufności oraz integralności danych.

Mitygacja

Należy zaktualizować Facebook Hermes do wersji zawierającej commit 5b6255ae049fa4641791e47fad994e8e8c4da374 lub nowszy. Dodatkowo zaleca się przegląd aplikacji pod kątem tego, czy silnik Hermes jest używany do ewaluacji niezaufanego JavaScript — jeśli nie, ryzyko jest minimalne.

Kogo dotyczy

Facebook Hermes — wersje poprzedzające commit 5b6255ae049fa4641791e47fad994e8e8c4da374. Podatność dotyczy wyłącznie aplikacji, które jawnie zezwalają na ewaluację niezaufanego kodu JavaScript; większość aplikacji React Native nie jest narażona.

Uwagi

Producent wyraźnie zaznacza w opisie podatności, że większość aplikacji React Native nie jest podatna, ponieważ nie dopuszczają one ewaluacji niezaufanego kodu JavaScript — konieczna jest ocena indywidualnego scenariusza użycia silnika Hermes w danej aplikacji.

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
    < 0.12.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCE
CWE
Referencje

Powiązane podatności

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

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

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

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

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

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

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

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

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

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