
Hay que recordar que la vulnerabilidad permitía a un atacante escribir en el fichero /etc/sudoers añadiendo, por ejemplo, una línea que permita al usuario sin privilegio tomar privilegio sobre el sistema, por ejemplo la identidad de root, sin necesidad de introducir contraseña cuando se ejecute el comando sudo. Esto es algo muy potente, ya que esto permite escalar privilegios, pasando de un usuario sin ningún tipo de privilegio a un usuario con el máximo privilegio.
El módulo es realmente sencillo de entender, debido también a la simplicidad de la explotación de la vulnerabilidad. Como en todos los módulos de Metasploit de tipo exploit existe una función check y exploit. Podemos ver como en este módulo, además, existen funciones auxiliares que son utilizadas en las funciones citadas anteriormente.
La función del exploit genera un binario que contiene el payload que el usuario indique. En este módulo por defecto se utiliza el payload osx/x64/shell_reverse_tcp, el cual devolverá una shell remota al usuario dónde éste configure desde la consola de Metasploit. Una vez que se escribe en disco, en un directorio dónde el usuario puede escribir, se da permisos de ejecución al fichero binario que contiene el payload. Y por último utilizando el mixin cmd_exec se lanza la función sploit que contiene el exploit, el cual se puede ver que es la línea que fue publicada por Stefan Esser, con la adición de la instrucción sudo #{payload_file} que es la ruta dónde se subió el fichero binario con el paylaod.
Como puede verse el código del módulo es realmente sencillo y muy potente. La función check verifica antes de ejecutar si el exploit tendrá éxito o no. Como se puede ver en el cuerpo de la función se utiliza la versión para identificar si el sistema es vulnerable o no. En el caso de que la sesión de Metasploit se tenga en un OS X 10.10.0 a 10.10.4 el valor devuelto de la función será Exploit::CheckCode::Vulnerable, o lo que es lo mismo nos aparecerá un mensaje que indica que la máquina es vulnerable.
Poco más hay que decir sobre esta vulnerabilidad, la criticidad es muy alta, por lo que habrá que actualizar el sistema lo antes posible, y esperamos que Apple se ponga las pilas con ello. Si quieres aprender más sobre Metasploit puedes leer el libro de nuestro compañero Pablo González, Metasploit Para Pentesters.
Publicado en Seguridad Apple - Google+ - RSS - Eleven Paths

Continúar leyendo...