En su momento fueron los disquetes que un usuario podía prestar a un amigo, luego fueron los macros en documentos de ofimática, luego el correo electrónico y actualmente cualquier medio de comunicación electrónico. Hoy, los sitios web se han convertido en uno de los principales blancos para los atacantes y uno de los principales riesgos para los usuarios.
Aún así, sigue pareciendo extraño que con el solo hecho de ingresar a una página, el sistema pueda verse afectado y totalmente comprometido. Sin embargo, esto técnicamente no es complejo si se comprende que cualquier sistema o aplicación actual puede tener vulnerabilidades que pueden ser aprovechadas por usuarios malintencionados [1].
Sin el ingrediente anterior de las vulnerabilidades y la falta de actualización por parte de empresas y usuarios, la explotación de ellas por parte de scripts dañinos sería poco aplicable. Bajo estas circunstancias, actualizar toda aplicación es fundamental pero aún no ha llegado a ser incorporado como medida obligada, cosa que los creadores de malware ya han comprendido hace tiempo, utilizando esta falta para su favor.
En forma general, un script es un conjunto de instrucciones en algún lenguaje de programación como Javacript, VBScript, Perl, etc., fácilmente comprensible que, generalmente, no necesita ser compilado y que es utilizado para realizar pequeñas acciones en el sistema en el que se aloja.
En el ámbito web, cualquier navegador tradicional posee la capacidad de “entender” estos scripts y ejecutarlos en el sistema del usuario. Estas pequeñas aplicaciones actualmente son utilizadas para permitir la interacción del sitio web con el navegador y por ende, con el usuario que navega por ese sitio web (menús, calendarios, uso de listas desplegables, desplazamiento de textos, aplicación de formatos, descarga de archivos, etc).
Por supuesto estos scripts pueden utilizarse en cualquier contexto y pueden realizar cualquier acción sobre el sistema anfitrión, sin importar el sistema operativo, y con los privilegios y permisos que el usuario actual posea sobre dicho sistema. Si se observa con atención, esta es una ventaja sobre el malware de aplicaciones tradicional ya que este debía estar compilado para ejecutarse en un sistema operativo en particular.
Como los scripts se ejecutan sobre el navegador (u otra aplicación cliente relacionada) y son “comprendidos” por esa aplicación, el sistema operativo deja de importar y el script dañino puede ejecutarse en cualquier plataforma.
En esta primera etapa de la evolución del malware hacia plataformas web, se puede ver gran cantidad de malware que aprovecha las ventajas mencionadas -las vulnerabilidades y la capacidad de ejecución en el cliente- para descargar otros malware que actualmente suelen ser aplicaciones ejecutables para el sistema operativo que posee el usuario. En un diagrama puede verse que el usuario prácticamente no actúa, con excepción del ingreso al sitio afectado:

En la práctica este diagrama funciona del siguiente modo:
-Un atacante encuentra vulnerabilidades en un sitio o servidor web
-Modifica los sitios alojados en el servidor agregando una línea de código a cada página web. Esta línea de código es el script que permite la descarga de otros scripts (generalmente alojados en otros servidores). Esta línea de código suele ser algo como lo siguiente:

-Si bien el proceso anterior puede parecer complejo, existen herramientas que realizan el trabajo en forma automática y cualquier persona con ganas de delinquir y hacer dinero fácil puede hacerlo. Por supuesto que si los sitios modificados son masivos, las ganancias serán aun mayores
-El usuario ingresa a un sitio de su confianza o a través de un buscador [2] desconociendo que el mismo fue modificado
-El script anterior descarga otro script dañino, programado para aprovechar vulnerabilidades del sistema operativo instalado o de las aplicaciones utilizadas por el usuario

-Estas vulnerabilidades le permite ejecutar código, descargar un archivo ejecutable y abrirlo
-Este proceso es totalmente transparente para el usuario, transcurre mientras la página web es visualizada y el usuario se encuentra infectado con sólo haber ingresado al sitio web
Esta situación es común hoy en día y lo aún más grave es que las infecciones suelen ser masivas ya que con modificar un solo sitio web, el atacante tiene acceso a los cientos, miles o millones de visitantes que tenga dicho sitio.
Algunas aplicaciones actuales comenzaron a tener su versión en la web y también está aumentando el uso de programas clientes en reemplazo de las tradicionales aplicaciones de escritorio (por ejemplo, Google Docs Vs. aplicaciones de ofimática). Bajo esta perspectiva, es altamente probable que el tipo de infección mediante scripts, se sigan perfeccionando, debido a que el potencial de afectar plataformas clientes es inmenso así como la cantidad de posibles usuarios afectados.
[1] El código malicioso y las vulnerabilidades
El código malicioso y las vulnerabilidades
[2] Ataque masivo a miles de sitios web
http://blogs.eset-la.com/laboratorio...vo-sitios-web/
Copyright © ESET, LLC. Este artículo se encuentra bajo licencia Creative Commons de Atribución, No Comercial y Compartir Obras Derivadas Igual. (by-nc-sa).