【2019-06-10】使用LUA脚本来扩展wireshark的功能
[历史归档]本文原发布于 cstriker1407.info 个人博客内容为历史存档仅供参考。发布时间2019-06-10 标题使用LUA脚本来扩展wireshark的功能分类编程 / C C / Lua / 网络通讯 标签wireshark·lua使用LUA脚本来扩展wireshark的功能参考文档lua插件最简单实现过滤IP脚本当我们需要拓展wireshark的功能时有2种办法一种是直接修改源代码重新编译发布这种方式比较复杂但是可以改动到非常底层的功能另一种是写lua插件注册到wireshark中这种方式比较简单但是功能有限不过一般情况下都可以满足我们的需求。wireshark的官方文档第二章节【 II. Wireshark Development 】描述了如何定制和开发wireshark第10节【 10. Lua Support in Wireshark 】和第11节【 11. Wireshark’s Lua API Reference Manual 】描述了wireshark的LUA支持情况由于官方文档写的非常清楚这里就简单的笔记几个实例来描述如何使用wireshark的lua脚本功能。参考文档【 https://www.wireshark.org/docs/wsdg_html_chunked/wsluarm.html 】【 https://www.cnblogs.com/zzqcn/p/4827251.html 】lua插件最简单实现新建一个hello_wireshark.lua文件内容如下windownillocalfunctiondemo_main_dlg(user_input)windowTextWindow.new(hello_wireshark demo)window:append(user_input)endlocalfunctiondemo_input_dlg()new_dialog(input demo,demo_main_dlg,please input:)endregister_menu(lua_demo/hello_wireshark,demo_input_dlg,MENU_TOOLS_UNSORTED)然后打开wireshark点击菜单栏**【 帮助 】-【 关于wireshark 】-【 文件夹 】找到 全局配置 **如下图然后打开全局配置文件夹修改文件夹下的init.lua将 hello_wireshark.lua 注册到Wireshark中 。如下图重新打开wireshark点击菜单栏**【 工具 】**就可以看到我们的插件了如下图如果我们修改了lua插件可以点击菜单栏**【 分析 】- 【 重新载入Lua插件 】或者快捷键 Ctrl Shift L ** 来生效不用重启wireshark。过滤IP脚本下面我们笔记一个可以简单过滤IP的lua脚本内容如下windownil-- 判断指定元素value是否在数组tab中localfunctionis_include(value,tab)fork,vinipairs(tab)doifvvaluethenreturntrueendendreturnfalseend-- 将一个字符串分割为一个数组localfunctionsplit_string(input,delimiter)inputtostring(input)delimitertostring(delimiter)if(delimiter)thenreturnfalseendlocalpos,arr0,{}forst,spinfunction()returnstring.find(input,delimiter,pos,true)enddotable.insert(arr,string.sub(input,pos,st-1))possp1endtable.insert(arr,string.sub(input,pos))returnarrend-- 支持多个IP地址输入每个IP间使用,进行分割-- 输入的IP数组localinput_ip_tablenillocalfunctiondemo_main_dlg(input_ips)input_ip_tablesplit_string(input_ips,,)windowTextWindow.new(hello_wireshark demo)localtapListener.new()localfunctionremove()tap:remove()endwindow:set_atclose(remove)functiontap.packet(pinfo,tvb)if(not(is_include(tostring(pinfo.src),input_ip_table)oris_include(tostring(pinfo.dst),input_ip_table)))thenreturnendcontentstring.format(idx:%d %s:%d %s:%d,pinfo.number,pinfo.src,pinfo.src_port,pinfo.dst,pinfo.dst_port)window:append(content.. )endfunctiontap.draw()endfunctiontap.reset()window:clear()endretap_packets()-- 将输入的IP地址做成filter字符串放到wireshark主进程里面localfilter_patternnilfori,dev_ipinipairs(input_ip_table)doif(filter_patternnil)thenfilter_patternstring.format(ip.addr %s,dev_ip)elsefilter_patternfilter_pattern..string.format( or ip.addr %s,dev_ip)endendset_filter(filter_pattern)apply_filter()endlocalfunctiondemo_input_dlg()new_dialog(input ipaddr,demo_main_dlg,ips:)endregister_menu(lua_demo/hello_wireshark,demo_input_dlg,MENU_TOOLS_UNSORTED)我们可以测试下该插件的效果使用wireshark打开一个抓包报文文件然后重新载入下Lua插件然后输入IP255.255.255.255可以看到效果了。如下图

相关新闻

【2019-06-18】【转】完全理解ICMP

【2019-06-18】【转】完全理解ICMP

[历史归档] 本文原发布于 cstriker1407.info 个人博客,内容为历史存档,仅供参考。 发布时间: 2019-06-18 | 标题:【转】完全理解ICMP | 分类: 网络通讯 | 标签: IC…

2026/8/1 0:52:00 阅读更多 →
YOLO训练文件生成问题排查与解决方案

YOLO训练文件生成问题排查与解决方案

1. 问题现象与背景分析最近在配置YOLO目标检测训练环境时,很多开发者遇到一个典型问题:运行voc_label.py脚本时无法正常生成2025_train.txt、2025_val.txt和train.txt这三个关键文件。这些文件是YOLO训练过程中定义数据集划分的核心配置文件,…

2026/7/31 18:35:45 阅读更多 →
Lenovo Legion Toolkit 技术深度剖析:开源硬件控制架构解析与实战指南

Lenovo Legion Toolkit 技术深度剖析:开源硬件控制架构解析与实战指南

Lenovo Legion Toolkit 技术深度剖析:开源硬件控制架构解析与实战指南 【免费下载链接】LenovoLegionToolkit Lightweight Lenovo Vantage and Hotkeys replacement for Lenovo Legion laptops. 项目地址: https://gitcode.com/gh_mirrors/le/LenovoLegionToolkit…

2026/7/28 8:08:10 阅读更多 →

最新新闻

技术驱动型投资:从AI洞察到量化交易系统的工程化实践

技术驱动型投资:从AI洞察到量化交易系统的工程化实践

最近在关注AI领域投资动态时,注意到一个值得技术圈探讨的现象:一些由顶尖技术人才创立或主导的投资机构,其技术研判能力与实际投资回报之间,有时会存在预期落差。这背后往往不是技术判断失误,而是从技术洞见到稳健金融…

2026/8/1 7:39:02 阅读更多 →
NLP技术如何优化学术写作原创性:以千笔工具为例

NLP技术如何优化学术写作原创性:以千笔工具为例

1. 项目背景与核心价值解析 "千笔"这款被专科院校学生广泛使用的写作辅助工具,最近在校园圈层形成了现象级传播。作为一名长期关注教育技术应用的从业者,我注意到它解决了一个非常具体的痛点:在保持学术规范的前提下,帮…

2026/8/1 7:39:02 阅读更多 →
利用Termux在安卓旧手机部署Transmission,打造低功耗PT下载服务器

利用Termux在安卓旧手机部署Transmission,打造低功耗PT下载服务器

1. 项目缘起:让闲置的安卓设备重获新生手头有台退役的安卓手机,性能尚可,但电池鼓包、屏幕老化,食之无味,弃之可惜。相信很多朋友都有类似的“电子垃圾”困扰。与其让它躺在抽屉里吃灰,不如挖掘一下它的剩余…

2026/8/1 7:39:02 阅读更多 →
Unity Canvas渲染模式详解:粒子特效与UI融合的实战指南

Unity Canvas渲染模式详解:粒子特效与UI融合的实战指南

1. 项目概述:当粒子遇上UI,Canvas渲染模式是关键 在Unity里做UI,Canvas是绕不开的核心组件。但很多开发者,尤其是刚接触Unity不久的朋友,常常会遇到一个让人头疼的问题:我精心制作的粒子特效,怎…

2026/8/1 7:39:02 阅读更多 →
详细教程:在Wampserver中为Apache服务器配置SSL证书实现HTTPS

详细教程:在Wampserver中为Apache服务器配置SSL证书实现HTTPS

实战教程:wampserver配置ssl证书 第一步 需要去申请ssl证书,SSL证书可以去阿里云免费申请,如果是企业用,可以购买一张证书。 第二步: 打开wamp的apache的配置文件:httpd.conf 找到 #LoadModule ssl_module …

2026/8/1 7:39:02 阅读更多 →
基于SVM的风力涡轮机故障智能检测系统设计与实现

基于SVM的风力涡轮机故障智能检测系统设计与实现

1. 项目背景与核心价值 风力涡轮机作为清洁能源的核心设备,其长期运行在恶劣环境中,齿轮箱、轴承等关键部件故障率高达23%(根据IEEE Transactions on Energy Conversion最新统计数据)。传统阈值报警方式误报率超过40%,…

2026/8/1 7:38:02 阅读更多 →

日新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/31 1:03:03 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/8/1 5:19:34 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/31 4:19:39 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →