利用Wireshark加Lua分析专有网络协议
2014-03-15 19:11
369 查看
实战过程:
1.安装wireshark、lua。
2.利用lua为wirashark写一个协议的dissector,并部署到lua上。
2.1 参照http://wiki.wireshark.org/Lua/Examples中的例子,进行修改。其中要注意的一点是TCP协议中的粘包现象(如果是UDP则不考虑)。 解决这点的关键是在dissector(buffer, pinfo, tree)函数中设置好以下两个属性(具体含义参见wireshark文档)。
pinfo.desegment_len
pinfo.desegment_offset
2.2 把编辑好的lua文件(比如说文件名为ProprietaryProtocol.lua)放到wireshark的安装目录。
2.3 在wireshark安装目录的init.lua文件中,增加一行,内容为dofile(DATA_DIR.."ProprietaryProtocol.lua")。
3.启动wireshark、启动专有程序。
之后就可以在wireshark中监听并分析专有协议的数据包了。
另外,关于监听127.0.0.1地址,有两个坑要注意避开:
1.wireshark是监听不了127.0.0.1地址的(原因见wireshark官网http://wiki.wireshark.org/CaptureSetup/Loopback)。
2.即使你把程序的远程IP地址修改为本地的IP地址(就是在ipconfig中看到的地址),有的通信底层库仍然会自动与127.0.0.1建立连接。
避开的一种方式是借助于rawcap软件。基本步骤为:
1.下载rawcap(可搜索官网下载)。
2.在window下的cmd中进行"rawcap.exe 127.0.0.1 capture.cap"。其中capture.cap是用于dump数据包的文件名。
3.运行自己的专有程序。
之后rawcap就会把在127.0.0.1地址上监听到的数据包记录到capture.cap文件。
以上步骤运行结束后,关闭rawcap,在wireshark中打开capture.cap文件,就可以进行分析数据包了。
当然,借助于rawcap后,就只能进行离线分析。
下面是运行截图,其中红框内的部分都是专有协议的内容。各个字段都解析了出来,看起来还是很爽的。
1.安装wireshark、lua。
2.利用lua为wirashark写一个协议的dissector,并部署到lua上。
2.1 参照http://wiki.wireshark.org/Lua/Examples中的例子,进行修改。其中要注意的一点是TCP协议中的粘包现象(如果是UDP则不考虑)。 解决这点的关键是在dissector(buffer, pinfo, tree)函数中设置好以下两个属性(具体含义参见wireshark文档)。
pinfo.desegment_len
pinfo.desegment_offset
2.2 把编辑好的lua文件(比如说文件名为ProprietaryProtocol.lua)放到wireshark的安装目录。
2.3 在wireshark安装目录的init.lua文件中,增加一行,内容为dofile(DATA_DIR.."ProprietaryProtocol.lua")。
3.启动wireshark、启动专有程序。
之后就可以在wireshark中监听并分析专有协议的数据包了。
另外,关于监听127.0.0.1地址,有两个坑要注意避开:
1.wireshark是监听不了127.0.0.1地址的(原因见wireshark官网http://wiki.wireshark.org/CaptureSetup/Loopback)。
2.即使你把程序的远程IP地址修改为本地的IP地址(就是在ipconfig中看到的地址),有的通信底层库仍然会自动与127.0.0.1建立连接。
避开的一种方式是借助于rawcap软件。基本步骤为:
1.下载rawcap(可搜索官网下载)。
2.在window下的cmd中进行"rawcap.exe 127.0.0.1 capture.cap"。其中capture.cap是用于dump数据包的文件名。
3.运行自己的专有程序。
之后rawcap就会把在127.0.0.1地址上监听到的数据包记录到capture.cap文件。
以上步骤运行结束后,关闭rawcap,在wireshark中打开capture.cap文件,就可以进行分析数据包了。
当然,借助于rawcap后,就只能进行离线分析。
下面是运行截图,其中红框内的部分都是专有协议的内容。各个字段都解析了出来,看起来还是很爽的。
相关文章推荐
- 使用wireshark分析网络协议
- Wireshark数据抓包分析(网络协议篇)第1章网络协议抓包概述
- Ubuntu Linux下的Wireshark使用drcom_2011.lua分析drcom协议
- Wireshark 1.0.8 Stable 绿色版_开源网络协议分析器
- 工具之网络协议分析 Wireshark基本介绍和学习TCP三次握手
- 网络协议分析工具Wireshark
- 利用WireShark分析由Ping产生的Internet 控制报文协议(ICMP)
- 利用Wireshark软件对微信协议的分析---qpic
- 网络协议分析工具Wireshark
- Wireshark基本用法---分析网络协议报文
- [Android Pro] 利用tcpdump和wireshark对android网络请求进行分析
- PYTHON黑帽编程1.5 使用WIRESHARK练习网络协议分析
- Wireshark数据抓包分析(网络协议篇)第1章网络协议抓包概述
- 利用Cain+wireshark进行协议分析
- 利用wireshark和python分析网络
- Linux 下网络协议分析器 Wireshark 使用基础
- Wireshark使用drcom_2011.lua插件协助分析drcom协议
- 用lua编写wireshark插件分析自己定义的协议
- 网络协议分析工具Wireshark的使用、用Wireshark观察ARP协议以及ping命令的工作过程分析以太网报文格式
- 基于wireshark和科来软件的网络协议分析报告