2023年12月5日发(作者:)

使用USTC-TK2016工具对USTC-TFC2016数据集进行处理——报错解决记录

关于如何运行以及下载USTC-TK2016数据处理工具,在项目的github中已经说得很详细了,本帖主要是记录一下运行过程中的报错及解

决方案。

错误一:

打开 PowerShell,运行第一步 1_1,报错:

Error: No files matched '2_SessionAllLayers'

No files to process

Error: No files matched '2_SessionL7'

No files to process

如图:

这我就纳闷了,脚本运行所在路径既没问题,2_Session 下的文件夹也应该是自动生成的,怎么会提示没有匹配的文件呢。看了一下程

序,找到原因了。按照github上的要求把USTC-TFC2016数据集下载下来并放到 1_Pcap 文件夹下,结构如下图:

1_Pcap

└─USTC-TFC2016

├─Benign

│ SMB.7z

│ Weibo.7z

└─Malware

Cridex.7z

Geodo.7z

Htbot.7z

Neris.7z

Nsis-ay.7z

Shifu.7z

Virut.7z

但是代码中却是这样写的

1_1

问题就出在第一行,这样肯定找不到文件啊,1_Pcap 文件夹下哪有 pcap 文件,应修改为:

#foreach($f in gci 1_Pcap *.pcap)

#

更改为:

foreach($f in gci 1_PcapUSTC-TFC2016Benign *.pcap) #

这里路径按照自己的修改,不一定和我完全一样

foreach($f in gci 1_PcapUSTC-TFC2016Malware *.pcap)

#

分别处理恶意流量和正常流量

再次运行就不会报这个错误了

错误二:

确定脚本程序没问题后接着运行,又报错了

未处理的异常: itializationException: “m”的类型初始值设定项引发异常。 ---> tFoundException: 未能加载文

件或程序集“PacketParser, Version=1.5.0.0, Culture=neutral, PublicKeyToken=null ”或它的某一个依赖项。系统找不到指定的文件。

文件名:“PacketParser, Version=1.5.0.0, Culture=neutral, PublicKeyToken=null”

在 m..cctor()

警告: 程序集绑定日志记录被关闭。

要启用程序集绑定失败日志记录,请将注册表值 [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD)设置为 1。

注意: 会有一些与程序集绑定失败日志记录关联的性能损失。

要关闭此功能,请移除注册表值 [HKLMSoftwareMicrosoftFusion!EnableLog]。

--- 内部异常堆栈跟踪的结尾 ---

在 (String[] args)

USTC-TK2016

├─0_Tool

└─SplitCap_2-1

再次运行就不会报错了,注意:运行 1_1 脚本花费的时间会比较长