CRITICAL🇬🇧 English

CVE-2021-33797

Buffer overflow w Artifex MuJS przez integer overflow przy parsowaniu liczb zmiennoprzecinkowych

CVSS 9.8v3.1pub. 2023-04-17upd. 2025-02-06

W bibliotece Artifex MuJS (wersje 1.0.1–1.1.1) istnieje podatność typu buffer overflow w pliku jsdtoa.c, wynikająca z integer overflow podczas odczytu wykładnika liczby zmiennoprzecinkowej. Podatność ma krytyczny wynik CVSS 9.8 i może być wykorzystana zdalnie bez uwierzytelnienia.

Pokaż oryginał (EN)

Buffer-overflow in jsdtoa.c in Artifex MuJS in versions 1.0.1 to 1.1.1. An integer overflow happens when js_strtod() reads in floating point exponent, which leads to a buffer overflow in the pointer *d.

🤖 Analiza AI
Jak działa

Funkcja js_strtod() podczas parsowania wykładnika liczby zmiennoprzecinkowej nie waliduje poprawnie zakresu wartości całkowitej, co prowadzi do integer overflow. Przepełnienie liczby całkowitej skutkuje następnie buffer overflow na wskaźniku *d w pliku jsdtoa.c. Atakujący może dostarczyć specjalnie spreparowany ciąg znaków reprezentujący liczbę zmiennoprzecinkową z nieprawidłowym wykładnikiem, aby wywołać ten błąd.

Skutki

Atakujący może spowodować uszkodzenie pamięci procesu, co potencjalnie prowadzi do wykonania dowolnego kodu (RCE), przejęcia kontroli nad systemem lub jego destabilizacji (odmowa usługi). Wektor ataku sieciowy bez wymaganych uprawnień i interakcji użytkownika znacząco zwiększa ryzyko.

Mitygacja

Należy zaktualizować Artifex MuJS do wersji zawierającej poprawkę dostępną w repozytorium producenta (commit 833b6f1672b4f2991a63c4d05318f0b84ef4d550 na GitHub). Jeśli aktualizacja nie jest możliwa, należy ograniczyć przetwarzanie niezaufanych danych wejściowych przez bibliotekę MuJS.

Kogo dotyczy

Artifex MuJS w wersjach od 1.0.1 do 1.1.1 włącznie.

Uwagi

Błąd został zgłoszony i udokumentowany w issue #148 repozytorium GitHub projektu MuJS. Poprawka została wprowadzona w commicie 833b6f1672b4f2991a63c4d05318f0b84ef4d550.

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

    APP
    Artifex
    1.0.1 – 1.1.1
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Memory
CWE
Referencje

Powiązane podatności

CVE-2021-33796CRITICAL10.0PL ✓ten sam produkt

Use-after-free w MuJS — błąd dostępu do właściwości source wyrażenia regularnego

CVE-2021-45005CRITICAL9.8PL ✓ten sam produkt

Heap buffer overflow w Artifex MuJS — zagnieżdżone bloki try/finally

CVE-2019-12798CRITICAL9.8PL ✓ten sam produkt

Przepełnienie bufora w MuJS 1.0.5 przez nieograniczony rozmiar wyrażenia regularnego

CVE-2019-11411CRITICAL9.8PL ✓ten sam produkt

Stack-based buffer overflow w Artifex MuJS — funkcje Number#toFixed() i numtostr

CVE-2016-10133CRITICAL9.8PL ✓ten sam produkt

Heap-based buffer overflow w MuJS — przepełnienie bufora na stercie