lua – 如何使用侦听器获取TCP流号?

lua – 如何使用侦听器获取TCP流号?,第1张

概述我分析了一个非常大的PCAP,它持有许多HTTP事务,其中一些让我感兴趣.我正在使用带有Lua脚本的tshark来查询与过滤器匹配的所有数据包. tshark -X lua_script:filter.lua -r some.pcap -q 到现在为止还挺好.但是,我正在寻找一个数据包的TCP流号的值,它在Wireshark中名为tcp.stream.任何人都可以说我需要进行哪些更改filter 我分析了一个非常大的PCAP,它持有许多http事务,其中一些让我感兴趣.我正在使用带有Lua脚本的tshark来查询与过滤器匹配的所有数据包.

tshark -X lua_script:filter.lua -r some.pcap  -q

到现在为止还挺好.但是,我正在寻找一个数据包的TCP流号的值,它在Wireshark中名为tcp.stream.任何人都可以说我需要进行哪些更改filter.lua进行打印?

-- filter.luado    local function init_Listener()        local tap = Listener.new("http","http contains somekeyvalue && tcp.port eq 1234")        function tap.reset()        end        function tap.packet(pinfo,tvb,ip)            print("Found my packet ... Now what?")        end        function tap.draw()        end    end    init_Listener()end

有关pinfo,tvb和ip的文档是不合适的.

解决方法 您可以通过FIEld访问TCP流编号.

local tcp_stream = FIEld.new("tcp.stream").value

FIEld的值是当前数据包的值.您不需要每次都创建一个新的FIEld.这允许您使FIEld为常量并创建一个返回当前数据包的TCP流编号的函数.也可以调用FIEld值来获取FIEldInfo值,该值可能包含其他有用信息.

您希望filter.lua看起来像:

-- filter.luado    local function init_Listener()        local get_tcp_stream = FIEld.new("tcp.stream")        local tap = Listener.new("http",ip)            print(tostring(get_tcp_stream()))        end        function tap.draw()        end    end    init_Listener()end

https://www.wireshark.org/docs/wsdg_html_chunked/lua_module_Field.html#lua_class_Field

总结

以上是内存溢出为你收集整理的lua – 如何使用侦听器获取TCP流号?全部内容,希望文章能够帮你解决lua – 如何使用侦听器获取TCP流号?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1228222.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存