Biblioteka Valve Game Networking Sockets w wersjach przed v1.2.0 zawiera krytyczną podatność prowadzącą do uszkodzenia pamięci (memory corruption) i potencjalnego zdalnego wykonania kodu (RCE). Błąd jest możliwy do wykorzystania przez nieuwierzytelnionego atakującego przez sieć, bez jakiejkolwiek interakcji użytkownika.
▸ Pokaż oryginał (EN)
Valve's Game Networking Sockets prior to version v1.2.0 improperly handles unreliable segments with negative offsets in function SNP_ReceiveUnreliableSegment(), leading to a Heap-Based Buffer Underflow and a free() of memory not from the heap, resulting in a memory corruption and probably even a remote code execution.
Funkcja SNP_ReceiveUnreliableSegment() nieprawidłowo obsługuje segmenty oznaczone jako unreliable (zawodne), gdy zawierają ujemne wartości offsetu. Prowadzi to do heap-based buffer underflow — odczytu/zapisu poniżej początku zaalokowanego bufora na stercie. W konsekwencji wywoływana jest funkcja free() na adresie, który nie pochodzi ze sterty, powodując korupcję struktur zarządzania pamięcią. Taki stan może zostać wykorzystany przez atakującego do przejęcia kontroli nad przepływem wykonania procesu.
Atakujący może doprowadzić do zdalnego wykonania arbitralnego kodu (RCE) w kontekście procesu korzystającego z podatnej biblioteki, co może skutkować pełnym przejęciem kontroli nad hostem. W mniej korzystnym scenariuszu możliwe jest wywołanie awarii aplikacji (denial of service).
Należy zaktualizować bibliotekę Valve Game Networking Sockets do wersji v1.2.0 lub nowszej. Patch dostępny jest w repozytorium projektu (commit e0c86dcb9139771db3db0cfdb1fb8bef0af19c43 na GitHub). Jeśli aktualizacja nie jest możliwa natychmiast, zalecane jest ograniczenie dostępu sieciowego do usług korzystających z podatnej biblioteki.
Valve Game Networking Sockets w wersjach przed v1.2.0
Podatność została opisana przez badaczy z Check Point Research w publikacji 'Game On — Finding Vulnerabilities in Valve's Steam Sockets'. Referencje wskazują na ten raport jako źródło odkrycia.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HValvesoftware Game Networking Sockets
APPValvesoftware< 1.2.0
Powiązane podatności
Heap-Based Buffer Overflow w Valve Game Networking Sockets (RCE)
Stack-Based Buffer Overflow w Valve Game Networking Sockets — możliwy RCE
Valve's Game Networking Sockets prior to version v1.2.0 improperly handles inlined statistics messages in func...
Buffer overflow RCE w Counter-Strike – wykonanie kodu przez serwer gry
Valve Steam Link: SSH daemon dostępny publicznie przez IPv6 z możliwością logowania jako root