C# Sniffen von packets einer Anwendung

05/25/2013 21:13 [uLow]NTX?!#1
Guten Tag,

Ich ahbe ein problem und ja ich habe natürlich die SuFu/Google genutzt.

Ich möchte von Anwendung deren Packets sniffen und auch extra welche senden.

mein Problem liegt dadrinne, dass ich kein Ordentliches Tutorial finde, sondern nur Source und die möchte ich nicht.

Ich möchte ja auch ein Bissel lernen.

Daher meine Frage, kennt jemand ein Tutorial oder ähnliches, wo ich mir solche kenntnisse aneignen kann?
05/25/2013 21:43 Requi#2
Google nach WPE Pro oder du nutzt Wireshark
05/25/2013 22:00 [uLow]NTX?!#3
Ich würde gerne selbst ein solches Programm erstellen
05/26/2013 01:01 BigJk#4
Das sollte dir helfen, zumindestens beim packets abfangen ^^

[Only registered and activated users can see links. Click Here To Register...]
05/26/2013 01:11 [uLow]NTX?!#5
Das ahbe ich auch schon gesehen. nur leider habe ich (auch durchs probieren) nicht in erfahrung bringen können, wie ich dies auf eine anwendung beschränke
05/26/2013 01:17 BigJk#6
Willst du es auf eine spezielle Anwendung beschränken (z.B. ein Spiel) oder willst du ein Programm schreiben das quasi jede von dir gewünschte Anwendung belauscht?

Wenn es z.B. für ein Spiel ist dann kannst du das ganze ja via die IP vom Server filtern oder ähnliches, weil mir fällt jez auch nicht auf Anhieb ein weg ein um zu sehen von welcher Anwendung ein packet verschickt wurde...
05/26/2013 01:51 Schlüsselbein#7
Wenn du weißt, welche Funktion die Anwendung zum Senden verwendet, müsstest du diese einfach nur hooken und kannst dann dort die entsprechenden Informationen filtern und manipulieren.
05/26/2013 05:31 dready#8
Googel mal nach CLR Host Injection

Lesen, verstehen.

Danach dir eine Variante eines Hooks aussuchen, sie nachbaue und die Funktionen kapern die dir Intressant erscheinen.
05/27/2013 07:34 MoepMeep#9
WSAconnect/connect hooken und einfach aufs entsprechende Programm umleiten. Simple lösung, 0 Aufwand.
05/27/2013 09:23 dready#10
Elegante Lösung ansich, aber sicher das das optimal ist bei ner .net Sprache ?
Die Connects kommen ja teilweise direkt beim Starten eines Programms und globale Hooks in .net meh ^^
Kenn da nur den weg über dauerndes Checken und Debuggerfunktionen.
Wenn du aber einen elganteren Weg hast wäre es toll wenn du ihn kurz erläutern könntest :)
05/27/2013 23:18 MoepMeep#11
Quote:
Originally Posted by dready View Post
Elegante Lösung ansich, aber sicher das das optimal ist bei ner .net Sprache ?
Die Connects kommen ja teilweise direkt beim Starten eines Programms und globale Hooks in .net meh ^^
Kenn da nur den weg über dauerndes Checken und Debuggerfunktionen.
Wenn du aber einen elganteren Weg hast wäre es toll wenn du ihn kurz erläutern könntest :)
Hooks in .NET sind doch kein Problem. :|

Aber so einen hook würde ich NIE in .NET machen, da schrieb ich lieber 20 Zeilen C++ Code :|
05/27/2013 23:38 dready#12
Nich normale Hooks, aber Globale Hooks, wie du sie für nen CreateProcess hook brauchst gehen afaik nicht. Oder hab ich irgendwas verpasst ? :O
05/28/2013 16:24 MoepMeep#13
Quote:
Originally Posted by dready View Post
Nich normale Hooks, aber Globale Hooks, wie du sie für nen CreateProcess hook brauchst gehen afaik nicht. Oder hab ich irgendwas verpasst ? :O
Kann ich dir ehrlich gesagt nicht beantworten, habe ich bisher noch nicht benötigt. Sowas schreibt man sich einmal in einer nativen sprache und hat ruhe :p