【发布时间】:2018-02-24 04:51:39
【问题描述】:
在KDD99 data set中,大量的连接第32和第33特征的值大于100。
我不明白为什么使用 100 个连接的 connection window 可以获得大于 100 的值?我查阅了很多资料,但一无所获。
【问题讨论】:
标签: machine-learning dataset classification intrusion-detection network-security
在KDD99 data set中,大量的连接第32和第33特征的值大于100。
我不明白为什么使用 100 个连接的 connection window 可以获得大于 100 的值?我查阅了很多资料,但一无所获。
【问题讨论】:
标签: machine-learning dataset classification intrusion-detection network-security
数据集包含每个连接的41 features。
这些特性是通过预处理 TCP 转储文件获得的。
为此,TCP 转储文件中的数据包信息被汇总到连接中。具体来说(http://kdd.ics.uci.edu/databases/kddcup99/task.html):
一个连接是一个 TCP 数据包序列,开始和结束于某个位置 定义的时间,数据从源 IP 地址流向目标的时间 某些定义明确的协议下的 IP 地址。
一些特征(所谓的基于时间的交通特征)是在 2 秒的时间窗口内计算出来的。
其他功能(基于主机的流量功能)使用估计的连接数(在本例中为 100)的历史窗口。
基于主机的功能对于跨越间隔超过 2 的攻击很有用 秒。
2 秒和 100 次连接在某种程度上是任意值。
这两类特征的值没有上限(例如 2 秒间隔内与同一主机的连接数可以大于 100)。
同样的“应该”适用于:
32. | dst host count | count of connections having the same destination host
33. | dst host srv count | count of connections having the same
destination host and using the same service
问题在于没有解释 KDD 特征提取细节的文档。主要参考是:
A Framework for Constructing Features and Models for Intrusion Detection Systems - WENKE LEE / SALVATORE J. STOLFO
从中可以看出bro-ids tools 被使用了:
使用 Bro 作为数据包过滤和重组引擎。我们扩展了 Bro 以处理 ICMP 数据包,并对其数据包片段检查模块进行了更改,因为它在处理包含 Teardrop 或 Ping-of-Death 攻击的数据时崩溃了。我们使用 Bro“连接完成”事件处理程序来输出每个连接的汇总记录。
和
在 Bro 事件处理程序中,我们添加了检查交互式 TCP 连接(例如,telnet、ftp、smtp 等)的数据交换的功能。这些函数为一组“内容”特征分配值,以指示数据内容是否暗示可疑行为。
但这还不够。
dst host count 和 dst host srv count 都在 [0,255] 范围内。
Github 上的 AI-IDS/kdd99_feature_extractor 项目可以从原始数据中提取第 32 和第 33 特征(查看 stats*.cpp 文件)但是:
某些特征的计算方式可能与 KDD 中的计算方式不同
有关 Stackoverflow 的相关问题是:
【讨论】:
AI-IDS/kdd99_feature_extractor 项目开始