El investigador privado Justin Taft
(@JustTaft), perteneciente a la firma One Up Security, ha demostrado
recientemente que el motor de juegos Source de la empresa Valve se veía
afectado por una ejecución remota de código que ha sido finalmente solucionada.
Source es el motor oficial de
videojuegos utilizado por Valve para sus diferentes títulos, como Counter
Strike:GO, Teamfortress 2, Half-Life 2: Deathmatch, etc... y también usado por
terceros de manera gratuita, para el desarrollo de mods propios.
La vulnerabilidad se debe a una falta
de comprobación de límites en la función 'nexttoken', al no controlar
correctamente que el buffer 'token' pueda desbordarse. Este desbordamiento
(buffer overflow) podría ser aprovechado como se puede ver en el video
publicado, para ejecutar código arbitrario, ya que la función afectada es
llamada por un una clase (CRagdollCollisionRulesParse) encargado de cargar
datos externos de modelos Ragdoll cuando se realizan determinados eventos, por
ejemplo cuando un jugador es eliminado.
Recomendación
Desde Valve se han publicado las
actualizaciones oportunas tanto del SDK como del cliente Steam, aunque también
existes contramedidas y/o parches disponibles para los mods ya publicados,
facilitadas por el investigador:
Parche disponible: https://oneupsecuritycdn-8266.kxcdn.com/static/blog/hl2-rce/nexttoken.patch
Más información:
·
Remote
Code Execution In Source Games https://oneupsecurity.com/research/remote-code-execution-in-source-games
·
Update
Released for Counter-Strike: Source, Day of Defeat: Source, Half-Life
Deathmatch: Source, Half-Life 2: Deathmatch, and the Source SDK 2013 Base http://store.steampowered.com/news/30120/
Fuente: Hispasec