Vulnerabilities

Liberada peepdf v0.3

Después de mucho tiempo sin liberar una nueva release, ya está aquí la versión 0.3 de peepdf. No es que no se haya trabajado en el proyecto, sino que después de añadir la opción de actualizar la herramienta desde línea de comandos, la liberación de nuevas versiones ha quedado relegada a un segundo plano. Además, a partir de enero de 2014 Google eliminó la opción de añadir nuevas descargas de los proyectos alojados en Google Code, así que tenía que pensar en una alternativa. Desde ahora los nuevos archivos se alojarán en eternal-todo.com, en la sección de releases.

 

Las diferencias con la versión 0.2 son notables: se han añadido nuevos comandos y funcionalidades, se han actualizado librerías, se cambió el motor de ejecución de Javascript, se añadió detección para varias vulnerabilidades, y, por supuesto, se han corregidos muchos bugs. Esta es la lista de los cambios más importantes (changelog completo aquí):

 

PDF exploit (CVE-2013-2729) instala ZeuS-P2P/Gameover

Normalmente recibo SPAM con ejecutables y zips maliciosos. También los conocidos “documentos PDF” con doble extensión (.pdf.exe), pero hace unos días recibí un correo electrónico que tenía un PDF adjunto, sin extensión .exe oculta y no se trataba del típico anuncio de Viagra. Era bastante sospechoso. En ese momento no tenía mucho tiempo para analizarlo, así que lo dejé un poco de lado. Al día siguiente recibí otro con diferente asunto. El del primer correo era “Invoice 454889 April”, enviado por Sue Mockridge (motherlandjjw949 at gmail.com) y adjuntando “April invoice 819953.pdf” (eae0827f3801faa2a58b57850f8da9f5). El segundo tenía como asunto “Image has been sent jesparza”, enviado por Evernote Service (message at evernote.com, pero en las cabeceras se veía protectoratesl9 at gmail.com) y adjuntando “Agreemnet-81220097.pdf” (2a03ac24042fc35caa92c847638ca7c2).

Análisis de un exploit CVE-2013-3346/CVE-2013-5065 con peepdf

Aunque ya existen buenos análisis sobre estos exploits, me ha parecido un buen ejemplo para enseñar cómo funciona peepdf y lo que se puede aprender en el workshop “Squeezing Exploit Kits and PDF Exploits” que impartiré en Troopers14 y en el workshop "PDF Attack: A Journey from the Exploit Kit to the Shellcode" en Black Hat Asia 2014. El exploit que comento usaba una vulnerabilidad de tipo use-after-free del elemento ToolButton de Adobe Reader para ejecutar código en el sistema de la víctima. Posteriormente, realizaba una escalada de privilegios mediante un 0day del kernel de Windows para quitarse de encima la sandbox de Adobe y ejecutar un nuevo payload sin restricciones.  

Styx Exploit Kit instalando Simda

Ya echaba de menos esos correos de SPAM con regalo que me llegaban hace un tiempillo y que, de repente, ya no llegaban. Me estaba empezando a preocupar... ;)
 

Styx Spam email

 

Al visitar el enlace (hxxp://goozix.com/its.html) nos encontramos con una redirección a una página para comprar viagra y demás “medicinas”, pero que, además, contiene código Javascript malicioso:

 
 

Tras desofuscar el código vemos que se crea una cookie (“visited_uq=55”) y también un iframe que carga la URL hxxp://gylaqim.com/exit.php. Este dominio, creado el 21 de septiembre, resuelve a diferentes direcciones IPs, con un histórico de más de 400 IPs distintas. Así mismo, los seis servidores DNS autorizados registrados, ns*.gylaqim.com, también resuelven a diferentes direcciones IP cada vez que se intentan resolver.

Dependiendo del servidor que responda al visitar la URL  hxxp://gylaqim.com/exit.php nos puede redirigir a otra página como la inicial, con código Javascript malicioso y redirección a una página de viagra, o al exploit kit.

Las URLs inciales vistas hasta el momento son las siguientes:

 

hxxp://178.170.104.124/destruction.html
hxxp://178.170.104.124/seed.html
hxxp://actes-lyon.org/true.html
hxxp://aybabtu.ru/express.html
hxxp://brave.net.nz/ocean.html

El atentado del maratón de Boston, RedKit y un zoo de malware

Sólo unas horas después del atentado del maratón de Boston ya se veían las primeras campañas de spam usando este tema con el objetivo de infectar a los usuarios. Parece que los cibercriminales no respetan nada, aunque era de esperar, ¿verdad? :p
 
El pasado miércoles llegaron a mi bandeja de entrada cuatro emails sobre el incidente de Boston. Eran bastante sospechosos, ya que únicamente se incluía una URL en el cuerpo del mensaje, y, además, esta URL ni siquiera tenía dominio, sino que se veía directamente una IP. Me parece que alguien tenía prisa por aprovechar este boom mediático antes de que se dejara de hablar de ello...

 

 
Los asuntos de los correos eran los siguientes:
 

BREAKING - Boston Marathon Explosion 
Explosion at the Boston Marathon
Aftermath to explosion at Boston Marathon
Explosions at the Boston Marathon

 
Y éstas las URL que se encontraban en el cuerpo de los mensajes:
 

hxxp://94.28.49 .130/boston.html 
hxxp://78.90.133 .133/boston.html
hxxp://118.141.37 .122/news.html
hxxp://110.92.80 .47/news.html

 

Conferencia Troopers13 - Día 2

Comencé el día escuchando la ponencia “UI Redressing Attacks on Android Devices” de Marcus Niemietz sobre las posibilidades de engañar a los usuarios, con interfaces no visibles para ellos, que permitían realizar acciones no deseadas (tipo clickjacking). Para seguir con el tema móvil, Peter Kieserberg nos hablaba sobre códigos QR  y su uso como vector de ataque.

Después de comer fue el turno de Sergey Bratus y Travis Goodspeed que expusieron su visión sobre la seguridad de los puertos USB y cómo es posible llegar a comprometer un sistema a través de éstos. Sin duda un campo que merece atención y que puede explorarse gracias a toda la documentación que deja Travis en su blog.

 

 

Conferencia Troopers13 - Día 1

Hasta ahora no había tenido tiempo de escribir sobre mi primera Troopers, es lo que tiene cambiarse de país...El caso es que ya llevaba un tiempo queriendo asistir a esta conferencia, tenía muy buena pinta y además los comentarios sobre ella me animaban más. El año pasado tuve el placer de compartir mesa con Enno Rey, organizador de Troopers y CEO de ERNW, durante la celebración de BlackHat Europe, y ya vi que se trataba de un buen equipo con un trato muy cercano. Otros años no había podido acudir por una cosa o por otra, pero este año, viviendo a 4 horas en coche de Heidelberg, no había excusa posible.

Después de llegar a Heidelberg de madrugada debido al temporal de nieve (accidentes, carreteras cortadas y en mal estado, etc) pude descansar lo justo para estar la mañana siguiente preparado para las diferentes charlas del primer día. Eso sí, no llegué a tiempo de oír el keynote de Rodrigo Branco, pero me comentaron que estuvo bastante bien. La primera charla que vi fue la de Daniel Mende y Pascal Turbing sobre la seguridad de un modelo de cámara de fotos CANON, equipada con un adaptador wireless y demás funcionalidades. El resultado, entre otras cosas, es que se podían visualizar las imágenes realizadas, manejar el dispositivo de forma remota e interceptar las fotos al enviarlas a un servicio en la nube.

 

0-day en Java 1.7.x sin parche oficial: resumen de ideas y análisis

El pasado domingo se publicó una vulnerabilidad en el blog de FireEye  que afecta a la última versión de Java (1.7.x) y que se utilizó en un ataque dirigido, usando el RAT Poison Ivy como malware ejecutado, y con poca propagación del exploit. Eso fue hasta que se publicó el código fuente en pastie.org, como antesala de la publicación de un módulo de Metasploit. El código asignado para esta vulnerabilidad es CVE-2012-4681.

Crónica de Black Hat y DEF CON (Las Vegas, 2012)

Hace poco más de una semana se celebraron las dos míticas conferencias de seguridad en Las Vegas, Black Hat y DEF CON. Además, también a la vez tenía lugar la BSidesLV y algunos otros eventos para los que se necesitaba invitación, como el de IOActive. Tuve la suerte de estar por allá y vivir todo eso en primera persona, ya era hora ;) No voy a hacer un post detallado de todo esto, sino más bien un resumen rápido de todo lo que se vio por allá y las sensaciones del post-Vegas. 

La Black Hat comenzó el 21 de julio con una lista bastante larga de trainings que duraron hasta el 24. Posteriormente comenzaron las charlas, workshops y arsenal, donde más gente había, que transcurrieron durante el miércoles 25 y jueves 26. Según me comentaron este año hubo más gente que el anterior, unas 7500 personas.

Nuevo peepdf v0.2 (versión Black Hat Vegas)

Hace unos días tuve la oportunidad de presentar en las Vegas una nueva versión de peepdf, la 0.2. Ya habían pasado unos cuantos meses desde mi última release en Black Hat Amsterdam, así que ya tocaba volver a empaquetar. Podéis bajar la nueva versión desde aquí o ejecutar "peepdf -u" para actualizarla directamente desde el repositorio.

Además de los diferentes bugs corregidos, éstas son las principales novedades:

  • Soporte para AES en el proceso de descifrado: Hasta ahora peepdf soportaba RC4 como algoritmo de descifrado, pero AES estaba en el TODO debido a las diferentes muestras que usaban este algoritmo para ocultar contenido malicioso. Según me comentaron en Las Vegas parece que habrá próximas modificaciones en la especificación PDF en este aspecto, por lo que es posible que haya más cambios en un futuro cercano.

peepdf supports CCITTFaxDecode encoded streams

Stream filters, as I said some time ago, are a good way of obfuscating PDF files and hide Javascript code, for instance. Some weeks ago a post related to the use of the /CCITTFaxDecode filter was published by Sophos, although the Malware Tracker guys tracked a similar document created more than one year ago. Bad guys were using the /CCITTFaxDecode filter with some parameters to obfuscate the documents and try to bypass analysis tools and Antivirus. This filter was not supported by peepdf until the moment, so Binjo ported the Origami decoder to Python to include it (Thanks man!). Today I have uploaded the code and now peepdf also supports this filter :)

I've performed a quick analysis of the Sophos' document (6cc2a162e08836f7d50d461a9fc136fe) and it seems to work well:

 

 

We can identify two known vulnerabilities and it seems that object 30 contains Javascript code. If we take a look at the filters used in this stream we see that peepdf has been able to decode the /CCITTFaxDecode filter without problems:

 

New version of peepdf (v0.1 r92 - Black Hat Europe Arsenal 2012)

Last week I presented the last version of peepdf in the Black Hat Europe Arsenal. It was a really good experience that I hope I can continue doing in the future ;) Since the very first version, almost one year ago, I had not released any new version but I have been frequently updating the project SVN. Now you can download the new version with some interesting additions (and bugfixes), and take a look at the overview of the tool in the slides. I think it's important to mention that the version included in the Black Hat CD and the one in the Black Hat Arsenal webpage IS NOT the last version, this IS the last version. I've asked the Black Hat stuff to change the version on the site so I hope this can be fixed soon.
 

Sexo, Exploit Kits y Ransomware

Para gustos los colores. Cada uno tiene gustos diferentes y más si hablamos de artistas y actrices. A algunos les gusta Carlos Latre o Dani Martinez, a otros Lady Gaga o Camela y otros se decantan por Laura Lion o Nacho Vidal. No pasa nada con esto, a no ser que el hecho de visualizar algunos vídeos de estos profesionales pueda llevar a que tu equipo se infecte y no puedas volver a usarlo a no ser que pagues por ello. Esto es lo que le pasó a un conocido debido a su amor por la mencionada Laura Lion.
 
 

Dynamic analysis of a CVE-2011-2462 PDF exploit

After the exploit static analysis some things like the function of the shellcode were unclear, so a dynamic analysis could throw some light on it. When we open the exploit without the Javascript code used for heap spraying we obtain an access violation error in rt3d.dll. If we put a breakpoint in the same point when we launch the original exploit we can see this (better explanation of the vulnerability):

 

Instead of showing an access violation the CALL function is pointing to a valid address in icucnv36.dll, 0x4A8453C3. This address is not random and it's used in the Javascript code to perform part of the heap spraying:

 

 

 

Static analysis of a CVE-2011-2462 PDF exploit

CVE-2011-2462 was published more than one month ago. It's a memory corruption vulnerability related to U3D objects in Adobe Reader and it affected all the latest versions from Adobe (<=9.4.6 and <= 10.1.1). It was discovered while it was being actively exploited in the wild, as some analysis say. Adobe released a patch for it 10 days after its publication. I'm going to analyse a PDF file exploiting this vulnerability with peepdf to show some of the new commands and functions in action.

As usual, a first look at the information of the file:

info

I've highlighted the interesting information of the info command: one error while parsing the document, one object (15) containing Javascript code, one object (4) containing two ways of executing elements (/AcroForm, /OpenAction) and one U3D object (10), suspicious for its known vulnerabilities, apart of the latest one.

So we have several objects to explore, let's start from the /AcroForm element (object 4):

Distribuir contenido