AMSIext, nuestra extensión que detecta malware en la memoria del navegador

Área de Innovación y Laboratorio de ElevenPaths    8 junio, 2020
AMSIext, nuestra extensión que detecta malware en la memoria del navegador

Anti-Malware Scan Interface (AMSI) busca solucionar un problema de toda la vida en la industria del antivirus: detectar lo que no “toca disco”. Se introdujo en Windows 10 y con ella se busca establecer un canal de comunicación nativo entre el sistema operativo y el antivirus sin necesidad de tocar disco, llamadas I/O, etc. Es decir, conectar la memoria con un sistema de detección de forma sencilla. Esto es ideal para las ofuscadísimas llamadas de scripts que evalúan y reconstruyen su carga maliciosa en memoria, pero en disco no son detectados. Por eso Microsoft ya conecta Powershell y Office con AMSI, para que la memoria de estos procesos se analice. ¿Pero qué hay de los navegadores? Esta extensión lo soluciona.

La evolución del malware

Al principio fue el virus: fragmentos de código en ensamblador que se concatenaban a los archivos modificando su entry point. Después, esta técnica se retorció y mejoró hasta sus límites, se buscó la ejecución automática, la reproducción, la independencia de un “huésped” (el malware ya es standalone desde hace tiempo) y el pasar desapercibido por el radar de los antivirus.

“Tocar disco” parece la premisa para infectar pero también una condena, porque es cuando empiezan a analizar los antivirus. Si el malware conseguía evitar este peaje, se podía llegar a huir de los detectores. Esta técnica se denominó fileless y buscaba una fórmula etérea en la que subsistir en memoria todo lo posible, evitando tocar disco o retrasándolo al máximo, no aterrizando en el disco, lo cual está controlado férreamente por el antivirus. Fileless se ha perfeccionado hasta tal punto que ya existe una fórmula nativa en Windows para mitigarla en lo posible. AMSI es un sistema que facilita conectar cualquier flujo de información en memoria con el antivirus.

Cómo funciona AMSIext

Nuestra extensión conecta el navegador con AMSI, le transmite al sistema AMSI (en estático) todos los potenciales scripts que pasan por el navegador antes de que lleguen a disco y los analiza para detener la navegación si es necesario. Funciona de dos formas:

  • Si detecta páginas o ficheros con las extensiones “js”, “ps1”, “vbs”, “hta”, “vb”, “vbe”, “bat”, “cmd”, “jse”, “wsf”, “ws”, “msh”, “msh1”, “msh2”, “mshxml”, “msh1xml” y “msh2xml” en el navegador, o incluso una sola página que apunte a ellas, bloqueará la web. Esto impide que sea necesario que el script toque disco para ser detectado por el antivirus tradicional.
  • Añade una opción en el botón derecho para enviar rápidamente cualquier script a ASMI.

Una vez lo enviamos a AMSI, es Windows Defender habitualmente (aunque se le pueden asociar otros antivirus) el que se encargará de evaluar la maliciosidad del script. La extensión no evalúa por sí misma, solo sirve de interfaz entre el navegador y AMSI, que a su vez lo envía a Windows Defender.

En resumen, se trata de una fórmula muy sencilla de protegerse ante scripts maliciosos mucho antes de lo habitual. El sistema, por si se equivoca Windows Defender, dispone de la posibilidad de crear una lista blanca de dominios.

Este vídeo aclara su funcionamiento:

AMSIext está disponible para Chrome y Firefox y está en beta (con muchas mejoras potenciales, entre ellas el logo) y la iremos actualizando en el futuro.

Esperamos que os sea útil.

Comentarios

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *