Wireshark-bugs: [Wireshark-bugs] [Bug 6365] New: Decryption through dissectors
Date: Tue, 20 Sep 2011 06:11:34 -0700 (PDT)
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6365

           Summary: Decryption through dissectors
           Product: Wireshark
           Version: SVN
          Platform: x86-64
        OS/Version: Windows 7
            Status: NEW
          Severity: Normal
          Priority: Low
         Component: Wireshark
        AssignedTo: [email protected]
        ReportedBy: [email protected]


Build Information:
Version 1.7.0-Intline9 (SVN Rev Unknown from unknown)

Compiled (32-bit) with GTK+ 2.22.1, with Cairo 1.10.2, with Pango 1.28.3, with
GLib 2.26.1, with WinPcap (version unknown), with libz 1.2.5, without POSIX
capabilities, with threads support, with SMI 0.4.8, with c-ares 1.7.1, with Lua
5.1, without Python, with GnuTLS 2.10.3, with Gcrypt 1.4.6, with MIT Kerberos,
with GeoIP, with PortAudio V19-devel (built Sep 15 2011), with AirPcap.

Running on 64-bit Windows 7 Service Pack 1, build 7601, with WinPcap version
4.1.2 (packet.dll version 4.1.0.2001), based on libpcap version 1.0 branch
1_0_rel0b (20091008), GnuTLS 2.10.3, Gcrypt 1.4.6, without AirPcap.

Built using Microsoft Visual C++ 9.0 build 21022
--
I've written a dissector that decrypts packets on the fly. However the problem
is that the key is only stored in a process and changes for every run. 

I've made some hacks and now my dissector is able to set the correct key into
the settings for my dissector. So i can decrypt packets just fine.

HOWEVER when we save the captured packet all changes made to tvbuffs (and even
frame buffs, i did some testing) are lost.

So atm there is no way to change a packet (aka decrypt it) and save the
decrypted packet.

As i said, for my example (and i know enough examples) its not possible (when
using the standart pcap formats) to store the encrypted packets and then keep
decrypting them on the fly because of the changing key.

So my request is i would love a function to modify the real packet data. Or
some pointers on where these data pointer resides or how to acces them. Then i
can write a patch myself. Currently i'm working my way through the code but its
just huge!

-- 
Configure bugmail: https://bugs.wireshark.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.