Wireshark - Lua Dissector,检测哪个端点打开了连接?

时间:2011-08-18 20:35:57

标签: lua wireshark wireshark-dissector

我正在为我必须使用的协议编写解剖器。该协议在TCP上运行并且是有状态的。

为了正确剖析字段,我需要确定哪个端点打开了TCP连接(客户端)。

有没有办法从tcp解剖器获取此信息?我需要写一个水龙头吗?我不太清楚如何在lua中做到这一点。

Cross发布在Wireshark堆栈网站here

1 个答案:

答案 0 :(得分:1)

要在Lua中编写有状态协议解析器,您可以使用闭包来存储状态信息。 如果您分析给定TCP流#的第一个数据包(由TCP解析器生成)的标志SYN / SYN + ACK,您可以轻松解密哪个端点开始对话。

要完成这项工作,您应该安装一个解剖器并检查'tcp.stream'字段。

您可以在我的小Lua wireshark dissector to capture HTTP state information

的来源中查看该技术