[当人工智能遇上安全] 7.基于机器学习的安全数据集总结
您或許知道,作者后續分享網絡安全的文章會越來越少。但如果您想學習人工智能和安全結合的應用,您就有福利了,作者將重新打造一個《當人工智能遇上安全》系列博客,詳細介紹人工智能與安全相關的論文、實踐,并分享各種案例,涉及惡意代碼檢測、惡意請求識別、入侵檢測、對抗樣本等等。只想更好地幫助初學者,更加成體系的分享新知識。該系列文章會更加聚焦,更加學術,更加深入,也是作者的慢慢成長史。換專業確實挺難的,系統安全也是塊硬骨頭,但我也試試,看看自己未來四年究竟能將它學到什么程度,漫漫長征路,偏向虎山行。享受過程,一起加油~
前一篇文章普及了基于機器學習的入侵檢測和攻擊識別。為了更好的幫助大家從事安全領域機器學習和深度學習(AI+安全)相關的研究,這篇文章將分享安全相關的數據集供大家下載和實驗,包括惡意URL、流量分析、域名檢測、惡意軟件、圖像分類、垃圾郵件等,也歡迎大家留言推薦數據集供我補充。基礎性文章,希望對您有所幫助~
文章目錄
- KDD CUP 99
- HTTP DATASET CSIC 2010
- honeypot.json
- Masquerading User Data
- ADFA IDS Datasets
- 域名相關
- Webshell
- 登錄日志
- 惡意URL
- 綜合安全數據
- The Malware Capture Facility Project
- 惡意軟件數據庫
- APT攻擊數據集
- 圖像分類數據集-1000
- MNIST-手寫數字
- 垃圾郵件數據集
- 自然災害數據集
作者作為網絡安全的小白,分享一些自學基礎教程給大家,主要是在線筆記,希望您們喜歡。同時,更希望您能與我一起操作和進步,后續將深入學習AI安全和系統安全知識并分享相關實驗。總之,希望該系列文章對博友有所幫助,寫文不易,大神們不喜勿噴,謝謝!如果文章對您有幫助,將是我創作的最大動力,點贊、評論、私聊均可,一起加油喔!
前文推薦:
- [當人工智能遇上安全] 1.人工智能真的安全嗎?浙大團隊外灘大會分享AI對抗樣本技術
- [當人工智能遇上安全] 2.清華張超老師 - GreyOne: Discover Vulnerabilities with Data Flow Sensitive Fuzzing
- [當人工智能遇上安全] 3.安全領域中的機器學習及機器學習惡意請求識別案例分享
- [當人工智能遇上安全] 4.基于機器學習的惡意代碼檢測技術詳解
- [當人工智能遇上安全] 5.基于機器學習算法的主機惡意代碼識別研究
- [當人工智能遇上安全] 6.基于機器學習的入侵檢測和攻擊識別——以KDD CUP99數據集為例
- [當人工智能遇上安全] 7.基于機器學習的安全數據集總結
作者的github資源:
- https://github.com/eastmountyxz/AI-Security-Paper
KDD CUP 99
KDD CUP 99 dataset 是KDD競賽在1999年舉行時采用的數據集。1998年美國國防部高級規劃署(DARPA)在MIT林肯實驗室進行了一項入侵檢測評估項目收集而來的數據,其競爭任務是建立一個網絡入侵檢測器,這是一種能夠區分稱為入侵或攻擊的“不良”連接和“良好”的正常連接的預測模型。該數據集包含一組要審核的標準數據,其中包括在軍事網絡環境中模擬的多種入侵。
- 內容類型:網絡流量,主機行為
- 是否特征化: 是
- 適用范圍:主機入侵檢測,異常流量監控
- 下載地址:http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html
- 數據示例:
數據文件包括:
kddcup.names 功能列表。 kddcup.data.gz 完整數據集(18M; 743M未壓縮) kddcup.data_10_percent.gz 10%的數據集(2.1M; 75M未壓縮) kddcup.newtestdata_10_percent_unlabeled.gz(1.4M; 45M未壓縮) kddcup.testdata.unlabeled.gz (11.2M; 430M未壓縮) kddcup.testdata.unlabeled_10_percent.gz (1.4M; 45M未壓縮) corrected.gz 正確標簽的測試數據 training_attack_types 入侵類型列表 typo-correction.txt 關于數據集中的簡要說明推薦文章:基于機器學習的入侵檢測和攻擊識別——以KDD CUP99數據集為例
HTTP DATASET CSIC 2010
HTTP DATASET CSIC 2010 包含已經標注過的針對Web服務的請求。該數據集由西班牙最高科研理事會 CSIC 在論文 Application of the Generic Feature Selection Measure in Detection of Web Attacks 中作為附件給出的,是一個電子商務網站的訪問日志,包含 36000 個正常請求和 25000 多個攻擊請求。異常請求樣本中包含 SQL 注入、文件遍歷、CRLF 注入、XSS、SSI 等攻擊樣本。其中,下載地址已經為我們分類好了訓練用的正常數據,測試用的正常數據,測試用的異常數據。
- 內容類型:網絡流量
- 是否特征化:否
- 使用范圍:WAF類產品,異常流量監控
- 下載地址:
http://www.isi.csic.es/dataset/
https://github.com/zambery/Machine-Learning-on-CSIC-2010 - 數據示例:
推薦文章:
- 機器學習實戰之CSIC2010網絡攻擊數據 - Ackerzy
- 崔艷鵬,劉咪,胡建偉. 基于CNN的惡意Web請求檢測技術[J]. 計算機科學, 2020,47(2): 281-286.
honeypot.json
honeypot 是由多種類型的蜜罐采集回來的數據,主要是WEB請求,約99萬條數據。由于沒有分類和規整,需要自己數據清洗,也可以用作校驗模型的數據。
- 內容類型:網絡流量
- 是否特征化:否
- 使用范圍: WAF類產品,異常流量監控
- 下載地址:http://www.secrepo.com/honeypot/honeypot.json.zip
- 數據示例:
Masquerading User Data
Masquerading User Data 是Matthias Schonlau 教授通過正常數據構造出來用于訓練和檢測 Masquerading User攻擊的數據集。內部攻擊者分為兩種,一種是內鬼[Traitor],一種是竊取了身份憑證的正常用戶的偽裝者[Masquerading User]。由于是構造出來的數據,缺乏實際攻擊的真實性,在一定程度上,訓練出來的模型會存在一定的過擬。
- 內容類型:主機行為
- 是否特征化:否
- 使用范圍:入侵檢測類 用戶異常行為識別
- 下載地址:http://www.schonlau.net/intrusion.html
- 數據示例:
ADFA IDS Datasets
ADFA IDS Datasets 是澳大利亞國防大學發布的一套關于HIDS的數據集。分為linux(ADFA-LD)和window(ADFA-WD)。
- 內容類型: 主機行為
- 是否特征化:是
- 使用范圍: 入侵檢測
- 下載地址:https://www.unsw.adfa.edu.au/unsw-canberra-cyber/cybersecurity/ADFA-IDS-Datasets/
– The ADFA Linux Dataset (ADFA-LD)
– The ADFA Windows Dataset (ADFA-WD)
– Stealth Attacks Addendum (ADFA-WD:SAA) - 數據示例:
域名相關
DGA 正常域名和可疑域名檢測,主要用于DGA的檢測。這里直接用Alexa Top 100W 作為正常域名,用其他的開放的DGA數據作為黑樣本。
- 內容類型:文本樣本
- 是否特征化:否
- 使用范圍:入侵檢測 異常流量 WAF
- 下載地址
Alexa Top 100W:http://s3.amazonaws.com/alexa-static/top-1m.csv.zip
360DGA:http://data.netlab.360.com/dga/
zeusDGA:http://www.secrepo.com/misc/zeus_dga_domains.txt.zip - 數據示例:
Webshell
Webshell數據集 是github有一個比較多樣本的收集,涵蓋了很多的語言。
- 內容類型:文本樣本
- 是否特征化:否
- 使用范圍:入侵檢測 異常流量 WAF
- 下載地址:
– https://github.com/tennc/webshell
– https://github.com/ysrc/webshell-sample - 數據示例:
登錄日志
auth.log 主要是都是登錄失敗的日志 適合用作判斷是爆破登錄還是正常的輸錯密碼
- 內容類型:主機行為
- 是否特征化:否
- 使用范圍:入侵檢測 異常流量 WAF
- 下載地址:http://www.secrepo.com/auth.log/auth.log.gz
- 數據示例:
惡意URL
- malicious-URLs 在Github上面一個 使用機器學習去檢測惡意URL的項目 ,里面有一個訓練集,有做標記是正常的URL還是惡意的URL
- 內容類型: 文本樣本
- 是否特征化:否
- 使用范圍: 入侵檢測 異常流量 WAF
- 下載地址&檢測方法:
https://github.com/faizann24/Using-machine-learning-to-detect-malicious-URLs
https://github.com/exp-db/AI-Driven-WAF
https://github.com/Echo-Ws/UrlDetect - 數據示例:
推薦作者文章:基于機器學習的惡意請求識別及安全領域中的機器學習
綜合安全數據
在github上有一個叫 Security-Data-Analysis 的項目,里面有4個實驗室,每個實驗室的數據都不一樣,包含http、連接記錄、域名、host等等。
- 內容類型:網絡流量
- 是否特征化:否
- 使用范圍:異常流量
- 下載地址:https://github.com/sooshie/Security-Data-Analysis
- 數據示例:
The Malware Capture Facility Project
MCFP 是捷克理工大學用于捕抓惡意軟件的而抓去的網絡流量,里面的數據非常多,有他們自己分析出來的惡意流量,也有所有的流量,包括網絡文件、日志、DNS請求等。
- 內容類型:網絡流量
- 是否特征化:否
- 使用范圍: 異常流量 WAF
- 下載地址:https://mcfp.weebly.com/mcfp-dataset.html
- 數據示例:
惡意軟件數據庫
MalwareDB 包含了惡意軟件列表 hash檢測結果,所屬域名等數據。
- 內容類型:文本樣本
- 使用范圍:特征庫 入侵檢測
- 下載地址:
http://malwaredb.malekal.com/
https://bbs.kafan.cn/thread-2156285-1-1.html - 數據示例:
APT攻擊數據集
非常棒的兩個數據集,APT樣本HASH值和APT報告。
- https://github.com/RedDrip7/APT_Digital_Weapon
- https://github.com/kbandla/APTnotes
下載推薦:
- https://virusshare.com/
- https://virusshare.com/
- https://app.any.run/
圖像分類數據集-1000
Sort_1000pics數據集 包含了1000張圖片,總共分為10大類,分別是人(第0類)、沙灘(第1類)、建筑(第2類)、大卡車(第3類)、恐龍(第4類)、大象(第5類)、花朵(第6類)、馬(第7類)、山峰(第8類)和食品(第9類),每類100張。
- 內容類型:圖像樣本
- 使用范圍:圖像分類、惡意家族分類
- 推薦理由:個人感覺這是圖像分類實驗的基礎,惡意樣本轉換灰度圖進行惡意家族分類實驗也都可以基于此實驗拓展
- 下載地址:https://github.com/eastmountyxz/ImageProcessing-Python
- 數據示例:
通常會將所有各類圖像按照對應的類標劃分至“0”至“9”命名的文件夾中,如圖所示,每個文件夾中均包含了100張圖像,對應同一類別。
比如,文件夾名稱為“6”中包含了100張花的圖像,如下圖所示。
推薦作者文章:圖像分類原理及基于KNN、樸素貝葉斯算法的圖像分類案例
MNIST-手寫數字
MNIST數據集 是手寫體識別數據集,也是入門級的計算機視覺數據集。MNIST圖片數據集包含了大量的數字手寫體圖片,如下圖所示,我們可以嘗試用它進行分類實驗。該數據集共包含三部分:
- 訓練數據集:55,000個樣本,mnist.train
- 測試數據集:10,000個樣本,mnist.test
- 驗證數據集:5,000個樣本,mnist.validation
MNIST數據集中的一個樣本數據包含兩部分內容:手寫體圖片和對應的label。這里我們用xs和ys分別代表圖片和對應的label,訓練數據集和測試數據集都有xs和ys,使用mnist.train.images和mnist.train.labels表示訓練數據集中圖片數據和對應的label數據。如下圖所示,它表示由28x28的像素點矩陣組成的一張圖片,這里的數字784(28x28)如果放在我們的神經網絡中,它就是x輸入的大小,其對應的矩陣如下圖所示,類標label為1。
- 內容類型:圖像樣本
- 使用范圍:圖像分類、惡意家族分類
- 推薦理由:個人感覺這是圖像分類實驗的基礎,惡意樣本轉換灰度圖進行惡意家族分類實驗也都可以基于此實驗拓展
- 下載地址:
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets(‘MNIST_data’, one_hot=True) - 推薦作者文章:
TensorFlow實現分類學習及MNIST手寫體識別案例
Keras搭建分類神經網絡及MNIST數字圖像案例分析
垃圾郵件數據集
SpamBase數據集 入門級垃圾郵件分類訓練集,其包含57個屬性和4601個實例,該數據集主要用于垃圾郵件的識別分類,其中垃圾郵件的資源均來自于郵件管理員和提交垃圾郵件的個人,其可被用于構建垃圾郵件過濾器。該數據集由惠普實驗室于1999年7月發布,主要發布人有Mark Hopkins、Erik Reeber、George Forman和Jaap Suermondt。另一個垃圾郵件數據集是 Enron。
- 內容類型:垃圾郵件
- 使用范圍:郵件分類、垃圾郵件識別分類
- 下載地址:https://hyper.ai/datasets/4949
- 數據示例:
自然災害數據集
xBD數據集 是迄今為止第一個建筑破壞評估數據集,是帶注釋的高分辨率衛星圖像的規模最大、質量最高的公共數據集之一。該數據集包含22068張圖像,均是1024x1024的高分辨率衛星遙感圖像,標記有19種不同的事件,包括地震、洪水、野火、火山爆發和車禍等。這些圖像包括了災前、災后圖像,圖像可用于構建定位和損傷評估這兩項任務。
- 發布機構:麻省理工學院
- 內容類型:圖像樣本
- 數據大小:31.2GB
- 使用范圍:圖像分類、自然災害識別
- 推薦理由:個人感覺該數據集對于對抗樣本、AI和安全結合的案例有幫助
- 下載地址:https://hyper.ai/datasets/13272
- 相關論文:《Building Disaster Damage Assessment in Satellite Imagery with Multi-Temporal Fusion》(《具有多時相融合的衛星影像中的建筑物災害破壞評估》)
總結
學習安全或深度學習數據集是第一步,可能很多同學會受到數據集的困擾,真心希望這些數據集對您有所幫助,也歡迎大家繼續補充新的數據集。作者后續會整理這些年抓取的文本數據以開源,供大家進行文本挖掘或NLP研究。
同時感覺自己要學習的知識好多,也有好多大神臥虎藏龍,開源分享。作為初學者,我和他們有很大差距,但不論之前是什么方向,是什么工作,是什么學歷,我都會朝著這個目標去努力!有差距不可怕,我們需要的是去縮小差距,去戰斗,況且這個學習的歷程真的很美,AI和安全真的有意思,共勉~
最后,給科研初學者安利一張SCI論文撰寫的技巧圖(源自中科院王老師),返校科研近十天,修改了兩篇論文,寫了一個本子,做了一次PPT匯報,正在做第四個和第五個工作的實驗,加油!
?小珞珞這嫌棄的小眼神,也拿到了最喜歡的玩具——掃把,哈哈。最近社交媒體賬號都注銷了,博客基本停更,手機很少看,朋友圈估計明年或半年后再見,專心科研,非誠勿擾,有事短信留言。拿出最好的狀態,fighting~?天行健,君子以自強不息。地勢坤,君子以厚德載物。
(By:Eastmount 2022-02-22 夜于武漢 https://blog.csdn.net/Eastmount )
參考資料:
[1] https://xz.aliyun.com/t/1879
[2] https://blog.csdn.net/u011311291/article/details/79045675
[3] https://hyper.ai/datasets/4949
總結
以上是生活随笔為你收集整理的[当人工智能遇上安全] 7.基于机器学习的安全数据集总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Python从零到壹] 四十一.图像处
- 下一篇: [网络安全提高篇] 一一五.Powers