lua编写脚本在wireshark中实现,现有偏移是offset按位偏移,在某些字段需按bit解析,应该怎么做?

作者&投稿:闵裘 (若有异议请与网页底部的电邮联系)
Lua语言怎么实现按位与,按位或的操作~

luabit = require"bit"require"base"print(luabit)这样你就能看到所有的位运算了
常见的包括
{["band"] = function: 0055B430,["rshift"] = function: 0055B530,["bor"] = function: 0055B470,["bnot"] = function: 0055B3F0,["bswap"] = function: 0055B3B0,["bxor"] = function: 0055B4B0,["tobit"] = function: 0055B390,["ror"] = function: 00559C98,["lshift"] = function: 0055B4F0,["tohex"] = function: 0055B610,["rol"] = function: 0055B5B0,["arshift"] = function: 0055B570,}

定义一个带两个参数的宏,宏名为GetBit,作用是提取参数data中第offset比特的值。例子:GetBit(0x0001000,4)返回1,即第4比特的值。

比如说第一个bit代表的标志为flag1,后7个bit代表的标志为flag2。那么flag1和flag2作为要加入tree的field,可以表示为:

flag1=ProtoField.uint8("your_protol_flag1", "flag1", base.DEC, null, 0x80)

flag2=ProtoField.uint8("your_protol_flag2", "flag2", base.DEC, null, 0x7F)

其中0x80,0x7F为按位操作的掩码,作用分别是取uint8的第一位和后七位。

然后将field加入子树中即可:

subtree:add(flag1, buffer(offset+2, 1))

subtree:add(flag2, buffer(offset+2, 1))

-------------------------------------------

wireshark官方API地址为:网页链接



local AddrName = {
[0x00] = "Unit Address",
[0x01] = "Group Address",
};
local uiAddrType = ProtoField.uint8("ADDR_TYPE","Address Types",base.OCT,AddrName,0x80);
把下一个byte分成两部分处理,第一个bit和后7个bit


电脑拆下后连不上网怎么办
小提示:sh命令是一个基于命令行的脚本编写工具,你可以使用此命令配置和监视Windows 系统أ。 5. 把电脑主机线拔掉,拆下电池后不能上网 解决方法: 1...5、用别人的电脑下载一个驱动精灵,最好在官网去下载。把浏览器的UA标识更改为电脑版,下载电脑版的驱动精灵。 6、然后在电脑上安装驱动精灵,最好安装在D盘...

怎样编写shell脚本实现统计一个小组的成绩情况,统计信息包括:总分,平均...
依次取出数组里面的数据\\x0d\\x0a\\x0d\\x0ado\\x0d\\x0a\\x0d\\x0a#对每个取出来的数据进行判断\\x0d\\x0a\\x0d\\x0a case ${sorted_arr[i]} in\\x0d\\x0a\\x0d\\x0a ?|?\\.*|[1-5]?|[1-5]?\\.*)\\x0d\\x0a\\x0d\\x0a#如果取出数组里面的数据在60分以下\\x0d\\x0a\\...

求救,进程里有uaservice7.exe 用户名是SYSTEM
描述: Debug除错管理用于调试应用程序和Microsoft Office中的Microsoft Script Editor脚本编辑器。是否为系统进程: 是 mmtask.tsk 进程文件: mmtask or mmtask.tsk 进程名称: 多媒体支持进程 描述: 这个Windows多媒体后台程序控制多媒体服务,例如MIDI。是否为系统进程: 是 mprexe.exe 进程文件: mprexe ...

shell脚本处理前5分钟的文件怎么写?详细请看下面介绍、谢谢了啊...
你可以不用计划任务,让这个脚本一直运行于后台。加个while循环,最后sleep 300s。while ture do time=`date +%Y%m%d_%H%M -d '5 min ago'`cd \/phd\/share\/phone for f in \/phd\/share\/cdma_http_p_"$time".gz do if [ -a "$f" ]then python UaParser_httpsave.py "$f"fi done s...

全网最全手机浏览器讲解
通过自定义UA、脚本支持和油猴插件,您可以进一步提升浏览器的灵活性。无论是对稳定性的提升,视频播放的优化,还是对个性化需求的满足,这些浏览器都提供了全面的解决方案。只需简单几步,您就能在X浏览器中启用脚本,或者在Yandex浏览器中安装插件,享受更为丰富的网络世界。现在,选择一个最适合您的...

百度云盘助手在哪里下载?
A3:是否安装了其他的百度网盘脚本或插件 , 请禁用删除后再试 A4:换用其他浏览器尝试 A5:确认脚本是否为最新版本,可以删除相关脚本重新安装 下载速度很慢,几十k怎么办?A1:账号可能被百度限速,可选择要下载的文件进行分享,打开生成的分享链接,在分享页面使用【下载助手】->【免登录链接】获取下载...

如何处理html5新标签的浏览器兼容问题
另外excanvas.js是Google为IE6支持canvas元素写的脚本,以后马海祥会跟大家再细说这样的例子,感兴趣的...在X-UA-Compatible中可用的方法有:

...木马程序 Trojan-Downloader.JS.gen (修改) 脚本: <unknown>,要怎么...
UARVCHXG RCQVDA49 UA27G8SD RBHVAZHP M1E3AQ1I RCQXB7C5 M1B3FP4T UAJSCGGN UAGVCA3H RCESBD7Q RCCWD7QV RCVXE19F UAGZC86B RCHVF64Q UAGVAS1G EBEH3YT5 EBEH44XP UAGUAHJV RCQVD7II UA27HICS RCHVEEGH UAGVD1UE UAERC3IG RCHVCZAD UAGVBKR7 UAJSANET EBEH3KFR RCQXAHJX M1...

3gqq梦幻西游谁教我怎么在电脑上玩我出100分
3. UltraEdit-32-v13.10(用于opera.dll文件的修改,即改浏览器的UA)相关软件在各大下载站点均可找到。下载并安装好相关软件后第一步 修改opera的UA打开Un...呵呵,用电脑可以了,我们就可以挂机了,用按键精灵编写脚本,相关教程看情况而定。 本回答被提问者和网友采纳 已赞过 已踩过< 你对这个回答的评价是?

为什么进QQ空间提示无法识别UA?
帮助 修复浏览器 根据提供的方案修复 (第三个方案)3、杀毒!4、点击IE浏览器中的“工具”,选择“internet选项”。2、在“常规”页面点击“删除文件”。3、然后勾上“同时删除脱机内容”,点击确定。二、打开“internet选项”后,进入“安全”页面,点击“自定义级别”。将“对标记为可安全执行脚本的...

聂荣县18383638423: lua编写wireshark脚本,位域怎么定义 -
景定正天: 以下为自定义RTP over HTTP协议解析器插件代码roh.lua:do --[[ Proto.new(name, desc) name: displayed in the column of “Protocol” in the packet list desc: displayed as the dissection tree root in the packet details --]] local PROTO_ROH = Proto(...

聂荣县18383638423: 请教一个关于使用lua脚本写Wireshark协议插件的问题 -
景定正天: Wireshark解析HTTP GET方法不会解析URI里Query字符串里的参数(通常由GET方式提交form数据),本文介绍用lua编写一个简单的协议解析器,让这些参数解析出来,并显示在wireshark协议解析窗口里. 首先编写以下解析器lua脚本(用文本编辑器编辑

聂荣县18383638423: console.lua是什么文件?开启wireshark时出错误,说打不开.
景定正天: 是wireshark的配置脚本文件,.lua后缀代表它是用lua语言编写. 这个应该不用关注里面具体的细节,你尝试重新安装一下wireshark看.

聂荣县18383638423: 请问*.pcap文件都是什么软件产生的啊?wireshark我知道保存的文件格式是.pcap文件,请问还有别的软件吗? -
景定正天: 应该是使用libpcap库或者winpcap库的软件都可以生成这个格式的.wireshark使用了libpcap或者winpcap作为底层的.其他工具如果也使用这两个库,也可以生成这样的格式.

聂荣县18383638423: wireshark怎么添加协议 -
景定正天: 如果熟悉lua编程,使用lua扩展就可以了.可以参考wireshark网站上的例子.我们很多私有的协议也是用lua写解析器的.当然,如果你想从头编译wireshark也可以,不过我觉得还是lua扩展相对容易写一些,并且wireshark目录下的chm帮助文件有lua编写的API参考.

聂荣县18383638423: 求解wireshark 怎么打不开pcap文件???
景定正天: 如果是从wireshark的界面打开,是不是也打不开?应该没这个问题的.很多同事电脑也不一样的,都可以正常打开的. 其实这个就是个文件关联,跟wireshark没有任何关系.我也被你迷惑了,以为是从wireshark的菜单都打不开的.这种情况你修改文件关联,把pcap关联到wireshark就可以了.

聂荣县18383638423: 如何查看tshark 是否支持lua -
景定正天: centos下安装wireshark相当简单.两条命令就够了.这里.主要是记录写使用方面的东西 安装:1、yum install wireshark.注意这样并无法使用wireshark命令和图形界面.但提供了抓包基本功能.2、yum install wireshark-gnome.这样就可以方便的...

聂荣县18383638423: 如何扩展Wireshark用于解析自定义的网络协议 -
景定正天: 使用lua扩展,有个init.lua是控制lua扩展的,随机文档中有一章专门写了wireshark的lua扩展,以后也许支持python扩展.当然,c扩展也可以,不过难度大很多,需要编译.wireshark网站上也有关于写lua扩展的支持.网上也有很多别人写好的lua扩展的例子.

聂荣县18383638423: 使用wireshark打开pcap -
景定正天: 因为内存没那么大 存放 可以使用基于进程抓包QPA工具,抓包分析更加简单,QPA可以打开

聂荣县18383638423: 怎样在centos安装wireshark
景定正天: 一、安装 以root用户运行:yum install wireshark 二、运行 在终端中键入命令: #wireshark bash:wireshark:command not found #whereis wireshark wireshark: /usr/lib/wireshark /usr/share/wireshark #cd /usr/lib/wireshark #ls plugins #cd /usr/share/...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网