Volcar los Hashs de Contraseñas desde una Base de Datos PostgreSQL con MSF
PostgreSQL es un poderoso sistema de base de datos open source relacional orientado a objetos. En la siguiente práctica se utilizará el servidor de Base de Datos PostgreSQL instalado y configurado en la máquina virtual de Metasploitable 2.
El módulo de nombre “PostgreSQL Login Utility” intenta autenticarse contra una instancia PostgreSQL utilizando combinaciones de nombres de usuario y contraseñas indicadas por las opciones USER_FILE, PASS_FILE, y USERPASS_FILE.
Se busca e indica luego a Metasploit Framework la utilización del módulo postgres_login.
> search postgres_login
> use auxiliary/scanner/postgres/postgres_login
Se listan las opciones del módulo, y únicamente se define la opción “RHOSTS”. En este caso, Metasploit Framework define por defecto la opción “USER_FILE” con un archivo conteniendo una lista de nombres de usuarios por defecto para postgresql.
> set RHOSTS 192.168.0.16
Al finalizar la ejecución del módulo, los resultados exponen que se ha encontrado el nombre de usuario “postgresql” utilizando como contraseña el mismo nombre de usuario. Estas credenciales obtenidas serán utilizadas en el siguiente procedimiento.
El módulo de nombre “Postgres Password hashdump” extrae los nombres de usuario y hashs de contraseñas cifradas desde un servidor Postgres, y las almacena para un procedimiento posterior de “Cracking”.
Se busca el módulo de nombre "postgres_hashdump" y se le indica a Metasploit Framework su utilización.
> search postgres_hashdump
> use auxiliary/scanner/postgres/postgres_hashdump
Se listan las opciones del módulo en uso y se procede a definir las opciones “DATABASE” con el nombre de la base de datos contra la cual se realizará la autenticación, esta información fue revelada por el módulo "postgres_login" utilizado en la primera fase; “template1”. La opción “RHOSTS” se define con la dirección IP del objetivo de evaluación, y tanto para el nombre de usuario y contraseña, “USERNAME” y “PASSWORD” se realiza la definición con el valor “postgres”.
Los resultados de la ejecución del módulo indican que se ha realizado un volcado de un nombre de usuario “postgres” y su respectivo hash de la contraseña cifrada.
Es factible utilizar un servicio como MD5 Online para intentar descifrar la contraseña, obteniendo como resultado que el hash de la contraseña corresponde a la cadena de caracteres “postgrespostgres”.
Fuentes:
http://www.postgresql.org/
http://www.rapid7.com/db/modules/auxiliary/scanner/postgres/postgres_login
http://www.rapid7.com/db/modules/auxiliary/scanner/postgres/postgres_has...
http://www.md5online.org/
Sobre el Autor
Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor Independiente en Ciberseguridad
WhatsApp: https://wa.me/51949304030
Correo Electrónico: ReYDeS@gmail.com
Twitter: https://twitter.com/Alonso_ReYDeS
Youtube: https://www.youtube.com/c/AlonsoCaballero
LinkedIn: https://pe.linkedin.com/in/alonsocaballeroquezada/