Wenn ich versuche, den folgenden Befehl auszuführen:
echo -e "GET / HTTP/1.1\n\n" | /dev/tcp/74.125.225.19/80
Ich erhalte folgende Fehlermeldung:
bash: /dev/tcp/74.125.225.19/80: No such file or directory
Der folgende Befehl funktioniert einwandfrei, sodass das Problem darin besteht, wie ich ihn verwende /dev/tcp
:
echo -e "GET / HTTP/1.1\n\n" | nc 74.125.225.19 80
Ich bin in Ubuntu 13.04, also die Fähigkeit , sollte auf meinem System sein. Was mache ich falsch? Was sind die Regeln für die /dev/tcp
ordnungsgemäße Verwendung ?
Antworten:
Sie müssen es in Weiterleitungen verwenden :
So:
ist der richtige Weg, um es zu verwenden.
Bei Verwendung
/dev/tcp/74.125.225.19/80
in einer Pipe wurdebash
versucht, einen Befehl mit dem Namen auszuführen,/dev/tcp/74.125.225.19/80
und ein Fehler gemeldet, da diese Datei nicht vorhanden war.Die Fähigkeit zum Behandeln
/dev/tcp/host/port
und/dev/udp/host/port
Umleiten wurdebash
in Version 2.04 hinzugefügt .Sie müssen
bash
mit--enable-net-redirections
Option kompiliert werden .quelle
/dev/tcp
wird als "Datei" und nicht als Skript behandelt.