Las versiones de «screen» anteriores a la 3.9.8 son vulnerables a un ataque de formato que posibilita la ejecución de código arbitrario. En caso de que «screen» se haya instalado como SETUID «root», la vulnerabilidad permite la ejecución de código arbitrario con privilegios de «root». El ataque debe realizarse desde una cuenta local.
«screen» es un programa que permite la multiplexación de múltiples sesiones de terminal a través de una única pantalla. Permite también, entre otras muchas cosas, el «desconectar» las sesiones y retomarlas un tiempo más tarde desde otra localización física. Se trata, en resumen, de un programa ampliamente utilizado por casi cualquier administrador de sistemas, sobre todo si es responsable de numerosas máquinas unix.
Las versiones anteriores a la 3.9.8 son vulnerables a un ataque de formato que permite que un atacante local ejecute código arbitrario en la máquina. En caso de que «screen» sea un proceso SETUID, el código se ejecutará con privilegios de «root».
El ataque se realiza modificando el fichero de configuraci¢n «.screenrc», m s concretamente la variable «vbell_msg».
Hay tres soluciones:
1. Segurarse de que «screen» no sea SETUID. De esta forma el atacante ejecutar el c¢digo de ataque con sus propios privilegios.
2. Aplicar el siguiente parche (como siempre, la ventaja de disponer del c¢digo fuente: en la l¡nea 2314 de «screen.c», cambiar «Msg(0,VisualBellString);» por «Msg(0,»%s», VisualBellString);».
3. Actualizar a la versi¢n 3.9.8 o superior de «screen».
Opina sobre esta noticia:
http://www.hispasec.com/unaaldiacom.asp?id=695
M s informaci¢n:
screen User Supplied Format String Vulnerability
http://www.securityfocus.com/bid/1641
SCREEN
ftp://ftp.uni-erlangen.de/pub/utilities/screen/
Jesos Cea Avi¢n
jcea@hispasec.com
http://www.hispasec.com