Ich weiß, dass ich die Shell serverseitig erzeugen kann mit:
nc -l 1111 -e /bin/bash
Aber ich möchte die Shell auf der Clientseite erzeugen.
Ich habe Folgendes versucht:nc 127.0.0.1 1111 | /bin/bash
Es funktioniert, aber ich kann die Ausgabe der ausgeführten Befehle nicht sehen.
Die Frage ist also: Gibt es eine Möglichkeit, die Shell mit Netcat auf der Clientseite zu starten?
Antwort1
Scheint bei mir zu funktionieren, hängt aber von der Version von Netcat ab. Debian hat zwei gepackt: "Netcat-traditionell" Und "netcat-openbsd". Ersteres unterstützt -e
sowohl den Client- als auch den Servermodus, letzteres unterstützt es überhaupt nicht.
$ nc.traditional localhost 1234 -e /bin/bash
$ nc.openbsd localhost 1234 -e /bin/bash
nc.openbsd: invalid option -- 'e'
Das auf meinem OSX unterstützt es auch nicht.
Wenn Sie dies mit einem Netcat tun müssen, das dies nicht unterstützt -e
, brauchen Sie möglicherweise so etwas:Wie erstelle ich eine bidirektionale Pipe zwischen zwei Programmen?