/SnifferUI

基于MFC和Winpcap库开发的网络抓包软件

Primary LanguageC

SnifferUI

基于MFC和Winpcap库开发的网络抓包软件
开发环境:Win7 + Visual Studio 2015

功能:

  • 支持对Ethernet、ARP、IPv4、ICMP、UDP、TCP、DNS、HTTP、DHCP的解析
  • ICMP只支持解析类型为3、4、5、11、8、0的报文
  • DNS只支持解析类型A、NS、CNAME、PTR的报文
  • DHCP只能解析选项0、1、3、6、12、50、51、53、54、60、61、255

ToDoList:

  • v2.0中DHCP,DNS,HTTP解析的实现
  • 根据协议名过滤数据包
  • 数据包保存为.pcap格式文件
  • 鼠标移开list控件,保持选中行高亮
  • 添加菜单栏
  • 优化内存占用率(目前抓取数据包数量很大时,内存占用率高)

Bug:

  • 过滤后原来位置的底色保持不变
  • DNS协议无法正确解析回答、授权回答、附加信息区域
  • 数据包16进制字节流格式不对齐
  • 按下结束后再开始,界面卡死
  • 使用过滤器后,若线程仍在抓包,新抓到的的数据包没有过滤就打印

v2.0更新说明:

  • 代码重构
  • 解决内存泄露问题
  • 界面更换为WIN7风格

运行截图:

v2.0

v1.0

参考资料: