No es un secreto que el malware contra entidades latinoamericanas se
fundamente en el "pharming". O sea, la modificación de la resolución de
dominios a través del archivo hosts del sistema. Con sus distintas
variantes, los atacantes se han centrado principalmente en esta técnica
en los últimos años. Sin embargo hace poco, hemos observado una pequeña
progresión que nos ha parecido curiosa.
Los brasileños
Los atacantes brasileños suelen utilizar técnicas muydiferentes a los rusos o los latinoamericanos. Ellos prefieren programar enDelphi,
y crear ventanas de programa que son como réplicas de una parte o de
toda la página del banco objetivo. Se superponen en la web original
cuando se visitan, y la víctima introduce en esos formularios susdatos.
A este tipo de malware los llamamos "delephant", porque además de estar
programados en Delphi, también suelen "pesar" mucho (varios megas) al
contener imágenes en bruto de varios bancos.
O también pueden llegar a crear una pantalla que simule ser por completo el navegador.
Los brasileños no se caracterizan precisamente por su calidad al programar, ni por su innovación. Y este caso que vamos a estudiar será un buen ejemplo.
Los rusos
Además de más sofisticados,
una de las características de la escuela de malware rusa es que
consiguen posicionarse en el sistema de forma que recogen el tráfico,
aunque esté cifrado. Contra esto, los bancos se apresuraron a ofuscar el
tráfico con javascript. Antes de enviarlo al servidor,
lo codifican profusamente. Así, aunque lo interceptasen (con un
man-in-the-browser en forma de BHO, por ejemplo) seguirían encontrándose
con la dificultad del ofuscado.
Si los programadores del malware lo tuviesen en cuenta, podrían indicarle al BHO
que obviasen las rutinas de ofuscado específicas... pero veremos qué
han preferido hacer los brasileños ante la "dificultad" de programar un
BHO.
Las "nuevas" técnicas
Lo que nos hemos
encontrado es un método que mezcla estas dos familias e implementa una
curiosa técnica para eludirlas. Lo que el troyano hace es:
- Infecta la máquina, y se queda a la espera de la monitorización de ciertas páginas.
- Cuando detecta que se está en las páginas que necesita,inyecta un javascript propio en la página, que se encarga de copiar al portapapeles los datos robados.
- javascript, por definición, no puede escribir en disco, por tanto (y aquí lo curioso), lo que hace el troyano es copiar el contenido que le interesa en el clipboard y, por otro lado, el troyano monitoriza el portapapeles. Si contiene los datos que le interesan, es él el que los graba en disco.
Curiosísima forma de eludir la restricción de javascript de escribir en disco, a través del portapapeles.
Más datos sobre el troyano
Por lo demás, como suelen hacer los especímenes brasileños, envía por correo los datos robados.
También captura los teclados virtuales en pequeñas "fotografías" cuando
el usuario pulsa sobre los números. Si el banco ofusca estos números
con un "*" cuando son pulsados, el troyano carga una rutina javascript
que evita que esto ocurra, y así puede grabar enimágenes las teclas virtuales pulsadas.
Muestras de los resultados
El
troyano ataca a diferentes entidades, principalmente sudamericanas.
Estos son un par de ejemplos de archivos HTML que el troyano envía a los
atacantes. Por ejemplo para el Banco Guayana.
Y para el Banco Caroní.
Curioso
porque pega todas las imágenes y las letras de la contraseña dos veces.
Esto es simplemente uno (de tantos) errores de programación.
Como curiosidad final, durante el análisis
del troyano (pero independientemente de este) he advertido un error de
concepto en la seguridad del Banco Guayana. Normalmente, los bancos se
protegen de los troyanos que realizan capturas de pantalla sustituyendo
los números o teclas por asteriscos cuando son pulsados (momento en que
un hipotético troyano haría la "foto"). Por el contrario, cuando se
separa el puntero, los números deben ser mostrados en claro, para que el
usuario pueda identificarlos. Este es el comportamiento "normal":
Pero
en el caso de Guayana, sus administradores lo han implementado al
revés... en concreto tiene un error de concepto en su teclado virtual
que hace que sus medidas de seguridad no sean útiles, puesto que, oculta
los números cuando no se están pulsando... y los muestra cuando se van a
elegir. Lo que facilita la vida a los troyanos de este tipo.
FUENTE: http://foro.elhacker.net











0 comentarios:
Publicar un comentario