viernes, 26 de agosto de 2011

ocultar extenciones de imagenes y URL


No es algo nuevo pero últimamente, el malware se está aprovechando de
esta característica especial de codificación que permite "engañar" alusuario para que crean que un archivo ejecutable no lo es, puesto queciertos programas lo muestran de forma diferente. Vamos a ver cómoconseguir esto exactamente.


El objetivo del malware es (de toda la vida) intentar que se lance unfichero ejecutable en el sistema. La distribución por correo de estosbinarios todavía goza de bastante éxito, así que los atacantes buscannuevas formas de hacer pensar a la víctima que en realidad está lanzando


un archivo inofensivo. Para conseguirlo, se están ayudando de un
carácter especial de la codificación Unicode. Esta codificación está
pensada para representar multitud de idiomas, incluidos los que se


muestran de derecha a izquierda (como el árabe o hebreo). Para ellos,
Unicode implementa una serie de códigos especiales llamados "Right to
Left" (RTL). A todo lo escrito a partir de ese código Unicode, se le


"dará la vuelta" cuando es representado, además de que el código en sí
es invisible.

¿Qué ocurre si aprovechamos esta funcionalidad para los nombres de
fichero? Pues que podemos hacer que un archivo "Presupuestoslx.cmd"
(con extensión real .cmd, o sea, ejecutable) le aparezca al usuario
como "Presupuestocmd.xls" en el explorador de Windows, en su cliente
de correo... en todos los programas que soporten esta codificación.
Veamos cómo y por qué.

En realidad, este nombre de archivo se ha "escrito" así:
Presupuesto[U+202E]slx.cmd

Insertando el carácter invisible y especial [U+202E] en el punto exacto,
pero Windows, lo mostrará (configurado para mostrar las extensiones...
si se ocultan ni siquiera serían necesarias estas técnicas para
disfrazar a los ejecutables): Presupuestodmc.xls

No a todos los programas lo muestran igual. Por ejemplo en la siguiente
imagen se observa que Total Commander lista el mismo fichero con su
extensión real.

http://blog.hispasec.com/laboratorio/images/noticias/unicode1.png
Y, lo que es peor, Windows lo tratará como indica su extensión original,
esto es, como un ejecutable "cmd", lo que significa que lo ejecutará si
se lanza. Otros ejemplos:

* Presupuesto[U+202E]cod.exe, Windows lo mostrará como
Presupuestoexe.doc
* Presupuesto[U+202E]txt.exe, Windows lo mostrará como
Presupuestoexe.txt

Si se modifica el icono del archivo (trivial), el engaño es total.

Cómo conseguirlo de forma práctica

Para construir el nombre, podemos ayudarnos de charmap.exe (el mapa de
caracteres) en Windows. Copiamos y pegamos el carácter 202E en Unicode
(que corresponde con el RTLO, Right to Left Override, aunque con otros
caracteres se puede hacer) en el punto adecuado del nombre de archivo
a la hora de renombrar, y se conseguirá el efecto.



Cuando se deja el puntero sobre el fichero, se observará que se
"sombrea" de forma diferente. Las flechas de dirección al recorrerlo
también estarán "cambiadas".

http://blog.hispasec.com/laboratorio/images/noticias/unicode3.png

No sólo en las extensiones

Siempre que el programa soporte este tipo de codificación y no restringa
el uso de RTL, es posible realizar algún tipo de engaño visual. Nuestro
compañero José Mesa ha creado este correo en el que se engaña al usuario
sobre el dominio de la dirección de correo a la que se responde. Por
ejemplo, se recibe un email de moc.cesapsih@gmail.com, y al "responder
a", el cliente lo hará a moc.liamg@hispasec.com. Para conseguirlo,
simplemente se han usado uno de estos caracteres especiales en el
fichero .eml para codificar la dirección. Hemos colgado el fichero aquí:

http://blog.hispasec.com/laboratorio/images/noticias/testUnicode.eml

Esta técnica es aplicable también a direcciones URL, por ejemplo.

En definitiva, nada nuevo. Esta funcionalidad se conoce desde hace
tiempo pero sí es cierto que ahora, y sobre todo en China, parece que
está siendo más aprovechado que nunca por los creadores de malware,
puesto que no todas las soluciones de seguridad la tienen en cuenta...
y por tanto resulta más "sencillo" eludir restricciones.





VISTO EN hispasec

No hay comentarios: