Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Traffic mitschneiden (https://www.delphipraxis.net/158501-traffic-mitschneiden.html)

1234567890987654321 19. Feb 2011 21:03

Traffic mitschneiden
 
Hallo,
ich möchte, dass wenn meine Anwendung gestartet ist, sie alles an Traffic mitschneidet.
Das Ergebnis soll in einem Memo gesichert werden.
Es sollte dann ungefähr so aussehen:
Code:
http://www.google.de/firefox?client=firefox-a&rls=org.mozilla:de:official

GET /firefox?client=firefox-a&rls=org.mozilla:de:official HTTP/1.1
Host: www.google.de
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
DNT: 1
Connection: keep-alive
//.....
Danke für's lesen :-)

P.S: Ich habe schon bei Google nachgeforscht, aber da funktionieren nicht mal die "normalen" Tools, so wie ich es mir denke.

Assarbad 19. Feb 2011 21:05

AW: Traffic mitschneiden
 
Zitat:

Zitat von 1234567890987654321 (Beitrag 1082953)
Hallo,
ich möchte, dass wenn meine Anwendung gestartet ist, sie alles an Traffic mitschneidet.
Das Ergebnis soll in einem Memo gesichert werden.

Seit wann können Memos auch Binärdaten verlustfrei anzeigen?

Was du benutzen willst, ist vermutlich WinPCap. Die Bibliothek welche auch von Wireshark (ehemals Ethereal) benutzt wird.

Aber vielleicht solltest du doch noch genauer beschreiben was du eigentlich mitscheiden willst. Ein LSP käme auch infrage.

1234567890987654321 19. Feb 2011 21:12

AW: Traffic mitschneiden
 
ich möchte das gesamte http Protokoll mitschneiden.

Assarbad 19. Feb 2011 21:16

AW: Traffic mitschneiden
 
Zitat:

Zitat von 1234567890987654321 (Beitrag 1082958)
ich möchte das gesamte http Protokoll mitschneiden.

Aha, na das ist schonmal eine gewichtige Einschränkung. Aber selbst hier wirst du um eine Anzeige in einem Format welche Binärdaten verträgt nicht herumkommen. Denn Bilder sind bspw. üblicherweise Binärdaten und würden so die Anzeige in einem Memo bestenfalls stören.

Aus welchem Grund scheinen dir Anwendungen wie Wireshark nicht geeignet?

Übrigens, da du ja Firefox zu benutzen scheinst, es gibt direkt Erweiterungen für Firefox die gesendete und empfangene Daten anzeigen und zT auch manipulieren können. Bspw. "Tamper Data", "Modify Headers" ...

1234567890987654321 19. Feb 2011 21:32

AW: Traffic mitschneiden
 
Ich hätt halt gerne mein eigenes :-)

Und: Wireshake funktioniert bei mir irgendwie nicht, es kommt immer ein Fehler. Und ich finde das hat was von "Mit Kanonen auf Spatzen Schießen".

wicht 19. Feb 2011 21:45

AW: Traffic mitschneiden
 
Für Firefox gibt es auch noch Fiddler - der macht einem alles recht komfortabel. Für was eigenes wie schon gesagt WinPcap/LSP oder vielleicht einen Hook in den Prozess, den man mitschneiden möchte, einfügen..

1234567890987654321 19. Feb 2011 21:51

AW: Traffic mitschneiden
 
Zitat:

Zitat von wicht (Beitrag 1082970)
vielleicht einen Hook in den Prozess, den man mitschneiden möchte, einfügen..

Das klingt gut, hat irgendjemand ein Beispiel?

Aphton 19. Feb 2011 22:01

AW: Traffic mitschneiden
 
Puh...
Ich hab einmal soetwas geschrieben, werde es aber hier nicht veröffentlichen. Ich kann dir höchstens den Vorgang beschreiben:

- ne Dll mit den gewünschten WinSock-Hooks schreiben
- per Shared Memory (CreateFileMapping mit Invalid_Handle_Value) das Handle des eigenen Forms angeben
- die Dll in den Prozess einschleusen
- diese liest das Handle aus
- schickt beim HookCallback eine Message an dein Fenster und teilt mit, dass neue Daten vorhanden sind, die mmit SharedMemory austauscht werden
- die eigene Anwendung reagiert drauf

Assarbad 19. Feb 2011 22:02

AW: Traffic mitschneiden
 
Sekunde mal. Erst:

Zitat:

Zitat von 1234567890987654321 (Beitrag 1082968)
Ich hätt halt gerne mein eigenes :-)

... dann:

Zitat:

Zitat von 1234567890987654321 (Beitrag 1082972)
Das klingt gut, hat irgendjemand ein Beispiel?

Du hättest also gern dein "eigenes" bereits vorgekautes "Etwas"? ... :roll:

@Aphton: ein LSP geht auch ganz ohne böse böse Hooks :zwinker:

wicht 19. Feb 2011 22:09

AW: Traffic mitschneiden
 
Aber den Hook kann man auch bauen, ohne Ahnung von LSPs zu haben.. :-D .. So wie ich. Die recv() und WSAReceive() sind ja noch zu verstehen. Etwas ähnliches wie Aphton habe ich auch mal gebaut, nach dem selben Prinzip. Veröffentlichen kann ich es nicht, ausserdem würde es mit Lazarus vermutlich sehr viele Anpassungen brauchen.. Allerdings sollte man im Netz einiges an Quellen finden, die man zur Hilfe nehmen kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:49 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz