Ejecución remota de código en el cliente de Steam

La vulnerabilidad, de tipo buffer overflow, permite tomar el control de los ordenadores que accedan a la información de un servidor de juego online malicioso.

steam_logo_art_2000.0

La mayoría de los videojuegos de Steam cuentan con funcionalidades online para que los jugadores monten sus propias partidas con sus propias reglas. Algunos ejemplos de juegos son Counter Strike: Go, Half Life 2 o Team fortress 2. El protocolo empleado, basado en UDP, se encuentra documentado por la propia Valve, empresa responsable del servicio.

Es en este protocolo en el que se ha encontrado una vulnerabilidad, y más concretamente, en el parámetro ‘A2S_PLAYER’ del componente ‘serverbrowser’. El valor, el cual almacena el nombre del jugador, es convertido a UTF-8 en algún punto del componente afectado, permitiendo la explotación.

La vulnerabilidad, que ha sido recompensada con 18.000$, ha sido explotada con éxito en Windows 8.1 y Windows 10, aunque también podría ser vulnerable GNU/Linux, a pesar de no haberse completado la explotación. En OS X, no ha podido comprobarse debido a la protección del sistema operativo, que cierra el proceso al detectar el buffer overflow.

La explotación, para la cual ya existe una prueba de concepto, es bastante sencilla, pudiéndose realizar de 2 maneras con una probabilidad de éxito del 0.2%, debido a que se desconoce la dirección base por el ASLR. No obstante, el fallo podría juntarse con un ‘memory leak’, para aumentar dicho porcentaje al 100%.


Via: unaaldia.hispasec.com
Ejecución remota de código en el cliente de Steam Ejecución remota de código en el cliente de Steam Reviewed by Anónimo on 9:49 Rating: 5