CRITICAL✓ PATCH🇬🇧 English

CVE-2016-2338

Heap overflow w Ruby Psych::Emitter start_document — RCE

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

W funkcji Psych::Emitter start_document w języku Ruby istnieje podatność typu heap buffer overflow (przepełnienie sterty), sklasyfikowana jako krytyczna z wynikiem CVSS 9.8. Atakujący może wywołać przepełnienie bufora sterty poprzez sprytnie skonstruowany obiekt, potencjalnie prowadząc do przejęcia kontroli nad procesem.

Pokaż oryginał (EN)

An exploitable heap overflow vulnerability exists in the Psych::Emitter start_document function of Ruby. In Psych::Emitter start_document function heap buffer "head" allocation is made based on tags array length. Specially constructed object passed as element of tags array can increase this array size after mentioned allocation and cause heap overflow.

🤖 Analiza AI
Jak działa

Funkcja start_document z biblioteki Psych::Emitter alokuje bufor sterty o nazwie 'head' na podstawie długości tablicy tags. Jeśli jako element tej tablicy zostanie przekazany specjalnie spreparowany obiekt, może on spowodować zwiększenie rozmiaru tablicy już po dokonaniu alokacji bufora. Skutkuje to klasycznym heap overflow — zapis poza granicami przydzielonego obszaru pamięci (CWE-787 — out-of-bounds write).

Skutki

Atakujący, który dostarczy specjalnie skonstruowany obiekt, może spowodować przepełnienie bufora sterty i potencjalnie uzyskać możliwość wykonania dowolnego kodu (RCE) w kontekście procesu Ruby, a także wpłynąć na poufność, integralność i dostępność systemu.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami. Dla systemów Debian należy wdrożyć aktualizacje opisane w komunikacie debian-lts-announce z marca 2020 roku.

Kogo dotyczy

Ruby (Ruby-Lang Ruby) oraz Debian Linux — konkretne wersje wskazane w referencjach producenta i komunikatach Debian LTS

Uwagi

Podatność została pierwotnie zgłoszona przez Talos Intelligence (raport TALOS-2016-0032), mimo że identyfikator CVE został opublikowany formalnie w 2022 roku.

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

    OS
    Debian
    8.0
  • Ruby Lang Ruby

    APP
    Ruby-Lang
    2.2.22.3.0
🟢
PATCH DOSTĘPNY
Aktualizacja od producenta gotowa. Wdrożenie w ramach standardowego cyklu.
Tagi
Memory
CWE
Referencje

Powiązane podatności

CVE-2026-24061CRITICAL9.8⚠ KEVPL ✓ten sam produkt

GNU Inetutils telnetd: ominięcie uwierzytelnienia przez zmienną USER

CVE-2025-32463CRITICAL9.3⚠ KEVPL ✓ten sam produkt

Sudo: eskalacja uprawnień do root poprzez opcję --chroot (CVE-2025-32463)

CVE-2025-49113CRITICAL9.9⚠ KEVPL ✓ten sam produkt

RCE przez deserializację PHP w Roundcube Webmail (parametr _from)

CVE-2025-32433CRITICAL10.0⚠ KEVPL ✓ten sam produkt

Erlang/OTP SSH — nieuwierzytelniony RCE (CVSS 10.0)

CVE-2025-24201CRITICAL10.0⚠ KEVPL ✓ten sam produkt

Apple WebKit: out-of-bounds write umożliwiający ucieczkę z sandbox przeglądarki