TCP-Sequenznummern für die Paketwiedergabe ändern?

2889
Grace

Zunächst einmal verwende ich Wireshark für Capture und Colasoft für die Wiedergabe. Ich versuche, eine Gruppe erfasster Pakete wiederzugeben, die wiederholt durchlaufen werden muss (der Zweck ist nur, eine Wiederholung eines Kampfes online von einem Spiel zur Farm zu schicken, um Belohnungen zu erhalten, falls Sie sich fragen). .

Ich habe hier gelesen , dass TCP / IP Pakete mit wiederholten Folgenummern ignoriert. Bin ich also auf dem richtigen Weg, wenn ich denke, dass neue Sequenznummern jedes Mal erstellt werden, wenn das erste SYN-Paket in dieser Gruppe von Paketen gesendet wird und der Rest der Pakete deshalb ignoriert wird? Wie kann ich nun diese neuen Folgenummern entsprechend wiedergeben?

Wenn ich weit weg bin, weißt du es. Ich habe das Paket so wie es ist abgespielt und es wird gut abgespielt, aber ich bekomme keine Items / XP, also denke ich, dass die Pakete vom Server ignoriert werden müssen.

3
Sie sollten einen MITM-Proxy verwenden und die Daten wiedergeben, nicht die Pakete. Es kann nicht garantiert werden, dass das Abspielen der Pakete mit dem verwendeten Protokoll funktioniert. Wenn sie nicht ignoriert werden, ist es sehr wahrscheinlich, dass die Verbindung wegen ungültiger Daten geschlossen wird. Darth Android vor 10 Jahren 0
Ich habe versucht, mitm proxy herunterzuladen, aber die einzigen Installationsanweisungen sind via pip. Ich habe seit rund 45 Minuten versucht, Pip zu installieren, aber ich kann es nicht verstehen. Ich habe bereits Setup-Tools heruntergeladen. Die Zeile ($ sudo easy_install pip), die ich im Tutorial verwenden sollte, kommt als ungültige Syntax zurück. Grace vor 10 Jahren 0
Ich habe es endlich heruntergeladen. Mitmproxy installiert. Kann nicht herausfinden, wie man es öffnet. Grace vor 10 Jahren 0
Errr, ein Proxy ist ein generischer Anwendungstyp. Ich habe keine bestimmte Software empfohlen. Darth Android vor 10 Jahren 0

1 Antwort auf die Frage

3
pabouk

Natürlich müssen Sie die Sequenznummern des Peers mindestens gemäß der ersten Antwort ändern. Beim Start der TCP-Verbindung (TCP-Handshake) generiert jeder der Kommunikationspartner seine eigene Pseudo-Zufallssequenznummer. Die Folgenummern wachsen dann um die Anzahl der übertragenen Datenbytes, und tatsächlich werden die Pakete abgelehnt, wenn die Folgenummer falsch ist.

Es gibt bereits Tools, die die Sequenznummernübersetzung / -regenerierung für Sie erledigen und den einseitigen Teil des erfassten TCP-Streams wiedergeben.

  • Tcpreplay ist ein sehr nützlicher Satz von Werkzeugen zum Ändern und Wiedergeben des erfassten Verkehrs. Das Werkzeug zum Wiedergeben von TCP ist tcpliveplay
  • Wireplay ist ein weiteres, einfacheres Werkzeug.

Weitere Informationen zu TCP: Transmission Control Protocol - Betrieb

Ich habe tatsächlich versucht, tcpreplay vor colasoft herunterzuladen, konnte es aber nicht installieren. Gleiches gilt für Bittwist. Ich habe die Datei cygwin1.dll heruntergeladen und das system32-Verzeichnis wie angewiesen eingefügt, aber es kommt immer noch zurück, dass die Datei auf meinem Computer fehlte. Gibt es Windows-Äquivalente für tcpreplay, für die kein Cygwin erforderlich ist? Grace vor 10 Jahren 0
Excuse me, I did not know that the tool should be for Windows. I am afraid that bittwist cannot translate the TCP sequence numbers. I do not know any such a tool for Windows. If you want to try tcpreplay of other Linux tool I would recommend the following options in the order of preference: **1:** Run Linux in a virtual machine. **2:** Boot live Linux from a flash drive. **3:** Do a regular installation of Cygwing and compile tcpreplay. Good Linux distribution for similar tasks is [BackTrack](http://www.backtrack-linux.org/) which should already contain tcpreplay and other useful tools. pabouk vor 10 Jahren 0
BTW gibt es ein weiteres Linux-Tool, das TCP mit der Sequenznummern-Übersetzung abspielen kann: [tcpcopy] (https://github.com/wangbin579/tcpcopy). Es ist sogar verteilt und kann die TCP-Sitzung in Echtzeit duplizieren! Und ich stimme mit Darth Android überein, dass es oft einfacher ist, nur den Stream abzuspielen. Anstatt ihn auf einem Proxy zu erfassen, können Sie den Stream in Wireshark mithilfe der Funktion * Follow TCP stream * zusammenstellen und exportieren. pabouk vor 10 Jahren 1