Skip to content

Glosario

AMSI (Antimalware Scan Interface)

Interfaz de Windows que permite al antivirus analizar scripts en ejecución, incluido PowerShell; los atacantes intentan desactivarla en el proceso.

La Antimalware Scan Interface (AMSI) es una interfaz de Windows que permite a Windows Defender y a otros productos antivirus analizar el contenido de los scripts mientras se ejecutan, y no solo los archivos en el disco. PowerShell 5 en Windows 10 envía los bloques de script a AMSI antes de ejecutarlos, de modo que el código codificado en Base64, comprimido o ensamblado a partir de fragmentos se analiza en su forma final y legible. Esto neutraliza la mayor parte de la ofuscación sencilla.

Por qué importa en una investigación

Como AMSI se carga en el mismo proceso que el script (a través de amsi.dll), el script puede intentar desactivarla para sí mismo. Las técnicas más conocidas establecen el campo privado amsiInitFailed para que la sesión crea que AMSI no pudo iniciarse y omita el análisis, o parchean AmsiScanBuffer en memoria para que todos los análisis devuelvan un resultado limpio. Una evasión de AMSI rara vez es un fin en sí misma: es el paso inmediatamente anterior a una carga útil que el atacante espera que el antivirus detecte.

Un texto que hace referencia a AmsiUtils, amsiInitFailed, AmsiScanBuffer, AmsiOpenSession o amsi.dll es un indicio sólido, y la propia línea de evasión suele quedar registrada, porque tiene que compilarse como cualquier otro bloque de script antes de surtir efecto.

Ejemplo

Una evasión clásica de una sola línea, tal como podría aparecer en un evento 4104 o en un archivo de historial:

[Ref].Assembly.GetType('System.Management.Automation.AmsiUtils').GetField('amsiInitFailed','NonPublic,Static').SetValue($null,$true)

Los atacantes suelen ocultar estos nombres mediante concatenación, códigos [char] o Base64, por lo que el parser busca en cada capa de desofuscación que es capaz de decodificar, no solo en el texto sin procesar, y genera un hallazgo de evasión de AMSI de gravedad alta allí donde aparece uno de esos nombres.

Términos relacionados

Compruebe si su propia evidencia contiene manipulaciones de AMSI en el PowerShell Parser y consulte cómo decodificar comandos codificados y la ofuscación para ver cómo se deshacen las capas.