CVE-2026-46727
WysokieStreszczenie
W Ruby 4 przed wersją 4.0.5 występuje problem związany z warunkiem wyścigu, który prowadzi do użycia po zwolnieniu pamięci w obsłudze timeoutu getaddrinfo. Zdalny atakujący może spowodować awarię procesu Ruby, opóźniając odpowiedzi DNS w pobliżu określonego przez użytkownika limitu czasu.
Ocena ryzyka
Atakujący może wykorzystać tę podatność do awarii procesów Ruby, co może prowadzić do przerwy w działaniu aplikacji. Teoretycznie możliwe jest również wykorzystanie do korupcji pamięci.
Rekomendacja
Zaleca się aktualizację Ruby do wersji 4.0.5 lub nowszej, aby usunąć tę podatność. Dodatkowo, warto monitorować i zabezpieczać serwery DNS przed potencjalnymi atakami.
Oryginalny opis (angielski, źródło NVD)
An issue was discovered in Ruby 4 before 4.0.5. A race condition leading to a use-after-free in the pthread-based getaddrinfo timeout handler (rb_getaddrinfo in ext/socket/raddrinfo.c) allows a remote attacker who can delay DNS responses near the user-specified timeout to crash a Ruby process that calls Addrinfo.getaddrinfo(..., timeout:) or Socket.tcp(..., resolv_timeout:). Memory-corruption-based exploitation is theoretically possible. The attack could, for example, be carried out through a crafted authoritative DNS server or recursive resolver.

