Winshark是一款什么插件

这篇文章给大家分享的是有关Winshark是一款什么插件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

创新互联专注于企业营销型网站、网站重做改版、会宁网站定制设计、自适应品牌网站建设、H5响应式网站成都做商城网站、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为会宁等各大城市提供网站开发制作服务。

Winshark

Winshark是一款用于控制ETW的Wireshark插件,ETW(Event Tracing for Windows)提供了一种对用户层应用程序和内核层驱动创建的事件对象的跟踪记录机制。为开发者提供了一套快速、可靠、通用的一系列事件跟踪特性。Microsoft Message Analyzer早就已经过时了,而且它的下载包早在2019年11月25日也被微软从其官网上移除了。Wireshark建立了一个庞大的网络协议剖析器工具库,为了帮助广大研究人员更好地收集和分析各种类型的网络日志,Winshark便应运而生。

Winshark基于libpcap作为后端来捕捉ETW(Event Tracing for Windows),并且提供了一个生成器来在设备上为已知ETW生成所有的解析器。除此之外,我们害廷加了Tracelogging支持来覆盖绝大多数的Windows操作系统日志技术。

在Winshark以及Windows系统强大功能的帮助下,我们可以在同一工具下捕捉网络和事件日志。

在工具使用方面,Winshark的诞生有着重要意义:

  • 支持混合所有类型的事件,包括网络事件和系统事件;

  • 支持针对事件日志使用Wireshark过滤功能;

  • 支持通过进程ID来跟踪网络和系统日志;

  • 支持捕捉pacp文件中的Windows日志和网络痕迹;

  • 通过NpEtw文件系统过滤驱动器捕捉命名管道;

工具安装

在使用Winshark之前,请先安装Wireshark。

现在,你需要让Wireshark将DLT_USER 147解释为ETW,这是因为我们在使用之前还没有从libpcap获取到真实的值,之后我们才能发送一个pull请求来获取到专门的DLT值。在这里,我们需要打开Edit控制面板中的Preferences标签页,选择Protocols设置下的DLT_USER,然后点击Edit并填写完对话框中的信息:

Winshark是一款什么插件

接下来,将etw值设置为DLT = 147:

Winshark是一款什么插件

工具构建

Winshark由cmake驱动,工具的构建配置命令如下:

git clone https://github.com/airbus-cert/winshark --recursive

mkdir build_winshark

cd build_winshark

cmake ..\Winshark

cmake --build . --target package --config release

捕捉网络流量

为了使用Winshark来捕捉网络流量,我们需要通过netsh来激活网络追踪功能:

netsh.exe trace start capture=yes report=no correlation=no

接下来,创建一个跟Microsoft-Windows-NDIS-PacketCapture供应器绑定的ETW会话:

logman start Winshark-PacketCapture -p "Microsoft-Windows-NDIS-PacketCapture" -rt -ets

然后使用管理员权限启动Wireshark,并选择Winshark-PacketCapture接口:

Winshark是一款什么插件

接下来,我们就可以开始捕捉网络数据包了:

Winshark是一款什么插件

基于进程ID过滤

ETW利用每个数据包的Header来进行数据包标记,而Header中总会包含关于数据发送方的某些元数据,其中一个就是发送工具的进程ID。我们可以使用下列语句来配置Wireshark的过滤功能:

etw.header.ProcessId == 1234

Winshark是一款什么插件

捕捉命名管道

安装

首先,我们需要使用下列命令通过测试模式下的驱动器签名检测:

bcdedit /set testsigning on

接下来,安装NpEtwSetup.msi,然后重启设备。

然后使用管理员权限运行“C:\Program Files\Wireshark\WinsharkUpdate.bat”来更新Winshark解析器。

命名管道捕捉

首先,使用管理员权限打开一个cmd.exe命令行窗口,然后使用下列命令开启驱动器:

sc start NpEtw

接下来,创建一个ETW会话:

logman start namedpipe -p NpEtw -ets -rt

现在,打开Wireshark,然后选择namedpipe会话即可。

Winshark是一款什么插件

感谢各位的阅读!关于“Winshark是一款什么插件”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


本文名称:Winshark是一款什么插件
文章转载:http://csdahua.cn/article/jjdjso.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流