Wireshark: eigenen Dissector (Protokollfilter) einbinden?


jccTeq

Erfahrenes Mitglied
#1
Hi Leute,

ich weiß nicht genau, wo ich das Problem einordnen soll, darum schreib ich's einfach mal hier rein.

Wir brauchen für ein proprietäres Protokoll, das auf TCP basiert, einen eigenen Dissector für Wireshark. Ich hab mit den Sourcen schon rumgespielt, übersetzen kann ich, was ich hier gebaut hab.

Aber!

Wie binde ich den Dissector nun in Wireshark ein? Wie bringe ich dem Compiler bei, daß er den Dissector an der richtigen Stelle ablegt, damit Wireshark ihn nachher findet?

Danke

Grüße,
Hendrik
 

jccTeq

Erfahrenes Mitglied
#3
Ui... Thread exhumiert... :eek: Jo, danke! Hat inzwischen schon ganz gut funktioniert. Der Dissector für unser proprietäres Protokoll ist mittlerweile erfolgreich im Einsatz. :)
 
#4
Hallo
bei der Bitweise dekodierung, wille ich eine ausgabe wie folgend haben:
die dekodierung soll für 0x00 so aussehen:
---------------------------
0... ....: flag 1 : Not Set
.0.. ....: flag 2 : Not Set
..0. ....: flag 3 : Not Set
...0 0000: CODE : (0x00) CNP
------------------------------
wenn CODE (lezte 5 bits)=00000 (0x00) ist CNP,
wenn CODE=00001(0x01)CNP2
wenn CODE=00010 (0x02)CNP3

Ich habe es mit VALS versucht aber klappt es nicht.
BITTE hilf mir .
Danke
 

m1LLo

Grünschnabel
#5
Ich versuch dann mal diesen Thread wiederzubeleben.
Ich hab hier 4 Wireshark Dissectoren: gn, btp, cam & denm alle stammen von http://www.amb-consulting.com/en/#downloads. Jetzt wurden der Quellcode von einem Mitarbeiter modifiziert und soll nun wieder zu .so und .dll Dateien kompiliert werden. Ich bekomm es einfach nicht hin. Jemand eine Ahnung wie ich das Anfangen kann?

Ich weis es klingt danach das jemand seine Arbeit gemacht bekommen möchte aber ich probiere es jetzt schon seit 2 Tagen aus und hab mehre Anleitungen sowie die Wiresharkanleitung zum Erstellen eigener Dissectoren durch gearbeitet aber nichts funktioniert.

Würden mir sehr helfen.
Grüße
 

m1LLo

Grünschnabel
#7
Hallo, z.B die README.plugin im doc Verzeichnis von Wireshark.
Ich habe den Quellcodeodner ins Verzeichnis "wireshark/plugins/PLUGINNAME" gelegt. Die CMakefile.txt erstellt und angepasst und alle Makefile.am , .im und configure.ac Dateien angepasst.Das gleiche Spiel im Ordner Plugins. Dann ./autogen.sh ausgeführt. ./configure ausgeführt. Dann "make -C plugins", er übersetzt dann alle enthaltenen plugins auch das was ich hingelegt hab. Er erstellt auch einen Ordner ".lib" in den er eine X.so, X.la, X.lai und eine plugin.o legt. Alles ohne Compilerfehler oder sonstiges. Auffallend ist die Tatsache das die X.so Datei viel kleiner ist als die Vorkompilierte. Beim Starten von Wireshark kommt jedoch eine Fehlermeldung:
Code:
Couldn't load module /home/benutzer/Downloads/wireshark-1.10.14/plugins/x/.libs/x.so: /home/benutzer/Downloads/wireshark-1.10.14/plugins/x/.libs/x.so: undefined symbol: proto_reg_handoff_x
Wireshark 1.10.14
gcc 4.8.4

Das Plugin ist vom Hersteller bis 1.10.x freigegeben.

Beste Grüße