Search for in Google by Dino

Google Custom Search

miércoles, 20 de abril de 2011

Playing with Metasploitable by Dino

H0l@ lector,


Procurando mantener activo el blog he preparado este articulo "Jugando con Metasploitable por Dino",  el cual utilizo general mente en los cursos de Ethical Hacking. Espero que sea de tu agrado y te pueda servir para realizar tus practicas de Pen Test con esta maravillosa Maquina Virtual.

Pero de que se trata Metasploitable......


El Proyecto Metasploitable es un proyecto  libre  con múltiples vulnerabilidades, el cual permite realizar pruebas de penetración (Pen Test) haciendo uso del  proyecto más conocido  el Metasploit Framework.

Metasploit puede ser utilizado por los profesionales de la seguridad Informática, para poner a prueba la vulnerabilidad de los sistemas informáticos de forma Ética. Aplicando metodologías practicas con estándares internacionalmente aceptados en procesos de Ethical Hacking.

Metasploitable es un servidor Ubuntu 8.04 en la imagen de una Maquina  Virtual haciendo uso de VMWARE con múltiples vulnerabilidades disponibles para ser explotadas (SMB, Tomcat, SSH,  TWiki, MySql, etc.)

Por lo tanto debes gozar de un versión VMWare que  para este Lab haré uso de VMWare Workstation Versión 6.

LABORATORIO DE METASPLOITABLE USANDO VMWARE Y METASPLOIT
No vamos a explicar ni a hablar de metodologías practicas para Pen Test, solo seguiremos un paso a paso de un atacante...


Un atacante interno general mente tiene un punto de acceso a la Plataforma Informática (punto de Red o uso de una estación de trabajo), lo primero que tratara de conocer es como llegar a su Target (lo que YO denomino Objetivo Militar), para tal fin iniciara un proceso de Sondeo de Red utilizando varias herramientas y técnica que le permitan validar la información que vaya obteniendo.


USANDO AUTOSCAN NETWORK
Hemos detectado nuestro Objetivo Militar el servidor "Metsploitable" - IP 192.168.1.105, el cual nos ofrece diversos servicios no seguros  y de los cuales recopilamos información para diseñar nuestra estrategia de ataque.


SE IDENTIFICA CONTROLADOR DE DOMINIO WINDOWS 2000 SERVER


Encontramos también un Servidor Windows "2000Server" - IP 192.168.1.110, también nos ofrece servicios no seguros, y se trata de un DC Controlador de Dominio por los servicios que esta prestando.


Para validar la información usaremos Angry IP.


SONDEO DE RED CON ANGRY IP SCANNER
Lo q no nos podía faltar es un barrido de Ping con la herramienta por excelencia.


BARRIDO DE PING CON NMAP
Identificado el Objetivo Militar, podríamos intentar algunas cosas, como realizar conexion al Servidor o ejecutar un Nmap dentro de AutoScan Network para realizar la fase de Fingerprint (identificacion de versiones  puertos y servicios, Sistema Operativo, Arquitectura, etc).

INTENTANDO EL ACCESO DESDE AUTOSCAN NETWORK

Primero con SSH ahora con un Telnet. De que depende su éxito??  De tu buena labor en la fase de Reconocimiento "FootPrinting".


INTENTANDO TELNET DESDE AUTOSCAN NETWORK
Ahora si Scan de Puertos y Servicios haciendo uso de NMAP desde AutoScan Network


SCAN DE PUERTOS Y SERVICIOS CON NMAP

Rápidamente con el uso de una sola herramienta empezamos a identificar diversas vulnerabilidades posibles.


Igual labor la podemos ejecutar con Angry IP Scanner.


INTENTANDO EL ACCESO CON ANGRY IP SCANNER
ACCEDIENDO A FTP EN CONTROLADOR DE DOMINIO WINDOWS 2000 SERVER
Ahora validamos el Servidor Web Apache en el Servidor Metasploitable.


ACCEDIENDO A WEB DE METASPLOITABLE
Validamos el servicio FTP de Metasploitable haciendo uso de Angry Ip Scanner.


VALIDANDO SERVICIO FTP CON ANGRY IP SCANNER
Realizamos un Scan completo con NMAP ( Red, Puertos y Servicios, Vulnerabilidades).


FASE DE ESCANEO CON NMAP
DESCUBRIENDO PUERTOS EN CONTROLADOR DE DOMINIO WINDOWS 2000
ESCANEO EN 192.168.1.1 ROUTER O PASARELA POR LOS PUERTOS DESCUBIERTOS


EFECTIVAMENTE UN DLINK-DIR 600
Encontramos puertos y servicios del Controlador de Dominio Windows 2000 Server - IP 192.168.1.10
PUERTOS Y SERVICIOS DC WINDOWS 2000 SERVER
Fingerprint Controlador de Dominio Windows 2000 Server


Fingerprint Windows 2000 Server


FINGERPRINT SERVIDOR METASPLOITABLE


Habiendo se identificado posibles vulnerabilidades, pasamos a realizar un scan de vulnerabilidades para ser explotadas. Iniciamos con el servicio Web usando el maravilloso scanner de Nikto.


ESCANEANDO WEB DE METASPLOITABLE CON NIKTO
Encontrando diversos problemas en la Web Indizacion, visualizacion del phpinfo, rfi, uso de diversos métodos HTTP permitidos, etc.

Aplicamos el uso de Dirbuster para hacer fuerza bruta a directorios y posibles cuentas.
APLICANDO DIRBUSTER
Revisamos otras posibles vulnerabilidades


VISUALIZACION DEL PHPINFO  :(
Nos muestra información del archivo php.ini, directorios adicionales, API php, Sistema Operacional Linux 2.6.24-16-server, etc.


OPCIONES DE CONFIGURACION DEL SERVIDOR WEB
Opciones de magic_quotes_gpc activadas, log errors desactivado, html errors activado, directorios compartidos del php, etc.


OPCIONES DE LA VERSION DEL API APACHE
OPCIONES DEL AMBIENTE DE APACHE


OPCIONES DE LA VERSION DE PHP 5.2.4
Identificando el servicio del puerto 80 http. AplicativoTWiki.
TKwiki en pueto 80 http
TikiWiki 1.9.5
Pasemos a actualizar Metasploit para lanzar los ataques directamente a los servicios identificados.


SVN UPDATE METASPLOIT
Listas nuestras herramientas, pasamos a buscar posibles exploit para la version del aplicativo Web.


BUSCANDO EXPLOIT PARA TIKIWIKI
Encontramos varios exploit, entre ellos uno para TIKIDBLIB en la Web de Metasploit.
EXPLOIT AUXILIAR TIKIDBLIB EN TIKIWIKI EN WEB METASPLOIT
Acudimos al uso de Metasploit habiendo identificado la vulnerabilidad y el exploit a ejecutar.


CARGANDO CONSOLA DE METASPLOIT
SE ENCUENTRA EXPLOIT DISPONIBLE EN METASPLOIT
ENCONTRANDO CREDENCIALES VALIDAS PARA LA BD MYSQL USANDO  TIKIDBLIB.PHP
Encontradas unas credenciales de autenticacion validas, intentamos realizar una conexion remota a la BD MySql para lograr conexion con el servidor de manera remota.


EFECTIVAMENTE SE LOGRA CONEXION CON LA BD MYSQL REMOTAMENTE
IDENTIFICANDO LA TABLA DE USUARIOS
CARGANDO ARCHIVO /etc/passwd desde MySQL


IDENTIFICANDO ESTRUCTURA DE LA TABLA USERS
Intente crear una shell a partir  de un registro, pero desafortunadamente no encontre un directorio vulnerable y aborte la opcion de injectar el codigo puesto que se me cerro el ataque que realizaba con Dirbuster :'(


CREANDO REGISTRO CON CODIGO PHP PARA INJECCION DE CODIGO SHELL


Asi q decidi probar otra vulnerabilidad del TiKiWiki


INTENTANDO EXPLOIT TIKIWIKI_GRAPH_FORMULA_EXEC
Permitiendo Shell :)




Si recuerdan el Scan de los servicios nos encontrabamos con otra BD :P


USANDO EL AUXILIAR POSTGRES_LOGIN
CONFIGURANDO OPCIONES PARA POSTGRES_LOGIN
EXITOS EN LA EJECUCION DEL EXPLOIT, CREDENCIALES ENCONTRADAS
Encontrado credenciales de autenticacion validas en la BD de PostGres, vamos a intentar otro exploit "postgres_readfile"






Al igual q con MySQL vamos a intentar visualizar el archivo de usuario del Sistema Operativo Linux de Metasploitable y a injectar codigo.


VISUALIZANDO "/etc/passwd"   :P

VISUALIZANDO "/etc/group"   :P

Continuando con la BD postgres vamos a intentar con el exploit postgres_login




Nuevamente logramos encontrar credenciales de autenticacion   :P

CREDENCIALES ENCONTRADAS BD POSTGRES "postgres"  "postgres"
 Con las credenciales intentamos conexion a la BD.




Debido a que es posible, vamos a crear conexiones a servidores de autenticacion de confianza usando las keys de ssh (authorized_keys) y configurando el servicio para crear relacion de confianza en el servicio.
CREANDO RELACIONES DE CONFIANZA CON AUTHORIZED_KEYS DE SSH
 Tratandose de un servicio OPenSSH 4.7p1 vamos a aprovecharnos de la vulnerabilidad en la generacion de las llaves (Ubuntu Security Notice USN-612-1 May 13, 2008 openssl vulnerability CVE-2008-0166)


DESCARGANDO EXPLOITS SSH_RSA_2048_X86
DESSCOMPRIMIENDO EL EXPLOIT






Encontrada la key SSH se accede con exito :)


ACCEDIENDO HACIENDO USO DE LAS KEY SSH PUBLICAS
Ahora apuntemosle a explotar el servicio Web, habiendose identificado un Apache Tomcat.

Intentando TOMCAT_MGR_LOGIN
CREDENCIALES ENCONTRADAS "tomcat" "tomcat"

ACCEDIENDO A TOMCAT MANAGER
TOMCAT WEB APPLICATION MANAGER
Aqui podriamos intentar subir una shell server  r55, c99, h57, etc. Pero intentemos con exploits que se encuentren en el Framework de Metasploit  u.u

INTENTANDO TOMCAT_MGR_DEPLOY

LOGRANDO SHELL CON EXPLOIT TOMCAT_MGR_DEPLOY   :p




Continuemos probando el servicio SSH ;)

CONFIGURANDO EXPLOIT AUXILIAR SSH_LOGIN

ENCONTRANDO CREDENCIALES "msfadmin" "msfadmin"
Y si probamos ataques de fuerza bruta con MEDUSA y XHYDRA  :)

INTENTANDO CON MEDUSA

ACCEDIENDO SSH CON CREDENCIALES LOGRADAS CON MEDUSA
Y ahora con XHYDRA  :P
CON XHYDRA
Ah pero tambien encontramos una vulnerabilidad de DISTCC  :)



Q tal si intentamos un John TheRipper  xD
Alguien recuerda un servicio SMB (Samba). Intentemoslo...

BUSCANDO EXPLOITS PARA SAMBA




USANDO EXPLOIT USERMAP_SCRIPT

OPCIONES EXPLOIT
INTENTANDO PAYLOAD CON BIND_RUBY

INTENTANDO PAYLOAD CON REVERSE
EJECUTANDO COMANDOS EN SHELL

Hasta aqui llego este articulo, se hizo extenso y espero no se te halla hecho aburridor y lo puedas replicar. Seguramente habran muchas mas vulnerabilidades esperandote para que las explotes, ahi si te pido que me cuentes que encuentres y compartas tus experiencias Por Fav...

Agradeciendote nuevamente por pasarte por aqui e invertir un poco de tu tiempo en estas lineas de conocimiento,  


Bytes



Dino