Underc0de

[In]Seguridad Informática => Hacking => Mensaje iniciado por: Aryenal.Bt en Junio 13, 2012, 01:04:56 AM

Título: Vulnerabilidad grave en MySQL/MariaDB
Publicado por: Aryenal.Bt en Junio 13, 2012, 01:04:56 AM
El sábado 9 de Junio  Sergei Golubchik, coordinador de seguridad de MariaDB publicaba un post en la lista OSS-SEC sobre una grave vulnerabilidad que afectaba a diferentes versiones de MySQL y MariaDB.

Se evidencia la posibilidad de autenticarse como usuario con máximos privilegios (root) únicamente realizando conexiones simultáneas, con CUALQUIER contraseña introducida como parámetro y contra un servidor vulnerable. Al cabo de un número indeterminado de intentos fallidos, el servidor aceptará la conexión y se realizará la autenticación de forma satisfactoria. Sin más. Sin shellcodes raras, sin casuísticas extrañas: únicamente tenemos que tener delante un servidor vulnerable, que cumpla con las siguientes versiones:

Son vulnerables todas las versiones de MariaDB y MySQL hasta la 5.1.61, 5.2.11, 5.3.5 y 5.5.22
NO SON vulnerables las versiones de MySQL 5.1.63, 5.5.24 y 5.6.6
NO SON vulnerables las versiones de MariaDB 5.1.62, 5.2.12, 5.3.6 y 5.5.23

Con la siguiente línea en shell script, teniendo instalada una base de datos vulnerable en el sistema local, y contando con el cliente 'mysql', se podría realizar una autenticación como usuario root sin conocer la contraseña:

for i in `seq 1 1000`; do mysql -u root --password=blablabla -h 127.0.0.1 2>/dev/null; done

Básicamente, se ejecutará la sentencia de autenticación mediante cliente por consola (comando mysql) como usuario root (-u root) y cualquier contraseña (--password=blablabla) contra el servidor vulnerable  presente en el mismo sistema donde se ejecuta este script (-h 127.0.0.1), sin mostrar ningún mensaje de error por pantalla (2>/dev/null).

Vamos a ver el ejemplo real. Las siguientes pruebas se han realizado sobre una Fedora Core 16, con MySQL versión 5.5.21:

(http://2.bp.blogspot.com/-tAAcZttl2Rs/T9ZSgZWF9rI/AAAAAAAABTw/1NubEu_RRfc/s400/versiones.png)

En primer lugar, y para este ejemplo, cambiaremos la contraseña original de MySQL para el usuario root, que antes la teníamos establecida a 'password', para que ahora sea 'SuperPassWordDeLaMuerte':

(http://1.bp.blogspot.com/-GXBl2WuoZ3Y/T9ZSSU3vJxI/AAAAAAAABTo/ODFZuHTWOgk/s400/change-password-mysql.png)

Seguidamente, salimos de la sesión de root, y nos quedamos como usuario sin privilegios, y ejecutamos la secuencia anterior, que realizará conexiones como usuario root y cualquier contraseña, programando un total de 1000 intentos. A continuación se ejecutará la consola de mysql satisfactoriamente:

(http://1.bp.blogspot.com/-KRG8BUVoBQc/T9ZSumKLovI/AAAAAAAABT4/rjWsAyepuV8/s400/exploit-connect.png)

Obviamente, este "ataque" ya se encuentra integrado como exploit de Metasploit Framework, permitiendo además el volcado de hashes de todos los usuarios, todo ello con el módulo mysql_authbypass_hashdump:

(http://4.bp.blogspot.com/-2Dc3cF4e8jc/T9ZRplno8nI/AAAAAAAABTg/Jp8SB-9KU80/s400/metasploit-module.png)

Fuente: securitybydefault.com (http://securitybydefault.com)
Título: Re:Vulnerabilidad grave en MySQL/MariaDB
Publicado por: quen en Octubre 06, 2012, 03:10:40 AM
Muy buena vulnerabilidad..

Lo que me pregunto es... Esto se puede hacer remoto?? o solamente es para local??

gracias!