31 jul 2012

Citadel VS Cuckoo

 

Estos días he publicado como te podías configurar tu Sandbox para el análisis de malware y  como el malware subido era analizado por la Sandbox, donde obteníamos resultados como el tráfico de red, donde se conectaba el binario, las peticiones DNS, además información sobre el malware en si.

Pero, los criminales no son precisamente tontos, así que, en las muestras “nuevas” y que van enfocadas a poder tener la protección máxima frente a un analista de malware.

Espero que no os hayáis perdido el POST de dos compañeros de trabajo que son unos cracks, estos compañeros son Jozsef Gegeny y Mikel Gastesi. Estos dos figuras publicaron las novedades que traía la nueva versión de Citadel. Podéis consultar el post aquí:

Cambios en Citadel: AntiVM y cifrado

En el artículo explican las nuevas cosas que trae Citadel, como mejoras hay, cito de la traducción que colgaron en el blog de S21Sec,

Añadida protección anti-emulacion, que protege tu botnet ante la ingeniería inversa y de su inserción en trackers. Cuando se inicia, se vigila que no se esté ejecutando en una máquina virtual o en una sandbox como CWSandbox, se comporta diferente y tu botnet pasa inadvertida. Los detalles no se publican. Los detalles se mantienen privados.

El troyano detecta en la memoria los siguientes procesos,

  • *vmware*
  • *sandbox*
  • *virtualbox*
  • *geswall*
  • *bufferzone*
  • *safespace*

Cuando el troyano detecta algunas de las cosas que busca ocurre algo muy chulo, y es que nos genera datos falsos. (Todo esto está explicado en el post de Mikel y Jozsef)

Cuando he subido Citadel al Sandbox de Cuckoo, he obtenido los siguientes datos:

Cuckoo es capaz de capturar los archivos que se creen, ya sea por que el malware hace una copia de si mismo. O porque se baja algo, porque actúa de Dropper.

El MD5 de los dos Citadel es el mismo.

Lo curioso es en el apartado de red,

Como véis la petición DNS es falsa… así que Citadel ha detectado la máquina virtual de Virtualbox, cuando Cuckoo lo ha analizado.

30 jul 2012

La Biblia del Footprinting (IX de XX)

 

Buenas a todos, hoy continuaremos con la cadena La Biblia del Footprinting volviendo a hablar sobre Google Hacking y algunos verbos y búsquedas curiosos que podremos realizar durante una auditoría.

Uno de mis verbos preferidos, y como ya os comenté en la primera parte de la cadena era el verbo EXT de Google Hacking y que nos permite localizar ficheros indexados por el buscador con la extensión que nosotros le indiquemos.

Algunas extensiones curiosas:

  • "ext: sql": Nos permitirá localizar archivos con instrucciones SQL:

  • "ext: rdp": Nos permitirá localizar archivos RDP (Remote Desktop Protocol), para conectarnos a Terminal Services y que podremos utilizar en la fase de fingerprint para obtener más información:

  • "ext: log": Nos permitirá localizar archivos de logs. Bastante útil ya veréis :)

  • "ext: bak": Nos permitirá localizar archivos de respaldo o backup de bbdd, aplicaciones con sistemas de autoguardado, etc. que pudiesen haber sido indexados:

  • "ext: listing": Nos permitirá listar el contenido de un directorio al invocar a este tipo de ficheros creados por WGET:

  • "ext: ws_ftp.log": Nos permitirá listar archivos de log del cliente ws_ftp:

No debemos olvidarnos la extensión svn de los respositorios de subversions, ni de los archivos de Office, ya que mucha información interesante es almacenada habitualmente en hojas de excel, access o diagramas realizados con visio, y podrían haber sido indexadas por Google.Otro verbo que nos puedo dar mucho jugo es el verbo SITE.Una búsqueda interesante es:
  • "site: /dominio:*" Con el que localizaremos aplicaciones tras puertos poco típicos (podéis jugar con la barra e incluso filtrar por puertos determinados):
Esto es todo por hoy, saludos!

29 jul 2012

Informe Flu - 82

Comenzamos con el resumen de la semana:Lunes 23 de Julio

Martes 24de Julio

  • Tras muchos meses de espera ya está aquí la última cadena sobre La Biblia del Footprinting, una de las cadenas de más éxito de nuestro blog y en la que os traemos 13 nuevos artículos para ayudaros a sacar el máximo partido a todo vuestro arsenal de herramientas en los procesos de information gathering.

Miércoles 25 de Julio

  • Hack a Server, gran título, y mejor post de Seifreed, indispensable para pentesters.

Jueves 26 de Julio

  • El jueves publicamos el solucionario de nuestro último reto hacking. El más sencillo hasta el momento y el que más usuarios han hecho. En éste reto debíais pasar un validador de un software del que no sabíais la contraseña mediante cualquier técnica. La gente lo ha resuelto de numerosas maneras, por lo que si quieres aprender cosas nuevas sobre CTFs... no te puedes perder este post :)

Viernes 27 de Julio

Sábado 28 de Junio

 

28 jul 2012

Las imagenes más utilizadas en charlas y artículos de seguridad informática. Parte I

Buenas a todos, si hay algo que me resulta curioso cuando leo un artículo sobre seguridad en algún blog, revista o periódico y cuando veo una nueva charla sobre seguridad informática, son las imágenes. ¿Nunca os habéis fijado que una gran mayoría de las veces se suelen/solemos utilizar las mismas imágenes? Quizás porque sean los primeros resultados que ofrece Google cuando buscas términos como "seguridad informática" o "hacking", o quizás porque sean las que "molan más". El caso es que siempre que veo de nuevo una de estas imágenes sonrío y me digo a mi mismo, <<mira, otro que ha sacado la imagen del mismo sitio =)>>

Me ha parecido curioso empezar una cadena en la que ir listando las imágenes que más veces veo repetidas, seguramente así no me reiré sólo cuando las vuelva a ver una y otra vez, y quizás consigamos que algún diseñador nos haga algunas imágenes chulas nuevas por la face. ¿Alguien se anima?

27 jul 2012

Análisis automático de malware con Cuckoo II

Hace unos días explicaba como te podías instalar tu propia Sandbox de análisis de malware.

Espero que si o habéis intentado os haya salido bien ;) .

En esta parte lo que haremos será subir muestras a Cuckoo para que las analice.

Antes de empezar quiero explicar una cosa que no queda del todo claro. Hay que entender que Cuckoo es como un Daemon es decir, lo hemos de dejar ejecutándose, y subir los binarios o URL para que Cuckoo las vaya analizando.

Para empezar, nos vamos al PATH, donde tenemos Cuckoo y ejecutamos:

python cuckoo.py

Por pantalla podremos ver algo así:

Ahora Cuckoo cuando lanzemos las tareas de análisis nos irá mostrando por pantalla que va haciendo. Además si por o que fuera tuviéramos algún error nos lo mostraría por pantalla.

Escogemos un binario cualquiera a analizar y se lo pasamos como parámetro al submit de cuckoo, así:

python submit.py troyano.exe

En Cuckoo veremos cosas como:

Cuckoo irá realizando las tareas una por una, hasta acabar.

Cuando acaba, nos genera un reports  en varios formatos que podremos consultar mas tarde.

Para verlo hará falta arrancar la parte web, ejecutamos:

python web.py

Si no queremos arrancarlo en localhost se le puede pasar como parámetro -t IP -p PUERTO

La web tiene este aspecto:

Si queremos ver un report en concreto, clicamos sobre el MD5 que queramos ver y podemos ver un resumen del binario analizado.

El report está detallado, en conexiones de red, características del binario etc… Además te realiza pantallazos para que puedas ver que ocurre.

Cuckoo también es capaz de analizar URL, para ello debemos de pasarle lo siguiente:

python submit.py -u URL_MALICIOSA -p ie

Con esto, Cuckoo abrirá esta URL con Internet Explorer y por ejemplo capturará si se baja algún binario o se crean archivos adicionales.

Como véis Cuckoo ofrece bastante versatilidad como herramienta de análisis de malware.

En próximas entradas añadiremos nuevas features y comprobaremos casos curiosos

26 jul 2012

Resolución del FPR6: Reto Hacking de Julio – ¡Killo! ¡onde ectá miclave!

Buenas a todos, hace una semana publicamos el reto FPR6 - ¡Killo! ¡onde está mi clave!. Era un reto de reversing, en el que había que saltarse la validación de un software.
La difusión del reto ha sido muy buena, con más de 50 RT en Twitter y mucha gente que lo ha intentado, por lo que estamos bastante contentos del éxito.
El reto ha sido el más sencillo hasta la fecha de todos los que hemos preparado, con el objetivo de que toda la gente que nos ha comentado que no había logrado solucionar ninguno de nuestros retos, vaya cogiendo metodología, aprendiendo las herramientas típìcas que se suelen utilizar y sobretodo, adoptando nuevas ideas.
Ha habido gente que nos ha comentado que la dificultad del reto era demasiado baja, efectivamente, y así lo indicamos en el reto, como siempre lo hacemos, para que antes de comenzar sepáis el público al que va orientado por si preferís no hacerlo. Dicho esto, aprovechamos para comentaros que tras el verano tendremos un reto de reversing de mayor grado de dificultad, bastante mayor ;) Pero será tras el verano, paciencia.
Volviendo a éste reto, felicitar a Daniel Kachakil, que como comienza a ser habitual ha vuelto a ser el primero en pasarse el reto, ¡enhorabuena!
Habéis sido muchos los que nos habéis enviado vuestros solucionarios, os lo agradecemos :). Hemos decidido publicar los siguientes tres porque nos han parecido variados en la manera de resolver el reto y se encuentran muy bien documentados:
  1. Solucionario de Longinos Recuero Bustos
  2. Solucionario de Pablo San Emeterio
Hasta el próximo reto, saludos!

25 jul 2012

Hack a Server

Cuando realizas tu primera auditoría es muy importante no ir solo, por mucho que te hayas montado tus labs virtuales de pentesting. O que hayas leído infinidad de PDF’s sobre la materia. Hay algo que no se puede aprender leyendo ni en casa y es la experiencia.

Cuando un pentester lleva años realizando las auditorías tanto de caja blanca como de caja negra, sabe muy bien o al menos conoce los pasos, para poder realizar dicha auditoría.

Las auditorías normalmente son unas horas en concreto destinadas a dicho proyecto, por lo tanto es muy importante “ir por faena”.

La experiencia te brinda el poder en una auditoría de realizar esas cosas.

Hack a Server, te da la posibilidad de poder tener un entorno realista para realizar pentesting.

Ellos te dan acceso a una máquina para poder configurarla. Esta máquina puede llevar como sistema base, Ubuntu, CentOs etc…

Te permite configurarte un servidor con las medidas de seguridad que consideres oportunas, además de dejar algún servicio vulnerable para poder practicar dicha vulnerabilidad.

El proyecto se presenta de la siguiente manera:

Se presenta como un proyecto colaborativo de pentesting.

Para realizar el pentesting hace falta que te conectes a la red vulnerable de Hack a Server.

Para ello te proporcionan una conexión VPN que te servirá para ello.

Mediante OpenVPN te puedes conectar a la red de Hacka Server para realizar las pruebas que quieras.

Las máquinas configuradas tienen hasta 1 GB de RAM eh :P

Una vez que tienes la máquina lista puedes publicarla para que los demás puedan hacer las prácticas pertinentes.

Y puedes claro, hacer submit de las vulnerabilidades que encuentres

Sin duda un proyecto MUY INTERESANTE al que os animo a que entréis.

Por ejemplo una de las pruebas que realicé ayer por la noche:

nmap -vv -p- -PN 10.2.32.232 -AStarting Nmap 6.01 ( http://nmap.org ) at 2012-07-23 20:47 CESTNSE: Loaded 93 scripts for scanning.NSE: Script Pre-scanning.NSE: Starting runlevel 1 (of 2) scan.NSE: Starting runlevel 2 (of 2) scan.Initiating Parallel DNS resolution of 1 host. at 20:47Completed Parallel DNS resolution of 1 host. at 20:47, 1.41s elapsedInitiating Connect Scan at 20:47Scanning 10.2.32.232 [65535 ports]Discovered open port 21/tcp on 10.2.32.232Discovered open port 22/tcp on 10.2.32.232Increasing send delay for 10.2.32.232 from 0 to 5 due to max_successful_tryno increase to 4Connect Scan Timing: About 0.91% doneConnect Scan Timing: About 1.26% done; ETC: 22:08 (1:19:32 remaining)Increasing send delay for 10.2.32.232 from 5 to 10 due to max_successful_tryno increase to 5Increasing send delay for 10.2.32.232 from 10 to 20 due to max_successful_tryno increase to 6Increasing send delay for 10.2.32.232 from 20 to 40 due to max_successful_tryno increase to 7Connect Scan Timing: About 1.50% done; ETC: 22:28 (1:39:37 remaining)Connect Scan Timing: About 1.90% done; ETC: 22:36 (1:46:47 remaining)Connect Scan Timing: About 2.35% done; ETC: 22:43 (1:52:58 remaining)Increasing send delay for 10.2.32.232 from 40 to 80 due to max_successful_tryno increase to 8Increasing send delay for 10.2.32.232 from 80 to 160 due to max_successful_tryno increase to 9Increasing send delay for 10.2.32.232 from 160 to 320 due to max_successful_tryno increase to 10Warning: 10.2.32.232 giving up on port because retransmission cap hit (10).Discovered open port 3632/tcp on 10.2.32.232Connect Scan Timing: About 96.31% done; ETC: 03:16 (0:14:20 remaining)Completed Connect Scan at 03:20, 23568.11s elapsed (65535 total ports)Initiating Service scan at 03:20Scanning 3 services on 10.2.32.232Completed Service scan at 03:20, 10.32s elapsed (3 services on 1 host)NSE: Script scanning 10.2.32.232.NSE: Starting runlevel 1 (of 2) scan.Initiating NSE at 03:20Completed NSE at 03:20, 10.60s elapsedNSE: Starting runlevel 2 (of 2) scan.Nmap scan report for 10.2.32.232Host is up (0.31s latency).Scanned at 2012-07-23 20:47:35 CEST for 23589sNot shown: 65487 closed portsPORT      STATE    SERVICE     VERSION8/tcp     filtered unknown21/tcp    open     ftp         ProFTPD 1.3.1|_ftp-bounce: no banner22/tcp    open     ssh         OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)| ssh-hostkey: 1024 60:0f:cf:e1:c0:5f:6a:74:d6:90:24:fa:c4:d5:6c:cd (DSA)| ssh-dss AAAAB3NzaC1kc3MAAACBALz4hsc8a2Srq4nlW960qV8xwBG0JC+jI7fWxm5METIJH4tKr/xUTwsTYEYnaZLzcOiy21D3ZvOwYb6AA3765zdgCd2Tgand7F0YD5UtXG7b7fbz99chReivL0SIWEG/E96Ai+pqYMP2WD5KaOJwSIXSUajnU5oWmY5x85sBw+XDAAAAFQDFkMpmdFQTF+oRqaoSNVU7Z+hjSwAAAIBCQxNKzi1TyP+QJIFa3M0oLqCVWI0We/ARtXrzpBOJ/dt0hTJXCeYisKqcdwdtyIn8OUCOyrIjqNuA2QW217oQ6wXpbFh+5AQm8Hl3b6C6o8lX3Ptw+Y4dp0lzfWHwZ/jzHwtuaDQaok7u1f971lEazeJLqfiWrAzoklqSWyDQJAAAAIA1lAD3xWYkeIeHv/R3P9i+XaoI7imFkMuYXCDTq843YU6Td+0mWpllCqAWUV/CQamGgQLtYy5S0ueoks01MoKdOMMhKVwqdr08nvCBdNKjIEd3gH6oBk/YRnjzxlEAYBsvCmM4a0jmhz0oNiRWlc/F+bkUeFKrBx/D2fdfZmhrGg==| 2048 56:56:24:0f:21:1d:de:a7:2b:ae:61:b1:24:3d:e8:f3 (RSA)|_ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAstqnuFMBOZvO3WTEjP4TUdjgWkIVNdTq6kboEDjteOfc65TlI7sRvQBwqAhQjeeyyIk8T55gMDkOD0akSlSXvLDcmcdYfxeIF0ZSuT+nkRhij7XSSA/Oc5QSk3sJ/SInfb78e3anbRHpmkJcVgETJ5WhKObUNf1AKZW++4Xlc63M4KI5cjvMMIPEVOyR3AKmI78Fo3HJjYucg87JjLeC66I7+dlEYX6zT8i1XYwa/L1vZ3qSJISGVu8kRPikMv/cNSvki4j+qDYyZ2E5497W87+Ed46/8P42LNGoOV8OcX/ro6pAcbEPUdUEfkJrqi2YXbhvwIJ0gFMb6wfe5cnQew==1373/tcp  filtered chromagrafx3632/tcp  open     distccd     distccd v1 ((GNU) 4.2.4 (Ubuntu 4.2.4-1ubuntu4))9359/tcp  filtered unknown10727/tcp filtered unknown11719/tcp filtered unknown13979/tcp filtered unknown15913/tcp filtered unknown17985/tcp filtered unknown20492/tcp filtered unknown20854/tcp filtered unknown21723/tcp filtered unknown22478/tcp filtered unknown23000/tcp filtered unknown24734/tcp filtered unknown25026/tcp filtered unknown26358/tcp filtered unknown26488/tcp filtered unknown28837/tcp filtered unknown28901/tcp filtered unknown30398/tcp filtered unknown34003/tcp filtered unknown34756/tcp filtered unknown34851/tcp filtered unknown36462/tcp filtered unknown36889/tcp filtered unknown37932/tcp filtered unknown38054/tcp filtered unknown38163/tcp filtered unknown42558/tcp filtered unknown43951/tcp filtered unknown44470/tcp filtered unknown46536/tcp filtered unknown47092/tcp filtered unknown47522/tcp filtered unknown48193/tcp filtered unknown49869/tcp filtered unknown56201/tcp filtered unknown57810/tcp filtered unknown58462/tcp filtered unknown58514/tcp filtered unknown58602/tcp filtered unknown58778/tcp filtered unknown58920/tcp filtered unknown62253/tcp filtered unknown63746/tcp filtered unknownService Info: OSs: Unix, Linux; CPE: cpe:/o:linux:kernelNSE: Script Post-scanning.NSE: Starting runlevel 1 (of 2) scan.Initiating NSE at 03:20Completed NSE at 03:20, 0.00s elapsedNSE: Starting runlevel 2 (of 2) scan.Read data files from: /usr/local/bin/../share/nmapService detection performed. Please report any incorrect results at http://nmap.org/submit/ .Nmap done: 1 IP address (1 host up) scanned in 23590.75 seconds

A probar pentesting.

Podéis seguir a los de hack a server en su cuenta de Twitter

@hackaserver

24 jul 2012

La Biblia del Footprinting (VIII de XX)

Buenas a todos, hoy volveremos a arrancar la cadena de artículos sobre La Biblia del Footprinting, con 13 nuevas entregas en las que seguiremos aprendiendo nuevas técnicas para utilizar en los procesos de recolección de información pública.

Tras publicar la anterior cadena de artículos en formato libro PDF, podemos decir que ha tenido una gran aceptación, y solo en nuestro portal ya ha superado las 20.000 descargas (¡gracias a todos!), más otras tantas en otros portales y formatos (epub por ejemplo) en los que los han publicado. Además, hemos sido incluidos en el documento redactado por Inteco (PENTEST: RECOLECCIÓN DE INFORMACIÓN) como fuente de información recomendada a la hora de realizar un Pentest.

Cuando finalicen los 13 nuevos artículos publicaremos la versión 2.0 del libro, mucho más completa (con más contenido del que publicamos en los posts), analizando más herramientas y en numerosos formatos para que la tengáis siempre disponible en vuestro tablet, libro electrónico, pc, etc. cuando os toque realizar una auditoría. También realizaremos una reordenación de los contenidos para adaptar los nuevos artículos de la cadena al orden lógico que se debería seguir en un proceso de auditoría

Tras la introducción ¡vamos a comenzar!

Si hay algo que nos puede interesar en un proceso de recolección de información, es analizar si hay determinados dominios almacenados en la cache de DNS, ¿para qué nos va a servir?, principalmente para averiguar que sitios web visitan los empleados de la organización que se está auditando. Con ello podremos estudiar sus costumbres, intereses y con mucha probabilidad otros sitios web, paneles de administración, intranets, etc. que posean en la empresa y que deberemos auditar también. Ésta técnica es conocida como DNS Caché Snooping.

Cuándo un usuario quiere visitar un sitio Web de Internet, se resuelve el nombre del dominio, para ello pregunta a su servidor de DNS. Si el servidor de DNS tiene configurada la caché, antes de solicitar la resolución del dominio mediante consultas recursivas, comprobará que ese nombre buscado se encuentra en su caché con el fin de ahorrar tiempo. Si lo tiene lo sirve, si no, realiza la resolución recursiva. ¿Sencillo no?

Esta configuración "despreocupada" permitirá visualizar los dominios almacenados en la caché del servidor de DNS (siempre que no haya caducado), de manera que se podría saber en cualquier momento los sitios Web que visitan los usuarios de la organización.

Para explotar dicha vulnerabilidad basta con configurar las consultas al servidor DNS anulando la resolución recursiva, de manera que solo se consultará la caché.

A continuación os muestro una prueba de concepto en la que se ha comprobado como los usuarios de una organización X visitan habitualmente el sitio web del Marca, pero no visitan el diario El Mundo:

Como imaginaréis, la gracia de esta técnica cobra fuerza llevandola a cabo con un proceso de automatización, de esto se encargan varias herramientas accesibles gratuitamente por Internet. De una de ellas ya nos habló nuestro compañero Marc en su artículo http://www.flu-project.com/dns-cache-snooping.html. Se trata de dns-snoopy. Está utilidad se encuentra desarrollada en python y tiene un uso bastante sencillo. Su ejecución es la siguiente:

python dnssnoopy.py -d dominio y -f dominios.txt
Donde dominios.txt será un diccionario con todos los dominios que deseamos probar. 

 

Otra utilidad de esta técnica es la de analizar si los empleados de la organización acceden desde la empresa a páginas con contenido inapropiado, cómo páginas con contenido adulto o de descargas y que podrían poner en peligro la seguridad de los equipos por la gran cantidad de malware que contienen. Si se detectase que los empleados visitan estas páginas, sería interesante recomendar su bloqueo.

Nos vemos en el próximo artículo, saludos! 

23 jul 2012

Análisis automático de malware con Cuckoo

A los amantes del malware ¿No hará falta que os explique que es un sandbox no? Ni tampoco ¿Que es un sandbox de malware?

Los que no conozcáis estos conceptos seguro que si os nombre Virus Total de Hispasec Sistemas ya sabréis a que me refiero.

El artículo de hoy trata sobre un sandbox open source de análisis de malware. Se trata de Cuckoo.

Cuando vi este proyecto en la web de HoneyNet, me entraron muchas ganas de probarlo, así que me ha faltado tiempo :P

La instalación de cuckoo la he realizado en un Ubuntu, ahora mismo es el sistema que está completamente soportado por Cuckoo. Probé la instalación en OS X Lion, pero aún da algunos problemas :) .

Los pasos para instalar Cuckoo són:

1)Preparar Ubuntu para los análisis con Cuckoo

Para usar Cuckoo harán falta una serie de paquetes para usarlo.

En una terminal tenemos que instalar:

sudo apt-get install python python-magic python-dpkt python-mako

Como elemento opcional instalamos ssdeep, lo bajamos por SVN, compilamos e instalamos

svn checkout http://pyssdeep.googlecode.com/svn/trunk/ pyssdeep-read-only

No entraré en detalles sobre este punto en concreto.

También nos hará falta tcpdump:

sudo apt-get install tcpdump

Tcpdump requiere permisos de root, para no tener que ejecutar Cuckoo como root, vía terminal hacemos

$ sudo setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump

Ya tenemos lista la parte de tcpdump lista.

Luego solo falta bajar Cuckoo para poder empezar la configuración.

Lo descargamos de aquí y descomprimimos.

Los requerimientos de la parte de Ubuntu están listos.

2)-Preparación de la máquina virtual con Virtualbox

Instalar una máquina Windows XP con Python.

La máquina Windows ha de ser una instalación normal, en ella podemos incluir por ejemplo una versión de Java vulnerable, por si queremos hacer alguna prueba con un Exploit Kit. También un visor PDF vulnerable para lo mismo que el Exploit Kit. Además configuraremos la máquina virtual con usuario y password.

También hará falta instalar Python, descargarlo desde aquí.

Si queremos que en el análisis Cuckoo realice capturas de pantalla hará falta instalar también otro módulo de Python, a descargar de aquí.

Además hará falta instalar las Guest Additions de VirtualBox y el extensión pack de Virtualbox, lo descargamos de aquí

Una vez que tenemos todo esto, hay que hacer algunas cositas mas con VBoxManage, pero lo haremos “vía cli” 

Capturando tráfico de red con Cuckoo y Virtualbox

Gracias a la funcionalidad que tiene VirtualBox de sniffer, capturaremos el tráfico de la máquina virtual.

Apagamos la máquina virtual si la tenemos encendida y vía terminal hacemos:

$ VBoxManage modifyvm "Name of VM" --nictrace1 on --nictracefile1 /path/to/cuckoo/shares/<VM ID>/dump.pcap

El nombre de la máquina virtual es el nombre que le hayamos asignado cuando la hemos creado, en el caso del VM ID lo dejamos como cuckoo1, podemos cambiarlo luego en el archivo de configuración. el path es donde vayamos a colocar Cuckoo.

Carpetas compartidas

Para que Cuckoo pueda trabajar con la máquina virtual de VirtualBox, se habilitarán las carpetas compartidas. Con la máquina virtual apagada hacemos vía terminal.

$ VBoxManage sharedfolder add "<Name of VM>" --name "setup" --hostpath "/path/to/cuckoo/shares/setup" --readonly

Igual que antes en Name of VM el nombre que le hayamos asignado. En cuanto al nombre de setup, lo dejamos por defecto. El path igual que antes y la parte de shares/setup lo dejamos por defecto también.

Habilitamos la segunda carpeta compartida

$ VBoxManage sharedfolder add "<Name of VM>" --name "<VM ID>" --hostpath "/path/to/cuckoo/shares/<VM ID>"

Mismas aclaraciones que en el punto anterior además de poner el VM ID de Cuckoo1, que se puede cambiar en el fichero de configuración, pero lo dejaremos por defecto.

Después de hacer estos cambios encendemos la máquina virtual.

Creando un Snapshot

Volvemos a la terminal y guardamos un snapshot de la máquina virtual. Cuckoo lo usará para restablecer la máquina después de cada análisis.

En la terminal ponemos:

$ VBoxManage snapshot "<Name of VM>" take "<Name of snapshot>" --pause

Cambiamos el nombre de la máquina virtual al nuestro y en el nombre del snapshot, le ponemos el que queramos.

Apagando y restaurando estado de la máquina virtual

Una vez que hemos creado el snapshot apagamos la máquina virtual así:

$ VBoxManage controlvm "<Name of VM>" poweroff

Ahora restauramos la máquina virtual con el snapshot:

$ VBoxManage snapshot "<Name of VM"> restorecurrent

Ya tenemos la parte de la máquina virtual configurada para analizar las muestras con Cuckoo

Editando el archivo de configuración de Cuckoo

Ahora editaremos el archivo de configuración de Cuckoo, para dejarlo todo listo.

marc@darkunix: ~/cuckoo/conf $ vim cuckoo.conf

Editaremos las partes que nos interesan:

# Set to “gui” if you want Cuckoo to spawn virtual machines’ GUIs or set to# “headless” if you don’t.mode = headless

Esta parte lo que hace es que, si lo dejamos en modo gui, cuando analicemos una muestra de malware veremos como se levanta la máquina virtual, y que ocurre, si lo cambiamos a headless, todo será en background, yo lo prefiero así.

Otro apartado a editar:

[cuckoo1]name = cuckoo_xpusername = userpassword = user

El nombre es el que le hayamos asignado a la máquina virtual, también indicamos el user y el password.

Y hasta aquí la parte de dejar Cuckoo funcionando, en la segunda parte veremos como analizar las muestras de malware

22 jul 2012

Informe Flu - 81

Comenzamos con el resumen de la semana:Lunes 16 de Julio

Martes 17 de Julio

Miércoles 18 de Julio

Jueves 19 de Julio

  • Flu Project vuelve con los retos hacking de la mano de Juan Antonio Calles. En este reto básico de reversing se pretende enseñar a los participantes temas sencillos de lo reverso y los típicos seriales... ¿Y tú ya los has superado?

Viernes 20 de Julio

  • Locura transitoria de Pablo y su experimento de Black SEO Friendly: mide el altavoz en Internet. Se propuso una ayuda para un blog amigo de Flu Project, el cual no tiene que ver con el mundo de la seguridad, pero si con el mundo de la actualidad.

Sábado 21 de Julio

  • Se muestran los resultados obtenidos en el experimento social y se cierra la semana en Flu Project, y ya van 81... nos quedan poquitas para las 100, que número más bonito... Pero, hoy domingo hay más sorpresas... Lee más abajo!
En Flu Project nos vamos de rebajas, y realizamos la liberación de los precios en nuestras Flu Tazas. Tiramos la casa por la ventana y dejamos los precios de las Flu Tazas en 5 Euros la unidad. Aprovecha esta oportunidad para adquirir tu Flu Taza con una impresión del logo de gran calidad. Si estáis fuera de la comunidad de Madrid se os puede enviar, pero hay que incluir los gastos de envio. Ayuda a mantener a Flu Project con nuestra Flu Taza!

21 jul 2012

Resultados del primer experimento: Black SEO Friendly

Aquí están los resultados del experimento social Black SEO Friendly: Mide el altavoz con nosotros... La idea era ver cuantos usuarios ayudarían a jourmind o Sonía Frías a visitar su web, con 2 objetivos: dar a conocer el blog (el cual tiene que tener una vida más constante, publicación de una noticia al día estaría bien) y ver el altavoz que Flu Project puede provocar en un momento dado. Twitter se ha quemado, sería el titular de una periodista como Sonia, pero no... lo digo yo :)

Los objetivos eran los siguientes:

  • Conseguir 250 visitas en un día para jourmind. (Factible)
  • Conseguir 400 visitas en un día para jourmind. (Vamos que podemos!)
  • Conseguir 600 visitas en un día para jourmind. (El éxito)
  • Conseguir 5 RT en twitter (Factible)
  • Conseguir 10 RT en twitter (Si los de IBM pueden… nosotros también)
  • Conseguir 15 RT en twitter (Si @enelpc los ha conseguido Sonia también!) Encima propaganda para Germán… :O
  • Conseguir 1 comentario en su blog (Venga chicos… un comentariooo, factible)
  • Conseguir 3 comentarios (Ya pedimos mucho, ¿No?)
  • Conseguir 5 comentarios (Y esta noche pago un cubata, en el desván…)
¿Qué se ha conseguido?
Estaba claro que conseguir todo era realmente difícil, pero se ha intentado que es algo importante en la vida, quien no lo intenta seguro que no lo consigue. Bien, a la parte de visitas se han logrado casi 400 visitas y tráfico generado hacia la página web de Sonia. Quizá con algo de publicidad engañosa, la gente hubiera ido más... pero aquí no somos así, y os contamos las cosas como son y las sentimos... :) Para engañar, me pregunto ¿tenemos a los políticos?
Bueno volviendo a cosas menos serias os dejamos una foto del equipo de jourmind trabajando duramente... se puede observar como el trabajo les desborda y como se vive un clima tenso en la oficina:
Bueno, el segundo objetivo era conseguir un número de RT importante, consiguiéndose 18... o más! Además, ella ha conseguido unos 5 followers nuevos, así que sí... me debe una coca cola o cena xD. El tercer objetivo, y el que a mi más me gustaba era el de los comentarios... el máximo objetivo era 5 y se han conseguido más de 10 comentarios... por lo que en este aspecto un éxito. La frase piensa en verde, o pensando en verde, ha sido la más utilizada... lo cual también nos ha parecido curioso. Para los más curiosos, Flu Project ha recibido en el día 20 de Julio más de 1900 visitas a su página web. Lo cual dice algo malo en contra de nosotros... no hemos conseguido lograr que esas visitas lleguen al blog de Sonia en un número grande, pero bueno, también podemos decir que no se intentó engañar a nadie y quizá en eso estuviera el fallo...

20 jul 2012

Experimento: Black SEO Friendly... o ¿Cómo ayudar a una amiga?

Hoy en Flu Project presentamos una entrada un tanto especial. Hoy podríamos enfocar el tema como algo de black SEO, pero de black tiene poco... es mas un friendly SEO. Los más puristas del lugar me tildarían de muchas cosas si tratásemos este tema con un enfoque serio, y es que en Flu Project intentamos dejar las cosas serias para otros ámbitos, como es la seguridad, y por ejemplo algo que preocupa últimamente, la situación laboral y económica del país. Quizá, y si Juanan lo permite, se hablará de ello más adelante por temas cercanos a nosotros, pero esto es otro tema. 

Lo que hoy nos reúne aquí es un experimento, sí... Nos vamos de experimento! Primer experimento Flu Project 2012 y está relacionado con el SEO, ¿Con qué me sorprenderán estos locos? Pensarán algunos... Bien, el experimento tiene que ver con el altavoz que uno tiene en Internet. Internet es un medio que puede hacer que gente introvertida disponga de un canal de comunicación y una personalidad que no disponen en el mundo real, así es el mundo digital. Vale, parece que lo hemos entendido, queremos ayudar al blog de una amiga y ver la repercusión que puede tener este blog en el sitio de esta chica,¿La queréis ver? Ir a su blog... ya sabéis mujer en un mundo de hombres, llama la atención. Pero, seamos justos, debería haber más mujeres en este mundo de la seguridad, valen igual o más que muchos hombres... Tras el momento Che Guevara, decir que bueno... Sonia no se dedica a la seguridad pero ha participado representando a Flu Project en el FesTICval 2o12.

Volvamos al experimento que sabéis que me gusta irme por las ramas... Bien, el experimento durará un día, ella recopilará datos sobre sus visitas y visibilidad en Internet (twitter, fb, google, etc...) durante el día previo, es decir ya lo ha tenido que hacer. Después de un día entero en el que desde Flu Project se la promociona tanto en el blog, como en twitter, fb, etc... se pedirá vuestra participación para el tema de visitas, simplemente un click.

¿Qué carajo buscáis con esto?

Pues es fácil, el altavoz... poder medir el altavoz que se dispone en Internet, y como la teoría de la ayuda entre blogs o fraternización permite conocer a blogs con menos ayudas o menor tiempo en la red. A muchos de vosotros, sobretodo los que entráis todos los días aquí buscando una entrada sobre seguridad os puede parecer algo extraño, pero es un experimento que llevamos tiempo queriendo realizar.

Después del día de experimento se publicarán los resultados y se podrá ver el altavoz que vosotros nos proporcionáis. Se enunciarán las visitas que jourmind ha obtenido, y el número de RT en twitter que se han generado con el experimento. Esta claro que hoy en día hay muchas cosas que cuestan, pero 1 clic por 1 segundo de vuestra vida seguro que nos podéis dar.

Vale, ahora me podéis decir, acepto el experimento y participaré. Bien, ¿De qué va el blog? ¿Al final me engancharé a él? Bueno, eso ya dependerá del equipo de jourmind. Lo que sí puedo decir es que ayudar a la gente que lo necesita hoy en día, y sobretodo en España tal y como está la cosa, debería ser lo prioritario para muchos de nosotros, ya que nuestros queridos políticos parece que no pueden... Me vuelvo a ir por las ramas, lo sé, bueno pues el blog es un espacio dónde se habla de actualidad, ideas, periodismo puro... artículos con fuerza y de temas de actualidad. Apenas el sitio está naciendo, pero bueno si se lo toman en serio, podrá llegar lejos.

Nos hemos marcado unos objetivos:

  • Conseguir 250 visitas en un día para jourmind. (Factible)
  • Conseguir 400 visitas en un día para jourmind. (Vamos que podemos!)
  • Conseguir 600 visitas en un día para jourmind. (El éxito)
  • Conseguir 5 RT en twitter (Factible)
  • Conseguir 10 RT en twitter (Si los de IBM pueden... nosotros también)
  • Conseguir 15 RT en twitter (Si @enelpc los ha conseguido Sonia también!) Encima propaganda para Germán... :O
  • Conseguir 1 comentario en su blog (Venga chicos... un comentariooo, factible)
  • Conseguir 3 comentarios (Ya pedimos mucho, ¿No?)
  • Conseguir 5 comentarios (Y esta noche pago un cubata, en el desván...)
Si os atrevéis con los comentarios... una frase al más puro estilo "Piensa en verde" para que Sonia lo vea... :D
Apúntate al experimento: Jourmind
 

Prometemos que el link no os llevará a una web con un iframe trasparente el cual apunta a una máquina con metasploit que espera con un browser_autopwn para lanzar exploits sobre los navegadores de los lectores... Lo prometemos! a no ser que Sonia nos sorprenda y lo tenga montado... ¿Os imagináis?

Pronto los resultados... ¿Lograremos el reto?

19 jul 2012

FPR6: Reto Hacking de Julio - ¡Killo! ¡onde ectá mi clave!

Buenas a todos, como ya sabéis, cuando el tiempo lo permite intentamos montar un reto hacking mensual. Tras unos meses complicados, el verano nos ha permitido poder dedicar algo de tiempo a pensar algunos retos (pronto vendrán más) con los que estrujaros las seseras y que paséis un buen ratillo frente al PC.

Para este mes os proponemos un reto diferente a los que os habéis enfrentado en los 5 anteriores retos de Flu Project. Su grado de dificultad es medio-bajo, por lo que si sois noveles en la materia os vendrá muy bien para aprender nuevas técnicas, y si sois expertos, no os debería costar mucho tiempo pasarlo.

El reto consiste en una aplicación para Windows que simula ser el validador de un software en el que debéis de introducir la clave de la licencia que encontraréis en el reverso de esa fabulosa caja en la que venía el sw. Por supuesto, no tenéis la caja original, guiño guiño. Si la clave introducida es correcta, os saltará una alerta indicando que la validación ha sido correcta, y se cerrará la aplicación. Si la contraseña no es correcta, os indicará mediante otra alerta que no la has introducido bien, y te permitirá seguir probando infinitas veces.

El objetivo es conseguir "visualizar" el mensaje de validación correcta:



Tenéis VARIAS posibilidades para pasar el reto, desde acertar la contraseña :) hasta ******* el programa.

Podéis descargar el exe con la aplicación desde AQUÍ.

Como habitualmente el seguimiento del reto se hará desde Twitter, con el hashtag #FPR6

Disponéis de una semana para pasar el reto, cuando finalice publicaremos la solución en el blog.

Si pasáis el reto y queréis, podéis enviarnos vuestros solucionarios a info@flu-project.com y si son correctos y están bien documentados los publicaremos como posible solución al reto.
Disfrutarlo, saludos!

18 jul 2012

Feliz cumpleaños = ¿Contraseña en peligro?

Los pilares básicos de la seguridad informática a la hora de acceder a los sistemas, han cambiado mucho a lo largo de la historia. Cuando las máquinas no estaban conectadas con el exterior, la seguridad estaba centrada casi exclusivamente en el ámbito del acceso físico a la consola. Posteriormente, al hacerse multiusuario, hubo que poner una barrera más al acceso a los datos que permitiera tanto la identificación como la autenticación por parte de los usuarios hacia el sistema. Con el paso de los años y las necesidades tecnológicas, el acceso remoto ha ido añadiendo métodos y diferentes protocolos, pero que se resumen en 3 formas básicas, siendo habitual la posibilidad del uso combinado de las mismas:

Lo que sabes: Quizás el método mas básico y utilizado de todos, que se trata en el conocimiento por parte del usuario del sistema de un dato supuestamente personal e intransferible, que habitualmente se traduce en un password o PIN combinado con un nombre de usuario para identificar el origen. Normalmente está presente en el resto de los métodos de identificación y autenticación.

Lo que tienes: Asociado a algún elemento físico, puede ser un token del estilo a un reloj/calculadora, una hojita de One Time Password, un serial o identificador en el móvil, una tarjeta de coordenadas, etc. Muchas aplicaciones móviles, asocian el ID del dispositivo con el/los número/s de teléfono evitando que el usuario deba autenticarse.

Lo que eres: Con la llegada de dispositivos biométricos, es posible autenticarse con una parte de nosotros mismos que se supone única. La huella, es el método más tradicional, aunque el iris del ojo, las venas de las manos o incluso el código ADN, pueden y podrán utilizarse como método de identificación y autenticación.

A la hora de decidir en nivel de seguridad necesario que nos haga utilizar uno de los anteriormente citados o, muy recomendable, la combinación de varios de estos métodos, además del económico, se plantean otros problemas conocidos como “los puntos del que pasaría si…“. Dentro de estos puntos, lo más habitual y donde más se baja la guardia es en el hecho de la pérdida de una contraseña, el terminal, el tocken o la mano (o cualquier otro miembro) en caso de la biometría. La pérdida de esta capacidad de autenticarse e identificarse, hace necesaria la activación de un método alternativo que no haga perder el espíritu con el cual se adopto este método de identificación principal.

Por ejemplo, dar la posibilidad del uso de un usuario/password es un mal “plan b” para un sistema biométrico o un tocken, a no ser que se contemplen medidas de seguridad extraordinarias (por ejemplo el uso de un tocken maestro adicional a la intervención del usuario, o la activación tras la identificación presencial)

Después de todo este rollo para ponerte en antecedentes, iré al asunto del cumpleaños (por fin!! viva vivaaa). La historia arranca hace un tiempo cuando un amigo de un amigo que no tenía mail (si, queda gente 1.0 total) necesitaba subir su CV a un website para una preselección a la hora de optar a un puesto de trabajo y puse el mío con un password temporal. El problema es que desde ese website, me empezaron a venir información de suscripciones, publicidad, ofertas de trabajo relacionadas, etc. Intenté resetear la contraseña que había puesto (nunca pongáis una contraseña un viernes por la noche) pero para mandarme el enlace a través del cual me daba la posibilidad de hacer dicho reseteo, me pedía conjuntamente con mi email, la fecha de nacimiento de este usuario. Como no tenía contacto con el, no me quedó mas remedio que poner el remitente en el spam después de que en el CAU de esta empresa hicieran caso omiso a mi petición (esto último lo entiendo).

Pues bien, cuando ya ni me acordaba, me llegó un mail felicitándome el cumpleaños de parte de esta empresa de búsqueda de trabajo. Esto me dio el día y el mes y  tras probar un par de años, conseguí acceder al sistema, resetear la contraseña y así poder librarme de estos molestos mails.

Por supuesto, me di cuenta al momento de un error tan grave como apuntar el PIN de una tarjeta de crédito en la misma. Si usas “lo que tienes” por un lado (la cuenta de correo) y “lo que sabes” por otro (la fecha de tu nacimiento), al hacer accesible esto último a través del mismo medio, lo pones en peligro evidente. Es decir (ojo, necesarias habilidad x4 en trabalenguas), si “lo que sabes” además lo pueden saber otros a través de “lo que tienes”, cualquiera que pueda tener lo que tu tienes, sabrá lo que tu sabes.

Un Saludo!!

PD: La empresa ha sido avisada y han sido muy amables con las indicaciones que les di en el mail. A pesar de que no se nombra en ningún momento, decidí postergar la publicación a la resolución del fallo de seguridad. Actualmente han cambiado la fecha de nacimiento por un dato privado que no se envía en ningún momento por mail.

17 jul 2012

Flu con Bugtraq

La semana pasada se conoció la noticia de que Flu había sido seleccionado para ser uno de los troyanos que se facilitan en la distribución de bugtraq. La noticia  nos hizo especial ilusión, y con ganas abordamos esta nueva etapa, dónde esperamos que con ayuda de la comunidad el proyecto mejore. Hoy no vengo a daros la noticia y un poco de chapa, hoy toca ver las imágenes de la versión de Flu  que Bugtraq ha introducido en la distro. He de decir que la distro me ha llamado la atención por las posibilidades que ofrece y el aspecto con la que la han dotado.

Tras arrancar la distro nos encontramos con un escritorio dónde un gran panel de información nos ayuda a ver como andan los recursos de la máquina y que servicios se encuentran activos. Lo primero que puede llamar la atención son los típicos Metasploit (sorpresas en el futuro), Nessus, Set, OpenVAS, etc... pero si investigamos más a fondo nos encontraremos con otras grandes joyas.

Se tiene acceso al generador de bots de Flu, el cual tira por Wine y al cliente de Flu. Cuando se ejecuta el cliente de Flu, el equipo de Bugtraq ha hecho que automáticamente se arranque mysql, apache y lo necesario para que directamente se cargue el panel de acceso al control de la botnet. Rápido y sin problemas.

Tras la carga nos aparecerá un firefox con el login al panel de control. Recordad que por defecto las credenciales son admin - 1234. Es una de las primeras cosas que debéis cambiar, las credenciales por defecto, más de uno se puede encontrar con una sorpresa por Internet...

Bueno esperemos que probéis la distro, y hagáis buen uso del feedback ;)

[vimeo 43343016# Flu en Bugtraq]

16 jul 2012

Crackme, jugando con un serial y OllyDBG II

Si recordáis la entrada de ayer, estábamos hablando sobre como podíamos con OllyDBG hacer el reversing de un binario que comprobaba el serial, al final conseguíamos editar en memoria y guardar el resultado de manera que podíamos introducir cualquier serial que nos daba un resultado de serial correcto.

En esta segunda parte, miraremos exactamente que check realiza el binario para saber que el serial que introducimos es correcto, o no lo es.

Por si no lo habéis leído, cuando abrimos el binario, nos vamos a buscar todas las referencias de String del binario.

Picamos otra vez en la parte de This serial, para ir a la parte que nos interesa.

Ahora lo que hacemos será ir a la parte de address de 00401F7, que es donde tenemos el call y el eax que compara a 0.

Esta vez no haremos ningún cambio con Assemble. Lo que hacemos es colocar un breakpoint. De esta manera cuando ejecutemos el programa y vaya a comprobar el serial introducido podremos ver como funciona.

Ponemos un breakpoint.

Ejecutamos el programa

Fijaros en las referencias y demás, luego veréis por que :D

Ahora lo que haremos será ir paso a paso (instrucción por instrucción) para ver que hace, así que hacemos el primer paso.

Podemos ver mas strings que antes no habíamos visto, además vemos justo en el recuadro de abajo, que hay dos strings, el que hemos introducido nosotros y otro mas. ¿Que es ese string? L2C-57816784-ABEX

Pues se trata del serial que estábamos buscando, así que lo introducimos en el programa para comprobarlo

Ueee, ya tenemos el serial que estábamos buscando.

En otras ocasiones encontraremos cifrado el serial, claro

15 jul 2012

Informe Flu - 80

Comenzamos con el resumen de la semana:

Lunes 9 de Julio

  • El lunes publicamos la segunda parte de la cadena ¿SPAM dirigido? (Parte II), en la que os mostrábamos algunos de los últimos SPAM que estamos recibiendo.
Martes 10 de JulioMiércoles 11 de JulioJueves 12 de Julio

Viernes 13 de Julio

Sábado 14 de Julio

14 jul 2012

Pantalla Pública XIV

Buenas a todos, hoy arrancamos con el post 14 de nuestra cadena. Como habitualmente podéis enviarnos nuevas pantallas públicas a nuestro email info@flu-project.com

Fossie toma carrerilla, y repite en la cadena con varias Pantallas Públicas ;), os dejamos con el mensaje que nos ha enviado:

Hola otra vez, hace unos días te envié unas imágenes para la sección "Pantalla pública" donde se veía el cartelito de Ubuntu en una tienda de ropa. Pues bien, hoy hay 2x1 ya que hoy he vuelto a ver el mismo cartelito de Ubuntu en la tienda de ropa y, además, en la oficina de CajaMar que hay en frente se veía un panel de control de la pantalla donde se muestra la publicidad

¡Gracias Fossie!

Continuamos con nuestro amigo Lorenzo, de Security By Default, que nos envía el siguiente mensaje:

Hola chicos!Os envío un pantallazo de la sala VIP de la estación de Santa Justa en Sevilla.Observad aquello de error por nombre duplicado en la red... Así como el icono de VNC en la bandeja de sistema :) me pregunto si via wifi un nmap -sT - p 5900 a la red que toque nos dará la sorpresa de la máquina a "reparar" el error duplicado en la red :)Enjoy!

Saludos!