天天看點

KDD CUP 99資料集之特征描述

KDD99資料集中每個連接配接(*)用41個特征來描述:

2, tcp, smtp, SF, 1684, 363, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 104, 66, 0.63, 0.03, 0.01, 0.00, 0.00, 0.00, 0.00, 0.00, normal.
0, tcp, private, REJ, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 1, 0.00, 0.00, 1.00, 1.00, 0.03, 0.55, 0.00, 208, 1, 0.00, 0.11, 0.18, 0.00, 0.01, 0.00, 0.42, 1.00, portsweep.
0, tcp, smtp, SF, 787, 329, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 76, 117, 0.49, 0.08, 0.01, 0.02, 0.00, 0.00, 0.00, 0.00, normal.

上面是資料集中的3條記錄,以CSV格式寫成,加上最後的标記(label),一共有42項,其中前41項特征分為4大類,下面按順序解釋各個特征的含義:

1. 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]。

2. TCP連接配接的内容特征(共13種)

對于U2R和R2L之類的攻擊,由于它們不像DoS攻擊那樣在資料記錄中具有頻繁序列模式,而一般都是嵌入在資料包的資料負載裡面,單一的資料包和正常連接配接沒有什麼差別。為了檢測這類攻擊,Wenke Lee等從資料内容裡面抽取了部分可能反映入侵行為的内容特征,如登入失敗的次數等。

(10)hot. 通路系統敏感檔案和目錄的次數,連續,範圍是 [0, 101]。例如通路系統目錄,建立或執行程式等。

(11)num_failed_logins. 登入嘗試失敗的次數。連續,[0, 5]。

(12)logged_in. 成功登入則為1,否則為0,離散,0或1。

(13)num_compromised. compromised條件(**)出現的次數,連續,[0, 7479]。

(14)root_shell. 若獲得root shell 則為1,否則為0,離散,0或1。root_shell是指獲得超級使用者權限。

(15)su_attempted. 若出現”su root” 指令則為1,否則為0,離散,0或1。

(16)num_root. root使用者通路次數,連續,[0, 7468]。

(17)num_file_creations. 檔案建立操作的次數,連續,[0, 100]。

(18)num_shells. 使用shell指令的次數,連續,[0, 5]。

(19)num_access_files. 通路控制檔案的次數,連續,[0, 9]。例如對 /etc/passwd 或 .rhosts 檔案的通路。

(20)num_outbound_cmds. 一個FTP會話中出站連接配接的次數,連續,0。資料集中這一特征出現次數為0。

(21)is_hot_login.登入是否屬于“hot”清單(***),是為1,否則為0,離散,0或1。例如超級使用者或管理者登入。

(22)is_guest_login. 若是guest 登入則為1,否則為0,離散,0或1。

餘下部分見:KDD CUP 99資料集之特征描述(下)

注釋:

(*)一條連接配接記錄的定義是:一個完整的TCP連接配接會話,或一個UDP資料包或一個ICMP資料包。

(**)“compromised condition”我了解為目标系統出現不正常的狀态,例如檔案或路徑” not found “,或使用“jump to” 跳轉指令等。

(***)”hot”清單有的資料解釋為授權主機清單,這裡我認為解釋為授權使用者更為合适。

參考資料:

<a href="https://docs.google.com/leaf?id=0B80-NXGHYtNbOGNlY2MyOGMtNTM0NS00OTY1LTljMzgtM2RiZGFmMzFjZTIx&amp;sort=name&amp;layout=list&amp;num=50" target="_blank">A data mining framework for constructing features and models for intrusion detection – by Wenke Lee</a>

3. 基于時間的網絡流量統計特征 (共9種,23~31)

由于網絡攻擊事件在時間上有很強的關聯性,是以統計出目前連接配接記錄與之前一段時間内的連接配接記錄之間存在的某些聯系,可以更好的反映連接配接之間的關系。這類特征又分為兩種集合:一個是 “same host”特征,隻觀察在過去兩秒内與目前連接配接有相同目标主機的連接配接,例如相同的連接配接數,在這些相同連接配接與目前連接配接有相同的服務的連接配接等等;另一個是 “same service”特征,隻觀察過去兩秒内與目前連接配接有相同服務的連接配接,例如這樣的連接配接有多少個,其中有多少出現SYN錯誤或者REJ錯誤。

(23)count. 過去兩秒内,與目前連接配接具有相同的目标主機的連接配接數,連續,[0, 511]。

(24)srv_count. 過去兩秒内,與目前連接配接具有相同服務的連接配接數,連續,[0, 511]。

(25)serror_rate. 過去兩秒内,在與目前連接配接具有相同目标主機的連接配接中,出現“SYN” 錯誤的連接配接的百分比,連續,[0.00, 1.00]。

(26)srv_serror_rate. 過去兩秒内,在與目前連接配接具有相同服務的連接配接中,出現“SYN” 錯誤的連接配接的百分比,連續,[0.00, 1.00]。

(27)rerror_rate. 過去兩秒内,在與目前連接配接具有相同目标主機的連接配接中,出現“REJ” 錯誤的連接配接的百分比,連續,[0.00, 1.00]。

(28)srv_rerror_rate. 過去兩秒内,在與目前連接配接具有相同服務的連接配接中,出現“REJ” 錯誤的連接配接的百分比,連續,[0.00, 1.00]。

(29)same_srv_rate. 過去兩秒内,在與目前連接配接具有相同目标主機的連接配接中,與目前連接配接具有相同服務的連接配接的百分比,連續,[0.00, 1.00]。

(30)diff_srv_rate. 過去兩秒内,在與目前連接配接具有相同目标主機的連接配接中,與目前連接配接具有不同服務的連接配接的百分比,連續,[0.00, 1.00]。

(31)srv_diff_host_rate. 過去兩秒内,在與目前連接配接具有相同服務的連接配接中,與目前連接配接具有不同目标主機的連接配接的百分比,連續,[0.00, 1.00]。

注:這一大類特征中,23、25、27、29、30這5個特征是 “same host” 特征,前提都是與目前連接配接具有相同目标主機的連接配接;24、26、28、31這4個特征是 “same service” 特征,前提都是與目前連接配接具有相同服務的連接配接。

4. 基于主機的網絡流量統計特征 (共10種,32~41)

基于時間的流量統計隻是在過去兩秒的範圍内統計與目前連接配接之間的關系,而在實際入侵中,有些 Probing攻擊使用慢速攻擊模式來掃描主機或端口,當它們掃描的頻率大于2秒的時候,基于時間的統計方法就無法從資料中找到關聯。是以Wenke Lee等按照目标主機進行分類,使用一個具有100個連接配接的時間窗,統計目前連接配接之前100個連接配接記錄中與目前連接配接具有相同目标主機的統計資訊。

(32)dst_host_count. 前100個連接配接中,與目前連接配接具有相同目标主機的連接配接數,連續,[0, 255]。

(33)dst_host_srv_count. 前100個連接配接中,與目前連接配接具有相同目标主機相同服務的連接配接數,連續,[0, 255]。

(34)dst_host_same_srv_rate. 前100個連接配接中,與目前連接配接具有相同目标主機相同服務的連接配接所占的百分比,連續,[0.00, 1.00]。

(35)dst_host_diff_srv_rate. 前100個連接配接中,與目前連接配接具有相同目标主機不同服務的連接配接所占的百分比,連續,[0.00, 1.00]。

(36)dst_host_same_src_port_rate. 前100個連接配接中,與目前連接配接具有相同目标主機相同源端口的連接配接所占的百分比,連續,[0.00, 1.00]。

(37)dst_host_srv_diff_host_rate. 前100個連接配接中,與目前連接配接具有相同目标主機相同服務的連接配接中,與目前連接配接具有不同源主機的連接配接所占的百分比,連續,[0.00, 1.00]。

(38)dst_host_serror_rate. 前100個連接配接中,與目前連接配接具有相同目标主機的連接配接中,出現SYN錯誤的連接配接所占的百分比,連續,[0.00, 1.00]。

(39)dst_host_srv_serror_rate. 前100個連接配接中,與目前連接配接具有相同目标主機相同服務的連接配接中,出現SYN錯誤的連接配接所占的百分比,連續,[0.00, 1.00]。

(40)dst_host_rerror_rate. 前100個連接配接中,與目前連接配接具有相同目标主機的連接配接中,出現REJ錯誤的連接配接所占的百分比,連續,[0.00, 1.00]。

(41)dst_host_srv_rerror_rate. 前100個連接配接中,與目前連接配接具有相同目标主機相同服務的連接配接中,出現REJ錯誤的連接配接所占的百分比,連續,[0.00, 1.00]。

到此,41個特征已全部介紹完。手工整理,如有錯誤或疑問,請留言。 

本文轉自 stock0991 51CTO部落格,原文連結:http://blog.51cto.com/qing0991/1716379