TCP Packet lesen/senden

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 15 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    TCP Packet lesen/senden

    Hallo liebe Comunity,

    ich habe nun schon länger nichts mehr gemacht mit .Net, nun habe ich wieder ein kleines Projekt vor. Und zwar möchte ich von einem bestimmten laufenden Programm die TCP Packets lesen mir diese anzeigen lassen und diese ggf. wieder über besagtes laufendes Programm auslösen/senden. Die standart sachen zum Thema TCP/UDP Server -Client habe ich mir schon angeschaut, das lesen der Packets funktionier auch aber das auslösen/senden über den socket bzw über das laufenden Programm will nicht gelingen bzw. habe ich nichts zu gefunden. Ich hoffe ihr könnt mir da weiter helfen. Das lesen/auslösen darf auch über eine Injected .dll funktionieren wenn nötig.
    Ich danke schonmal für eure hilfe.
    MFG
    @Nazas Willkommen im Forum. :thumbup:
    Führst Du die Kommunikation mit dem anderen Programm
    oder
    möchtest Du lediglich die Kommunikation zwischen zwei anderen Programmen belauschen?
    Kennst Du das Datenprotokoll, mit dem die Kommunikation abläuft?
    Was ist das andere / sind die anderen für Programme?
    Wer ist Master, wer ist Slave?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Hallo,
    Danke.
    Ich möchte die Komminikation der anderen Programme belauschen und ggf. selber ein Packet über deren Leitung senden.
    Es sind Ipv4 packets.
    Es läuft über ein TCP Stream.
    Es ist ein normales Server/Client Programm.

    Das belauschen klappt ja auch das problem ist nur ein packet selber erneut zu senden über die TCP leitung des belauschten programms.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Nazas“ ()

    @Nazas Das Problem wird sein, dass Du als Lauscher dem einen Programm gegenüber als Server und dem anderen gegenüber als Client gegenüberstehst.
    In Deinem Programm müssen also beide Parts implementiert sein.
    ====
    Master / Slave oben ist eine falsche Bezeichnung. Sorry.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @Nazas Bevor wir Spekulatius backen schreib mal detailliert auf, wie und was Dein Programm tun soll.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @Nazas Hast Du einen Client und einen Server implementiert?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @Nazas Wie das Paket aussieht ist doch völlig egal.
    Das Protokoll muss eingehalten werden.
    Und wenn dei Paketge zerhackstückelt sind, musst Du sie halt zerhackstückeln.
    ====
    Musst Du das programmieren? Wieso nimmst Du keinen "Netzwerkschnüffler" => Frau Google danach fragen?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @Nazas Da kann ich Dir auch nicht viel weiterhelfen als "dumme" Fragen zu stellen.
    TCP-Kommunikation hab ich programmiert, aber jeweils beide Seiten, und das ist natürlich deutlich bequemer.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Du möchtest die Kommunikation zwischen zwei TCP/IP-Teilnehmern anzapfen und dabei irgendwelche Pakete verändern?
    Für mich klingt das nach einer Man-In-The-Middle Attacke.
    Kannst du plausibel erklären, wozu du solch zwielichtige Dinge benötigst?
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    ich glaube ich habe soetwas ähnliches vor jahrzenten gemacht (alter 20 jahre, Ich alter Sack!), ich habe die Login YMSG Protokol Packete Gesnifft dieses Packete leicht umgewandelt und dann zurück ins YMSG Protokol gesendet.
    YMSG war das damalige Yahoo Messanger Protokol... das war damals noch mit vb6... so wurden Yahoo.. Booter gescrieben.... Hehe ich schwelge in erinnerungen...

    Puh Sekunde, ob ich es noch richtig hinbekomme... und zwar hat man den Messanger damals gesnifft und sich selber von einem anderen messanger nachrichten geschickt und zb... damals Ring... oder Auslogggen befehle Abgesnifft... dann mussten diese nur noch leicht umgeändert werden... dafür brauchte man aber einen Zugang zum YMSG diesen hat man mit einem Account Login bekommen und konnte somit ins YMSG rumfuschen...

    dies sollte reintheorethisch auch noch bei manchen sachen möglich sein, aber ich denke viele haben aus der damaligen riesigen yahoo booter & cracker scene gelernt und sichern ihre protokole dahin gehend ab...
    ich will es zumindest mal Hart hoffen... sonst hab ich bald wieder viel Spass in den Backen! 8o :P

    Wenn du dies umsetzen willst solltest du Reverse Engineering, und dich mit Verschlüsselung Entschlüsselungen & TCPIP Hart ausseinander setzen... damals hab heimlich jede Nacht Hart gelernt... Monate Jahre lang nachts heimlich am 1200MHz Rechner gehockt und deutschland alle ehre gemacht. HEHE :thumbsup:

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „Baa$“ ()