Sitios web vulnerados tratan de ejecutar código malicioso a través de scripts ofuscados

 

Recientemente se nos informó de dos sitios considerados maliciosos, los cuales estaban alojados en México. Descargamos dichos sitios, y visualizamos el código fuente desde un editor de texto plano (para no ejecutar algún script malicioso) constatando que; en ambos casos los portales habían sido vulnerados, inyectando código malicioso. 
 
Solamente en el primer caso, Google Safe Browsing lo detectaba como inseguro; en el segundo caso, el sitio abría sin ninguna restricción. 
 
 
Analizando el código fuente del primer sitio, contenía un código en JavaScript ofuscado.
 
 
El segundo en cambio, contenía código VBScript ofuscado.
 
 
Analizando el código en JavaScript
 
Comenzamos con el análisis del primer sitio, en el que se realizó una inyección de código JavaScript. Utilizamos la herramienta jsbeautifier, que ayuda a ordenar el código HTML y cualquier script para web de una manera más legible. 
 
En este punto, el código se encontraba mucho más entendible, pero aún no se visualizaba direccionamiento hacia algún sitio malicioso, pues el autor escribió su propio algoritmo de desofuscamiento en la función hDcd. Dicha función necesita como parámetro la cadena ofuscada. 
Creamos la variable des para mostrar el valor en un alert; y al cargar el código, se verificó cuál era el contenido.
 
Al ejecutar nuevamente la página en el equipo del laboratorio, fue posible observar el direccionamiento al sitio malicioso entre las etiquetas div
 
 
Se trataba precisamente del sitio malicioso que Google Safe Browsing indicaba desde un principio. 
 
El sitio http://zrywfrpeo.xxxxx.net/i/i.php?go=1 ya no se encontraba activo cuando realizamos el análisis; sin embargo, haciendo uso de herramientas como malwareurl, la cual posee una base de datos de los sitios web maliciosos, se identificó que este sitio contenía un direccionamiento hacia un Exploit kit, cuyo registro databa del 5 de enero del presente año.
 
 
Analizando el código en VBScript
 
El segundo sitio presentaba  un código en VBScript, tuvimos que desofuscarlo con otra técnica. 
 
Del código HTML, tomamos únicamente el script ofuscado, eliminando todos los tags. El script original contiene en su última línea la sentencia Execute(myDecString), en la que, seguramente,se encuentra el código desofuscado que estamos buscando. Esa línea la sustituimos por wscript.echo(myDecString).
 
 
El nuevo archivo lo renombramos como script.vbs y, mediante una consola de DOS, ejecutamos el comando cscript script.vbs, el cual mostró el código desofuscado. A continuación se muestra sólo la primera parte, en las últimas líneas podemos ver variables como myExpMain(0), myExpMain(1) y myExpMain(2) que tienen como valor llaves de registro de Windows, y en la última línea se encuentra la variable myStartPage, la cual tiene como valor un sitio en geocities.
 
 
 
El sitio de geocities, a pesar de encontrarse activo, no contenía nada malicioso. 
 
Cargamos la página web en el equipo del laboratorio; sin embargo, lo único que observamos fue la ejecución de la máquina virtual de Java.
 
 
No se creó carpeta alguna, ni tampoco algún proceso o tráfico malicioso.
 
A pesar de que los sitios originales aún se encuentran en línea, con el código malicioso inyectado, los visitantes ya no están en peligro de ejecutar código malicioso remoto, pues los sitios que lo alojaban ya están desactivados; sin embargo, es muy importante tener cuidado al visitar sitios en internet pues muchos de ellos contienen códigos como los mostrados en esta publicación que podrían ejecutar código remoto e infectar el equipo con esto, cualquier atacante podría tener acceso a información confidencial en la maquina como credenciales de cuentas bancarias en línea, contraseñas de cuentas de correo electrónico o simplemente ser parte de una botnet.