Gibt es eine einfache (oder überhaupt mögliche) Möglichkeit, ein TCP-Paket beim Verlassen des Computers neu zu schreiben?
Zum Beispiel, wenn ich renne
telnet binfalse.de 22
Es wird nach einem nicht verwendeten Port gesucht, um das Gerät zu verlassen. In diesem Fall ist es 46576
:
root@srv % lsof -i -P -n | grep telnet
telnet 10150 user 3u IPv4 1159425 0t0 TCP 1.2.3.4:46576->87.118.88.39:22 (ESTABLISHED)
Aber jetzt möchte ich diese Pakete neu schreiben, damit der Server denkt, dass die Anforderungen vom Port stammen 1337
, oder ähnlich. Natürlich weiß ich, dass ich in meiner telnet
Sitzung keine Antwort erwarten muss .
EDIT:
Natürlich 1337
hört ein anderes Programm zu, also ist es keine Option , zu sagen telnet
, dass man 1337
durchsprechen soll ...
iptables
.:1337
... stammt. Ich kümmere mich nicht um eines Antwort ...scapy
Antworten:
Angenommen, Sie sprechen über Linux, dann
iptables
gibt es einemangle
Tabelle, die alle möglichen verrückten Dinge für ausgehenden TCP-Verkehr tun kann.iptables
NAT-Funktionen könnten ebenfalls hilfreich sein, da es sich wirklich so anhört, als ob Sie "Portadressübersetzung" oder "manuelles NAT" durchführen möchten.quelle
Wenn Sie das
telnet
Protokoll (oder rohe TCP-Streams) wirklich verwenden , können Sienc -p <source_port>
...-t
Telnet-Optionen aushandeln. Ich habe einen Terminalserver darunter, der Telnet-Verbindungen akzeptiert,tcp/2015
und ich werde von dort beziehentcp/31415
Verifizieren...
Dies setzt voraus, dass Sie noch keinen lokalen Socket
tcp/31415
haben, der abhört. Wenn Sie bereits einen lokalen TCP-Socket haben, der an den gewünschten Port gebundeniptables
ist , ist dies Ihre einzige Option.quelle
nc -p
ist keine Option. Aber trotzdem kann es nicht schlecht sein, es hier aufzulisten, danke ;-)X
. Ich möchte einige Pakete (z. B. mit Telnet oder Netcat oder was auch immer) von demselben Computer an einen Server senden, möchte aber, dass dieser Server auf den Port antwortetX
. Da jedoch bereits etwas an den Port gebunden ist, funktioniertX
Ihr Befehlnc -p X [...]
nicht.nc
nicht funktioniert ... Ich versuche herauszufinden, warum Sie nicht einfach einen Paketgeneratorscapy
funktioniert gut. Noch nie davon gehört!