Keylogger en Javascript

Javascript es un lenguaje de programación interpretado, dialecto del estándar ECMAScript.

Se utiliza comunmente en la programación web como lenguaje client-side para añadir mejoras en la interfaz de usuario, interactividad del usuario con la página, e incluso, para generar páginas web dinámicas. No obstante, tambien puede ser usado para distribuir malware y otro tipo de amenazas, para muestra, basta con realizar una búsqueda en Google con términos como: Javascript Monero minerJavascript Ransomware, Javascript Virus y similares.

En este tutorial voy a presentar como hacer un Keylogger ultra sencillo, pero antes de comenzar vamos a definir qué es un keylogger:

Keylogger

Programa generalmente oculto al usuario, que se encarga de registrar todas las pulsaciones de teclas. Puede ser usado por criminales para obtener números de tarjetas de crédito, usuarios, contraseñas y otra información sensible.

Keyloggers famosos:

  • Teclassss.exe
  • IKS Keylogger Sealth

Existe otro programa similar a un keylogger, me refiero al clicklogger. Este es un programa que se encarga de registrar capturas de pantalla cada vez que el usuario hace clic. Estos programas suelen poner la ubicación del mouse en la captura y si el clic fue con el botón izquierdo o derecho.

Caracteristicas del mini Keylogger-JS

Dada la naturaleza de la forma en que funcionará, tendremos algunas limitaciones:

  • Se ejecutará en los navegadores. No podremos capturar las teclas pulsadas fuera de la página que está visualizando el user.
  • Estará escrito en JS, así que requiere JS activado en el navegador.
  • Para que comience a funcionar tendremos que hacer que el usuario lo instale, para esto hay diferentes métodos que veremos más adelante.

Sigue leyendo

Código malintencionado dentro de una imagen GIF

Como sabemos, las imágenes GIF son utilizadas dentro del diseño web para varios propósitos; spacers, pequeñas animaciones y emoticons son los más usados.

Lo que muchos desconocen es que es posible añadir código dentro de la imagen, el cual se ejecutará cuando el visitante intente ver la supuesta imagen en una pestaña nueva del navegador. Este comportamiento supone un hueco en la seguridad de prácticamente todos los navegadores, y un atacante puede usarlo a su favor.

El presente artículo presenta desde un punto de vista educativo cómo reproducir dicho fallo. Esto es lo que necesitamos:

  • Una imagen GIF estática (no animaciones)
  • Un editor de texto que permita editar archivos en modo binario (edit.com de Windows XP por ejemplo).
  • Hosting con PHP

El truco consiste en el mal tratamiento (?) que los navegadores dan al atributo src dentro de la etiqueta <img>, ya que al recibir texto sin sentido intentan renderizarlo como imagen, y en el caso de los GIF (por alguna razón) después de encontrar la marca de fin de archivo ignoran el resto (que en este caso es nuestro código malintencionado) -1-. Esto significa que nuestra imagen con código añadido es inofensiva cuando se muestra dentro de una página Web, no así cuando se muestra sola.

*

Interpretando texto como imagen

En la imagen de arriba se observa una página con tres imágenes. De arriba hacia abajo tenemos: face.gif (imagen original), face2.gif (imagen original  con código añadido) y face2.php (imagen original con código añadido y extensión PHP). Observa como el navegador muestra la última imagen aún cuando la extensión de la misma es PHP, esto es por el comportamiento descrito arriba.

Sigue leyendo