入侵检测数据集

时间:2024-03-13 11:35:55

入侵检测数据集

记录下常用入侵检测数据集的结构、来源背景

DARPA 98/99/00

DARPA Intrusion Detection Data Sets

麻省理工学院林肯实验室发布的用于评估网络入侵检测系统的标准语料库。

DARPA 98

DARPA 99

  • 包含三周的训练数据
    每天的文件结构为
    outside.tcpdump.gz - 外部嗅探数据(Tcpdump格式)
    inside.tcpdump.gz - 内部嗅探数据(Tcpdump格式)
    pascal.bsm.gz - BSM审核数据(来自pascal)
    hume_evt.tar.gz - NT审核数据(来自hume)
    directory_dumps.tar.gz - 目录树的详细列表(来自pascal,marx,zeno和hume)
    fs_listing.tar.gz - 选定目录的转储(来自pascal,marx,zeno和hume)

训练数据的第一周和第三周不包含任何攻击。提供此数据是为了便于训练异常检测系统。

DARPA 2000(略)

KDD99

数据挖掘方向竞赛,github页面多是用机器学习实现入侵检测
数据集下载地址:KDD Cup 1999 Data
是包含41个特征的高维描述
每行一条记录,如:
0,tcp,http,SF,181,5450,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,9,9,1.00,0.00,0.11,0.00,0.00,0.00,0.00,0.00,normal.

TCP连接基本特征(共9种)
基本连接特征包含了一些连接的基本属性,如连续时间,协议类型,传送的字节数等。

  1. duration. 连接持续时间,以秒为单位,连续类型。范围是 [0, 58329] 。它的定义是从TCP连接以3次握手建立算起,到FIN/ACK连接结束为止的时间;若为UDP协议类型,则将每个UDP数据包作为一条连接。数据集中出现大量的duration = 0 的情况,是因为该条连接的持续时间不足1秒。
  2. protocol_type. 协议类型,离散类型,共有3种:TCP, UDP, ICMP。
  3. service. 目标主机的网络服务类型,离散类型,共有70种。’aol’, ‘auth’, ‘bgp’, ‘courier’, ‘csnet_ns’, ‘ctf’, ‘daytime’, ‘discard’, ‘domain’, ‘domain_u’, ‘echo’, ‘eco_i’, ‘ecr_i’, ‘efs’, ‘exec’, ‘finger’, ‘ftp’, ‘ftp_data’, ‘gopher’, ‘harvest’, ‘hostnames’, ‘http’, ‘http_2784′, ‘http_443′, ‘http_8001′, ‘imap4′, ‘IRC’, ‘iso_tsap’, ‘klogin’, ‘kshell’, ‘ldap’, ‘link’, ‘login’, ‘mtp’, ‘name’, ‘netbios_dgm’, ‘netbios_ns’, ‘netbios_ssn’, ‘netstat’, ‘nnsp’, ‘nntp’, ‘ntp_u’, ‘other’, ‘pm_dump’, ‘pop_2′, ‘pop_3′, ‘printer’, ‘private’, ‘red_i’, ‘remote_job’, ‘rje’, ‘shell’, ‘smtp’, ‘sql_net’, ‘ssh’, ‘sunrpc’, ‘supdup’, ‘systat’, ‘telnet’, ‘tftp_u’, ‘tim_i’, ‘time’, ‘urh_i’, ‘urp_i’, ‘uucp’, ‘uucp_path’, ‘vmnet’, ‘whois’, ‘X11′, ‘Z39_50′。
  4. flag. 连接正常或错误的状态,离散类型,共11种。’OTH’, ‘REJ’, ‘RSTO’, ‘RSTOS0′, ‘RSTR’, ‘S0′, ‘S1′, ‘S2′, ‘S3′, ‘SF’, ‘SH’。它表示该连接是否按照协议要求开始或完成。例如SF表示连接正常建立并终止;S0表示只接到了SYN请求数据包,而没有后面的SYN/ACK。其中SF表示正常,其他10种都是error。
  5. src_bytes. 从源主机到目标主机的数据的字节数,连续类型,范围是 [0, 1379963888]。
  6. dst_bytes. 从目标主机到源主机的数据的字节数,连续类型,范围是 [0. 1309937401]。
  7. land. 若连接来自/送达同一个主机/端口则为1,否则为0,离散类型,0或1。
  8. wrong_fragment. 错误分段的数量,连续类型,范围是 [0, 3]。
  9. urgent. 加急包的个数,连续类型,范围是[0, 14]。

TCP连接的内容特征(共13种)

对于U2R和R2L之类的攻击,由于它们不像DoS攻击那样在数据记录中具有频繁序列模式,而一般都是嵌入在数据包的数据负载里面,单一的数据包和正常连接没有什么区别。为了检测这类攻击,Wenke Lee等从数据内容里面抽取了部分可能反映入侵行为的内容特征,如登录失败的次数等。

  1. hot. 访问系统敏感文件和目录的次数,连续,范围是 [0, 101]。例如访问系统目录,建立或执行程序等。
  2. num_failed_logins. 登录尝试失败的次数。连续,[0, 5]。
  3. logged_in. 成功登录则为1,否则为0,离散,0或1。
  4. num_compromised. compromised条件(**)出现的次数,连续,[0, 7479]。
  5. root_shell. 若获得root shell 则为1,否则为0,离散,0或1。root_shell是指获得超级用户权限。
  6. su_attempted. 若出现”su root” 命令则为1,否则为0,离散,0或1。
  7. num_root. root用户访问次数,连续,[0, 7468]。
  8. num_file_creations. 文件创建操作的次数,连续,[0, 100]。
  9. num_shells. 使用shell命令的次数,连续,[0, 5]。
  10. num_access_files. 访问控制文件的次数,连续,[0, 9]。例如对 /etc/passwd 或 .rhosts 文件的访问。
  11. num_outbound_cmds. 一个FTP会话中出站连接的次数,连续,0。数据集中这一特征出现次数为0。
  12. is_hot_login.登录是否属于“hot”列表(***),是为1,否则为0,离散,0或1。例如超级用户或管理员登录
  13. is_guest_login. 若是guest 登录则为1,否则为0,离散,0或1。

基于时间的网络流量统计特征 (共9种,23~31)
由于网络攻击事件在时间上有很强的关联性,因此统计出当前连接记录与之前一段时间内的连接记录之间存在的某些联系,可以更好的反映连接之间的关系。这类特征又分为两种集合:一个是 “same host”特征,只观察在过去两秒内与当前连接有相同目标主机的连接,例如相同的连接数,在这些相同连接与当前连接有相同的服务的连接等等;另一个是 “same service”特征,只观察过去两秒内与当前连接有相同服务的连接,例如这样的连接有多少个,其中有多少出现SYN错误或者REJ错误。

  1. count. 过去两秒内,与当前连接具有相同的目标主机的连接数,连续,[0, 511]。
  2. srv_count. 过去两秒内,与当前连接具有相同服务的连接数,连续,[0, 511]。
  3. serror_rate. 过去两秒内,在与当前连接具有相同目标主机的连接中,出现“SYN” 错误的连接的百分比,连续,[0.00, 1.00]。
  4. srv_serror_rate. 过去两秒内,在与当前连接具有相同服务的连接中,出现“SYN” 错误的连接的百分比,连续,[0.00, 1.00]。
  5. rerror_rate. 过去两秒内,在与当前连接具有相同目标主机的连接中,出现“REJ” 错误的连接的百分比,连续,[0.00, 1.00]。
  6. srv_rerror_rate. 过去两秒内,在与当前连接具有相同服务的连接中,出现“REJ” 错误的连接的百分比,连续,[0.00, 1.00]。
  7. same_srv_rate. 过去两秒内,在与当前连接具有相同目标主机的连接中,与当前连接具有相同服务的连接的百分比,连续,[0.00, 1.00]。
  8. diff_srv_rate. 过去两秒内,在与当前连接具有相同目标主机的连接中,与当前连接具有不同服务的连接的百分比,连续,[0.00, 1.00]。
  9. srv_diff_host_rate. 过去两秒内,在与当前连接具有相同服务的连接中,与当前连接具有不同目标主机的连接的百分比,连续,[0.00, 1.00]。

注:这一大类特征中,23、25、27、29、30这5个特征是 “same host” 特征,前提都是与当前连接具有相同目标主机的连接;24、26、28、31这4个特征是 “same service” 特征,前提都是与当前连接具有相同服务的连接。

基于主机的网络流量统计特征 (共10种,32~41)

基于时间的流量统计只是在过去两秒的范围内统计与当前连接之间的关系,而在实际入侵中,有些 Probing攻击使用慢速攻击模式来扫描主机或端口,当它们扫描的频率大于2秒的时候,基于时间的统计方法就无法从数据中找到关联。所以Wenke Lee等按照目标主机进行分类,使用一个具有100个连接的时间窗,统计当前连接之前100个连接记录中与当前连接具有相同目标主机的统计信息。

  1. dst_host_count. 前100个连接中,与当前连接具有相同目标主机的连接数,连续,[0, 255]。
  2. dst_host_srv_count. 前100个连接中,与当前连接具有相同目标主机相同服务的连接数,连续,[0, 255]。
  3. dst_host_same_srv_rate. 前100个连接中,与当前连接具有相同目标主机相同服务的连接所占的百分比,连续,[0.00, 1.00]。
  4. dst_host_diff_srv_rate. 前100个连接中,与当前连接具有相同目标主机不同服务的连接所占的百分比,连续,[0.00, 1.00]。
  5. dst_host_same_src_port_rate. 前100个连接中,与当前连接具有相同目标主机相同源端口的连接所占的百分比,连续,[0.00, 1.00]。
  6. dst_host_srv_diff_host_rate. 前100个连接中,与当前连接具有相同目标主机相同服务的连接中,与当前连接具有不同源主机的连接所占的百分比,连续,[0.00, 1.00]。
  7. dst_host_serror_rate. 前100个连接中,与当前连接具有相同目标主机的连接中,出现SYN错误的连接所占的百分比,连续,[0.00, 1.00]。
  8. dst_host_srv_serror_rate. 前100个连接中,与当前连接具有相同目标主机相同服务的连接中,出现SYN错误的连接所占的百分比,连续,[0.00, 1.00]。
  9. dst_host_rerror_rate. 前100个连接中,与当前连接具有相同目标主机的连接中,出现REJ错误的连接所占的百分比,连续,[0.00, 1.00]。
  10. dst_host_srv_rerror_rate. 前100个连接中,与当前连接具有相同目标主机相同服务的连接中,出现REJ错误的连接所占的百分比,连续,[0.00, 1.00]。

更多阅读:KDD CUP99数据集预处理(Python实现)

NSL KDD

https://www.unb.ca/cic/datasets/
更多阅读:NSL-KDD数据集介绍与下载
githubpython参考

IDS2018

更多阅读:CSE-CIC-IDS2018 下载
介绍

网络安全相关数据集介绍与下载

相关文章