Artículo · Administración de Servidores

Evadiendo AntiVirus

user-1609041409user-1609041409 4 min de lectura

¿Qué es un Antivirus?

Primero vamos a entender que es un Antivirus, en términos simples es un programa de computadora para prevenir, detectar y remover malware. Su funcionamiento ha crecido y aumentado en eficacia durante el paso del tiempo, pero vamos a entender, como detecta un antivirus, a un virus?.

 

Firmas

Una de las formas sencillas de detectar un virus al tocar el Disco de una computadora es mediante algo llamado Hash pero en el término del antivirus son "Signatures" oh firmas en su traducción del Inglés. Pero como funcionan estas firmas?. Fácil al crear un Archivo, Folder o Programa un hash es generado para identificar estos artículos. Veamos un Ejemplo:

 

Ok en la imagen anterior podemos ver la "Firma" (Hash) del archivo llamado Documento.txt ahora los antivirus contienen una base de datos con millones de firmas de varios virus, malware, spyware en existencia, todo gracias a VirusTotal donde también puedes compartir Virus, pero cuidado las firmas son compartidas cuando usas estos servicios con todas las empresas de antivirus en su lista y en una de esas está el Microsoft Defender por supuesto. Bueno continuemos con el Antivirus, cuando un archivo toca el Disco de la computadora su "Firma" es comparada con su base de datos, y si este encuentra algo es detectado, suspendido y eliminado. Y como podemos evadir esta técnica?, simple cambiemos la firma del archivo aquí tenemos entendido que la firma de este archivo "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855" es detectado por Defender, entonces vamos a cambiarlo, cómo??, eliminemos o agreguemos datos al archivo para poder evadirlo.

 

¿Qué sucedió aquí?. Solo agregue el texto de "Hola Mundo" y el Hash del archivo ha cambiado, ahora este es un simple ejemplo pero efectivo cuando queriendo evadir defensas mediante la técnica de Firmas usadas por el Antivirus.

 

Texto

Esta técnica es una subparte de Firmas pero muy importante de entender, simplemente cambiar el texto de un archivo para cambiar la firma no es suficiente a veces, porque existe una "mala palabra" en el archivo el cual el virus detecta como malicioso :(. Entonces aquí demostrare una técnica simple para evadir este escaneo, veamos un ejemplo:

 

En la imagen anterior vemos una Advertencia que un virus ha sido detectado..... ¿Virus? No, nada de eso es simplemente una palabra "amsiscanbuffer" es una técnica muy vista para evadir el AMSI de Defender (Tema para otro día). Entonces que podemos hacer en esta situación, bueno podemos, encryptar, obfuscar o crear un virus totalmente nuevo!!. Bueno no vayamos tan lejos, ay una utilidad en programación llamada "Concatination" donde podemos juntar 2 palabras para formar 1. En este Demo usaremos PowerShell por su facilidad de concatenar en en Terminal, veamos el ejemplo:

 

¿Qué sucedió aquí?, el texto ha sido pasado satisfactoriamente en PowerShell y el Antivirus no detecto nada. Esta utilidad agarro el texto y con la técnica de concatenar los junto y formo solo 1 palabra en tiempo real. Esto significa que podemos usar estas palabras sin riesgo alguno, porque el antivirus no ve "amsiscanbuffer" si no que ve "amsi+scan+buffer". Y con esto podemos evadir de forma simple el antivirus.


Ok ahora con estas simples técnicas (el cual ay varias) pongamos nuestro dinero donde esta nuestra boca y hagamos un ejemplo de un Virus completamente ofuscado y pasando Defender actualizado.

 

En este demo usare el común "Reverse Shell" de Nishang. Aquí pueden encontrar el Shell. Ahora usaremos este ataque en su modo común y trataremos de recibir una conexión a nuestra máquina de ataque y ver si funciona así fuera de la caja.

AV activado:

 

Actualizado:

 

Oops mala suerte no funcionó en tiempo real nuestro archivo fue detectado y detenido en PowerShell:

 

Ahora cambiemos todas las mala palabras del Archivo:

 

Vemos aquí tu típico archivo con variables, comentarios y funciones en inglés. Pero ¿qué pasa si lo cambiamos, no se digamos a Spanish???.

 

Ahora intentemos este nuevo archivo para recibir una conexión.

 

Podemos ver en la imagen anterior que ahora no recibimos una advertencia, y ¿qué tal nuestra conexión??.

 

Muy bien, evadimos el antivirus y logramos recibir una conexión a nuestro máquina de ataque, estos métodos han sido los más simple en mi demonstración, ay varios métodos de detección, al igual que métodos para evadir como dije previamente es un simple juego del Gato y el Ratón, siempre persiguiéndose nunca llegando a un fin, porque las técnicas y detecciones siempre están cambiando. Estas técnicas se pueden aplicar a varios archivos, JPEG, MP4, EXE, PS1, etc. Vamos ve afuera y practica estas técnicas y fíjate cómo funcionan Defender no detecta este archivo, pero que tal BitDefender, ESET, Norton??.

 

Referencias:

https://dmcxblue.net/2018/12/18/av-evasion/

 

¿Quieres aprender estas técnicas en profundidad?

Continúa tu ruta con Penetration Testing Professional.

user-1609041409

Escrito por

user-1609041409

Practico Red-Team y soy el author de https://dmcxblue.net y https://dmcxblue.gitbook.io/red-team-notes/. He seguido este grupo por anios desde el inicio de BackTrack y ahora con mas experiencia me gustaria ayudar a los que tienen dificil encontrar recursos, desafortunadamenete un requisito es ingles por que es el idioma universal en las herramientas y programacion. Gusto conocerlos