zoukankan      html  css  js  c++  java
  • Wireshark插件编写

    Wireshark插件编写

    在抓包的过程中学习了使用wireshark,同时发现wireshark可以进行加载插件,便在网上学习了一下相应的插件开发技术。

    需求
    编写一个私有协议名为SYC,使用UDP端口9877进行传输,报文结构如下:

    Type Flag Sequence number IP Address
    Data

    编写Wireshark插件,使Wireshark可以识别出SYC协议。

    实现
    首先构造产生SYC协议报文的程序:
    数据结构:

    初始化:

    默认向119.75.217.109(baidu.com)发送请求。

    发送请求:

    运行程序,在Wireshark中捕获如下数据包:
    设置过滤方式为捕获后过滤,过滤条件为ip.dst == 119.75.217.109。

    插件编写
    Wireshark支持用Lua或者C进行插件开发。Lua相对于C来说,开发起来效率高,稍微熟悉Lua的语法就可以进行开发。

    代码如下:

    将该Lua文件保存在Wireshark目录下的/plugins/(版本号)中,并在Wireshark中,点击分析—重新载入Lua插件,可以看到如下结果:

    协议名称变为SYC,同时下方有对SYC协议的分析,包括Type,Flag,Sequence number和IPv4 Address,在抓取数据包的Info里还都包含一句“hello world”。

  • 相关阅读:
    AI ResNet V1
    Lua基础
    git命令小结
    定时器及时间轮
    expect
    vscode 常用快捷键
    动态链接库与共享内存:
    container_of机制
    ELF文件格式
    git学习补充
  • 原文地址:https://www.cnblogs.com/syncCN/p/5620207.html
Copyright © 2011-2022 走看看