如何用Wireshark lua编写的协议解析器,查看HTTP包的URI/URL的Qu

Wireshark解析HTTP GET方法不会解析URI里Query字符串里的参数(通常由GET方式提交form数据),本文介绍用lua编写一个简单的协议解析器,让这些参数解析出来,并显示在wireshark协议解析窗口里。

首先编写以下解析器lua脚本(用文本编辑器编辑即可),,取文件名为my_http_querystring_decoder.lua:

然后修改wireshark安装目录下的init.lua文件:

(1)把disable_lua = true; do return end;这行注释掉:在前面加“–”

(2)然后在init.lua文件最后面加一句:dofile(“my_http_querystring_decoder.lua”)

OK大功告成,打开HTTP抓包,若其请求中URI带QueryString,则界面如下:

可以看到,在协议解析树上新增了Decoded HTTP URI Query String… 节点。看该节点下[HTTP Request URI]为原始HTTP Request URI,[Decoded Query String]下为解开后的一个个参数(经过url decode)。而且在wireshark的“Packet Bytes”窗口里新增了一个“Decoded HTTP URI Query String”的数据tab,专门显示HTTP URI内容,用于显示参数在URL里的原始形式。

另外,如果要解析HTTP Body部分的参数(用POST方法提交form数据),请参考《用Wireshark lua编写的协议解析器查看Content-Type为application/x-www-form-urlencoded的HTTP抓包》()。

注:wireshark版本为1.3.4

我也相信爱可以排除万难;只是,万难之后,又有万难。这是我更相信的。

如何用Wireshark lua编写的协议解析器,查看HTTP包的URI/URL的Qu

相关文章:

你感兴趣的文章:

标签云: