Aunque no deja de ser una etiqueta de moda sin una definición clara, el concepto de la Web 2.0 hace referencia a una segunda generación de aplicaciones web dinámicas e interactivas donde el usuario tiene un mayor protagonismo y participación, frente a las webs estáticas tradicionales donde el usuario era un receptor pasivo. ¿Existe también un nueva generación de malware 2.0?
Tengo que confesar que creía que iba a ser original hablando del concepto Malware 2.0, pero una búsqueda en Google me ha sacado de mi error. Hace menos de un mes la empresa de seguridad PC Tools utilizó el término en una nota de prensa donde hablaba de una nueva generación de malware: http://www.pctools.com/news/view/id/181/
PC Tools hace referencia a características que llevamos comentando tiempo atrás en Hispasec:
* La proliferación de nuevas variantes de malware ha crecido de forma brutal.
* Se utilizan técnicas automáticas para ofuscar las variantes y dificultar la identificación por firmas.
* La estrategia actual pasa por utilizar muchas variantes en vez de un único espécimen para llamar menos la atención y dificultar una respuesta rápida por parte de la comunidad antivirus (de ahí que llevemos bastante tiempo sin ver un gusano de propagación masiva como el ILoveYou y compañía).
A continuación, como era de esperar, utiliza este argumento para vender su producto antispyware, que utiliza técnicas adicionales para no depender en exclusiva de las firmas de detección.
Aunque esas características son una realidad evidente desde hace bastante tiempo, mi idea del concepto de Malware 2.0 tiene más analogía con la Web 2.0: el uso de la web como plataforma para la distribución, personalización del malware, y uso inteligente de los datos obtenidos por parte de los usuarios para propocionar "nuevos contenidos".
Para desarrollar la idea voy a utilizar un ejemplo de ataque real, de los muchos que están sucediendo a día de hoy, destinado a los usuarios de banca electrónica:
* Los atacantes diseñan un servidor web que hospeda el código malicioso.
* Para atraer a potenciales víctimas anuncian su URL a través de spam, en foros, comentarios en blogs, etc. con cualquier excusa (bien una noticia de actualidad, curiosidades, imágenes eróticas o cualquier otro contenido potencialmente atractivo que lleven a los usuarios a visitar el servidor web de los atacantes).
* Cuando un usuario accede al sitio de los atacantes, la web comprueba la versión del navegador del visitante y, si es vulnerable, devuelve un exploit específico para su versión del navegador que provoque la descarga automática y ejecución del troyano.
* Si el usuario tiene un navegador actualizado, utiliza la ingeniería social para que el usuario descargue y ejecute por si mismo el troyano (por ejemplo, mediante un ActiveX, decirle que es un vídeo, o una utilidad que requiere con cualquier excusa).
* Este primer troyano que se descarga es un "downloader", que lo que hace es instalarse en el sistema y descargar e instalar la última versión del troyano bancario, así como sucesivas actualizaciones que pudieran aparecer en el futuro.
* El troyano "downloader" también puede personalizar la versión del troyano bancario que descarga en función del sistema. Por ejemplo, si el usuario tiene una versión de Windows en español, el "downloader" instalará en el sistema un troyano bancario diseñado específicamente para entidades españolas.
* El troyano bancario puede estar destinado a unas entidades específicas o ser más genérico. En el caso de que tenga unas entidades predefinidas, si el usuario accede a las webs de banca electrónica reconocidas por el troyano, envía los usuarios y contraseñas de acceso del usuario al servidor web para que los atacantes puedan suplantar su identidad y realizar transferencias a otras cuentas.
* En el caso de un troyano bancario más genérico e inteligente, envía a un script del servidor web de los atacantes todas las URLs por las que el usuario navegue y que comiencen por https. En el servidor web tienen un listado de URLs de bancos, si alguna de las URLs que envía el troyano corresponde con el listado, entonces el servidor web devuelve al troyano una orden concreta: redirigir al usuario a un sitio de phishing de esa entidad, modificar en local la página web de la entidad para que pida la clave de operaciones, etc.
* La información de las URLs de páginas seguras (https) por la que los usuarios navegan, y que envían al servidor web, sirve a los atacantes para diseñar nuevos ataques y actualizaciones de su troyano bancario. Por ejemplo, imaginemos que en un principio los atacantes contemplaban a Banesto, pero no al BBVA. Los usuarios que visitaban la web de Banesto eran afectados, mientras que los del BBVA no porque el servidor web no devolvía ninguna orden concreta al no tener un ataque específico preparado. Los atacantes estudian periódicamente las estadísticas de las URLs que se centralizan en su servidor, y comprueban que hay muchos usuarios infectados que visitan la web del BBVA. Entonces deciden crear una nueva versión del troyano bancario específico o una página de phishing a la que redirigir a los usuarios infectados que la próxima vez visiten la web del BBVA.
Este último punto tiene cierta analogía con servicios web 2.0 como digg.com o meneame.net, si muchos usuarios visitan una página de un banco se contabiliza en el servidor de los atacantes como votos positivos y termina por aparecer en portada (en este caso en la lista negra de entidades para las que desarrollan un ataque concreto).
Fuente: http://www.hispasec.com