2.17.2021

Bypass Antivirus con Chimera (Reverse Shell Powershell)

En esta entrada veremos el uso de un script en Bash conocido como Chimera el cual esta pensado para realizar el bypass de antivirus y AMSI, sobre ficheros de Powershell realizando el ofuscamiento del fichero, para evitar la detección. 


Llegue a Chimera por que necesitaba saltar la detección del antivirus, como se ve en la siguiente captura en este caso Windows Defender identifico el comando como contenido malicioso. 



La anterior semana vimos el uso de Pyfuscation, el cual realiza el cambio de nombre de las variables para saltar la detección del antivirus, al no contar con funciones en este caso especifico no llego a servir. 

El código del onliner que intente ejecutar fue el siguiente, como se ve en la captura realiza una conexión por el puerto 3711 para tener una shell interactiva en el equipo atacante. 


Si gustan ver mas opciones de reverse Shell pueden ver el blog de labofpenetrationtester por mencionar un contenido especifico que menciona sobre las shells reversas bajo Powershell. 

Instalación de Chimera

Al ser un script  realizado en Bash no requerimos cumplir con ninguna dependecia solo  bajarlo de GITHUB, y dar los permisos de ejecución respectivos para ejecutarlo
 Snifer@L4bs:$ git clone https://github.com/tokyoneon/Chimera.git
Si ejecutamos el script sin ningun parámetro obtendremos la ayuda  para utilizarlo respectivamente. 
 Snifer@L4bs:$ ./chimera.sh 

Procedemos a ejecutar  la herramienta y en este caso a generar el nuevo fichero reversebypass.ps1


Al realizar el proceso por Chimera cambia el nombre de las variables y realiza el proceso de sustitución de caracteres.  


Después de realizar la ofuscación ejecutamos el script.  


Y en el equipo del atacante solo debemos de esperar la Shell y como ven no salta el antivirus  y se tiene interacción con el equipo comprometido. 


Debido a que preguntar si funciona la shell reversa directamente en windows 10 aquí esta la captura de pantalla respectiva.




“Siempre estoy haciendo lo que no puedo hacer para poder aprender cómo hacerlo”. - Pablo Picasso.

Regards, 
Snifer
Compartir:

2.08.2021

Bypassing (Windows Defender) con Pyfuscation

En esta entrada veremos como es posible saltar la protección de un antivirus cuando este detecta algun nombre de función como maliciosa en scripts de Powershell, nuestro objetivo de esta entrada específicamente es Windows Defender. 



Al utilizar Powerview este fin de semana me tope con que el amigo incondicional Windows Defender detectaba como malicioso por el nombre de las funciones que este lleva evitando que copie el script al escritorio. 


Como se ve en las capturas de pantalla, no tenemos privilegios para darle como una excepción a la ubicación del script. Por todo ello  primero veremos que es Powerview una breve introducción. 

Que es Powerview

Es un script utilizado para realizar enumeración en un Dominio de Windows, esto con el fin de realizar tareas automatizadas y obtener información del mismo, esta realizado en powershell y desarrollado por Will Schroeder. 

Tras estar revisando y probando note que la versión dev no es detectada como maliciosa, pero a pesar de ello necesitaba ejecutar Powerview para ir practicando las funciones, en esto recorde uno de los métodos conocidos de cambio de nombre de las variables y/o funciones para que el mismo no sea detectado como malicioso, es decir cambiar un CAT por MAT.

Cuando un script tiene pocas funciones o es reducido uno lo llega a realizar de manera manual, pero en este caso de Powerview puede ser complicado pero no difícil.  

Pyfuscation

En este proceso encontré el script realizado en Python el cual es Pyfuscation el cual permite realizar la modificación de los nombres de funciones, variables y parámetros. 

Instalación 

Requerimos contar con Python3 en el equipo, además de tener git para realizar la clonación del repositorio, o por ultimo descargarlo desde la interfaz web de Github que es donde se encuentra el proyecto. 

Snifer@L4bs$: git clone https://github.com/CBHue/PyFuscation.git
Al ejecutar la herramienta, tenemos el siguiente menú con las opciones.
Snifer@L4bs$: ./PyFuscation.py 

Parámetros del script

Los parámetros que son ejecutados en el script son los siguientes, cabe resaltar que son pocos. 
  • -h      --help, muestra el mensaje de ayuda. 
  • -f       Realiza la ofuscación de funciones. 
  • -v      Realiza la ofuscación de variables.
  • -p      Realiza la ofuscación de parámetros.    

Bypass a Windows Defender 

Volvemos al motivo del post de hoy, que es la detección de Defender, procedí realizar el cambio de los nombres de las funciones como se ve a continuación
Snifer@L4bs$: ./PyFuscation.py --ps powerview.ps1

La salida del script nos muestra los nombres que son modificados, siendo esta tarea bastante rápida.  


Tenemos disponible una nueva carpeta con dos ficheros el nuevo Powerview con la modificación de los nombres de las funciones y un fichero de texto con los nuevos nombres. 


Ahora al mandarlo al equipo donde me encuentro trabajando el antivirus no pita,  y como ven en la captura anterior Get-NetUser ahora puede ser llamado como benefice, en este caso obtengo el nombre del usuario y la ultima modificación de la contraseña que tuvo. 


Hice la misma prueba con otros scripts, además de mimikatz teniendo como resultado el bypass respectivo, por esta oportunidad específicamente mi objetivo fue Windows defender, si realzas la prueba con otro entorno por favor comentarlo para ir sumando al post. 

NOTA: El siguiente proceso fue identificado el 13 de Febrero por ir probando y no recordarme el nombre de las nuevas funciones a ejecutar, aun me parece tonto y bobo, ya que solo al retirar, cambiar una letra del script en este caso el Windows Defender deja de pillarlo y eliminar Powerview, o cualquier otra lo que entiendo que sucede es que al modificarlo cambiamos la firma de detección y saltamos de forma directa el antivirus. 




Lo que probe fue quitar los comentarios de todo el script por ello en el tweet inicial que escribi mencionaba que con sed se realiza el bypass del antivirus. 

Solo con una letra bypass?


“Si quieres aprender, enseña”. - Cicerón

Regards,
Snifer
Compartir: