CRITICAL🇬🇧 English

CVE-2025-65570

Type confusion w Jsish 2.0 — RCE przez błędny opcode OP_NEXT

CVSS 9.8v3.1pub. 2025-12-29upd. 2025-12-31

Podatność typu type confusion w interpreterze Jsish 2.0 pozwala na nieprawidłowy przepływ sterowania podczas wykonywania opcode OP_NEXT. W zależności od układu sterty może prowadzić do awarii procesu lub zdalnego wykonania kodu (RCE).

Pokaż oryginał (EN)

A type confusion in jsish 2.0 allows incorrect control flow during execution of the OP_NEXT opcode. When an “instanceof” expression uses an array element access as the left-hand operand inside a for-in loop, the instructions implementation leaves an additional array reference on the stack rather than consuming it during OP_INSTANCEOF. As a result, OP_NEXT interprets the array as an iterator object and reads the iterCmd function pointer from an invalid structure, potentially causing a crash or enabling code execution depending on heap layout.

🤖 Analiza AI
Jak działa

Gdy wyrażenie 'instanceof' używa dostępu do elementu tablicy jako lewostronnego operandu wewnątrz pętli for-in, implementacja opcode OP_INSTANCEOF pozostawia na stosie dodatkowe odwołanie do tablicy zamiast je skonsumować. Następnie opcode OP_NEXT błędnie interpretuje tę tablicę jako obiekt iteratora i odczytuje wskaźnik funkcji iterCmd z nieprawidłowej struktury. Prowadzi to do sytuacji, w której interpreter operuje na danych o niewłaściwym typie (CWE-843: type confusion), co otwiera możliwość kontrolowanego nadpisania przepływu sterowania.

Skutki

Atakujący może doprowadzić do awarii interpretera lub — w zależności od układu sterty — do wykonania dowolnego kodu z uprawnieniami procesu uruchamiającego Jsish. Pełna triada CIA jest zagrożona (poufność, integralność, dostępność).

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami. Do czasu pojawienia się łatki zaleca się unikanie uruchamiania niezaufanego kodu JavaScript w środowisku Jsish 2.0 oraz ograniczenie dostępu do interpretera wyłącznie do zaufanych użytkowników.

Kogo dotyczy

Jsish w wersji 2.0

Uwagi

Szczegółowy writeup techniczny opisujący podatność dostępny jest pod adresem https://blog.mcsky.ro/writeups/2025/11/15/inline8-writeup.html (data publikacji writeupa: 15 listopada 2025).

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

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

Powiązane podatności

CVE-2024-24189CRITICAL9.8PL ✓ten sam produkt

Use-after-free w Jsish v3.5.0 — podatność krytyczna w SplitChar

CVE-2024-24188CRITICAL9.8PL ✓ten sam produkt

Heap-buffer-overflow w Jsish v3.5.0 — podatność krytyczna RCE

CVE-2024-24186CRITICAL9.8PL ✓ten sam produkt

Stack-overflow w Jsish v3.5.0 — przepełnienie stosu w IterGetKeysCallback

CVE-2020-22874CRITICAL9.8ten sam produkt

Integer overflow vulnerability in function Jsi_ObjArraySizer in jsish before 3.0.8, allows remote attackers to...

CVE-2020-22875CRITICAL9.8ten sam produkt

Integer overflow vulnerability in function Jsi_ObjSetLength in jsish before 3.0.6, allows remote attackers to ...