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 mltiples
vulnerabilidades, el cual permite realizar pruebas de penetracin (Pen
Test) haciendo uso del proyecto ms conocido el Metasploit Framework.
Metasploit puede ser utilizado por los profesionales de la seguridad
Informtica, para poner a prueba la vulnerabilidad de los sistemas
informticos de forma tica. Aplicando metodologas practicas con
estndares 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 mltiples vulnerabilidades disponibles
para ser explotadas (SMB, Tomcat, SSH, TWiki, MySql, etc.)
Por lo tanto debes gozar de un versin VMWare que para este Lab har uso
de VMWare Workstation Versin 6.
LABORATORIO DE METASPLOITABLE USANDO VMWARE Y
METASPLOIT
No vamos a explicar ni a hablar de metodologas 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
Informtica (punto de Red o uso de una estacin 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 tcnica que le permitan validar la informacin 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 informacin para disear nuestra estrategia de ataque.
SE IDENTIFICA CONTROLADOR DE DOMINIO WINDOWS 2000
SERVER
Encontramos tambin un Servidor Windows "2000Server" - IP 192.168.1.110,
tambin nos ofrece servicios no seguros, y se trata de un DC Controlador de
Dominio por los servicios que esta prestando.
Para validar la informacin usaremos Angry IP.
SONDEO DE RED CON ANGRY IP SCANNER
Lo q no nos poda faltar es un barrido de Ping con la herramienta por
excelencia.
BARRIDO DE PING CON NMAP
Identificado el Objetivo Militar, podramos 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
Rpidamente 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 mtodos 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 informacin 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,