RubyGems w wersji 2.6.12 i wcześniejszych jest podatny na złośliwie spreparowane specyfikacje pakietów gem zawierające znaki ucieczki terminala (terminal escape characters). Wyświetlenie takiej specyfikacji powoduje wykonanie osadzonych sekwencji escape, co może prowadzić do nieautoryzowanych działań w środowisku użytkownika.
▸ Pokaż oryginał (EN)
RubyGems version 2.6.12 and earlier is vulnerable to maliciously crafted gem specifications that include terminal escape characters. Printing the gem specification would execute terminal escape sequences.
Atakujący przygotowuje złośliwy pakiet gem, którego specyfikacja zawiera specjalnie osadzone znaki ucieczki terminala (terminal escape sequences). Gdy system lub użytkownik wyświetla tę specyfikację — np. podczas przeglądania informacji o pakiecie — terminal interpretuje i wykonuje te sekwencje. Podatność jest sklasyfikowana jako CWE-150 (nieodpowiednia neutralizacja znaków ucieczki) oraz CWE-94 (code injection), co wskazuje na możliwość wstrzyknięcia i wykonania niezamierzonego kodu lub poleceń za pośrednictwem mechanizmu terminala.
Atakujący może wykonać złośliwe sekwencje poleceń w terminalu ofiary bez jej wiedzy, potencjalnie uzyskując dostęp do danych, modyfikując pliki lub wykonując inne nieautoryzowane operacje. Wysoki wynik CVSS (9.8) wskazuje na krytyczny wpływ na poufność, integralność i dostępność systemu.
Należy zaktualizować RubyGems do wersji 2.6.13 lub nowszej, w której problem został naprawiony (zgodnie z wpisem na blogu RubyGems z 27 sierpnia 2017 r.). Dla systemów Red Hat Enterprise Linux należy zastosować patche opisane w erratach RHSA-2017:3485 oraz RHSA-2018:0378.
RubyGems w wersji 2.6.12 i wcześniejszych; dotknięte są również systemy Debian Linux oraz Red Hat Enterprise Linux Desktop i Server korzystające z podatnych wersji RubyGems.
Poprawka została wydana w RubyGems 2.6.13, opublikowanej 27 sierpnia 2017 r., na trzy dni przed oficjalną datą publikacji CVE (31 sierpnia 2017 r.).
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HDebian
OSDebian8.09.0Red Hat Enterprise Linux Desktop
OSRedhat7.0Red Hat Enterprise Linux Server
OSRedhat7.0Red Hat Enterprise Linux Server Aus
OSRedhat7.47.6Red Hat Enterprise Linux Server Eus
OSRedhat7.47.57.6Red Hat Enterprise Linux Server Tus
OSRedhat7.47.6Red Hat Enterprise Linux Workstation
OSRedhat7.0Rubygems
APPRubygems≤ 2.6.12
Powiązane podatności
GNU Inetutils telnetd: ominięcie uwierzytelnienia przez zmienną USER
Sudo: eskalacja uprawnień do root poprzez opcję --chroot (CVE-2025-32463)
RCE przez deserializację PHP w Roundcube Webmail (parametr _from)
Erlang/OTP SSH — nieuwierzytelniony RCE (CVSS 10.0)
Apple WebKit: out-of-bounds write umożliwiający ucieczkę z sandbox przeglądarki