From f567777f24ecf4f045e557fd3c33ed7380604c11 Mon Sep 17 00:00:00 2001 From: Simon Walton Date: Thu, 18 Jul 2019 12:57:13 -0700 Subject: [PATCH] Don't read HMAC for 'nonverified' packets --- tools/dissectors/1-hfudt.lua | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/tools/dissectors/1-hfudt.lua b/tools/dissectors/1-hfudt.lua index 00b71a341a..9a51cc8d7c 100644 --- a/tools/dissectors/1-hfudt.lua +++ b/tools/dissectors/1-hfudt.lua @@ -167,6 +167,19 @@ local unsourced_packet_types = { ["ICEServerHeartbeatACK"] = true } +local nonverified_packet_types = { + ["NodeJsonStats"] = true, + ["EntityQuery"] = true, + ["OctreeDataNack"] = true, + ["EntityEditNack"] = true, + ["DomainListRequest"] = true, + ["StopNode"] = true, + ["DomainDisconnectRequest"] = true, + ["UsernameFromIDRequest"] = true, + ["NodeKickRequest"] = true, + ["NodeMuteRequest"] = true, +} + local fragments = {} local RFC_5389_MAGIC_COOKIE = 0x2112A442 @@ -304,9 +317,11 @@ function p_hfudt.dissector(buf, pinfo, tree) subtree:add_le(f_sender_id, sender_id) i = i + 2 - -- read HMAC MD5 hash - subtree:add(f_hmac_hash, buf(i, 16)) - i = i + 16 + if nonverified_packet_types[packet_type_text] == nil then + -- read HMAC MD5 hash + subtree:add(f_hmac_hash, buf(i, 16)) + i = i + 16 + end end local payload_to_dissect = nil