近日,外媒刊登了一篇機器學習與網絡安全相關的資料大匯總,文中列出了相關數據源的獲取途徑,優秀的論文和書籍,以及豐富的教程。大部分都是作者在日常工作和學習中親自使用并認為值得安利的純干貨。
數據源
SecRepo.com?網站,該網站匯聚了大量的與機器學習和網絡安全相關的數據源,并提供免費下載。據網站首頁介紹,所有可用的數據源包含兩個部分:一是網站方面自己整理的,二是來自第三方的。其內容包括互聯網掃描數據,惡意軟件源碼,以及和網絡安全相關的系統日志等。
論文
1. Fast, Lean, and Accurate: Modeling Password Guessability Using Neural Networks
(https://www.usenix.org/conference/usenixsecurity16/technical-sessions/presentation/melicher)
本文來自卡內基梅隆大學,分析了通用符號密碼的脆弱性,以及目前常見的密碼健壯性檢驗的各種缺點,甚至給出了他們在實驗室利用神經網絡算法攻破各種符號密碼的具體步驟,非常強大。
2. Outside the Closed World: On Using Machine Learning for Network Intrusion Detection
(http://ieeexplore.ieee.org/document/5504793/)
本文來自加州伯克利大學,分析了利用機器學習探測網絡安全的優勢和劣勢,并給出了一些改善這些劣勢的解決方案。
3. Anomalous Payload-Based Network Intrusion Detection
(https://link.springer.com/chapter/10.1007/978-3-540-30143-1_11)
通常一個互聯網上的惡意請求都會在真正的惡意代碼外部包裝一層善意的外衣,這大大阻礙了相關探測程序的正常工作。來自哥倫比亞大學的Ke Wang和Salvatore J. Stolfo兩位學者在本文中給出了一種全新的探測惡意代碼中有效代碼段的方法,并在實測中達到了接近100%正確率和0.1%的誤報率。
4. Malicious PDF detection using metadata and structural features
(https://dl.acm.org/citation.cfm?id=2420987)
當前,隨著防范措施的升級,惡意代碼隱藏在PDF和Word等文本文件中的例子屢見不鮮,用戶防不勝防。在本文中,來自喬治梅森大學的學者介紹了一種通過機器學習技術探測惡意文本文件的技術,特別是內含惡意代碼的PDF文件。
5. Adversarial support vector machine learning
(https://dl.acm.org/citation.cfm?id=2339697)
來自德州大學,介紹了兩種利用機器學習技術探測網絡惡意攻擊的分析模型,即無邊界攻擊模型(free-range attack model)和限制邊界攻擊模型(restrained attack model)。
6. Exploiting machine learning to subvert your spam filter
(https://dl.acm.org/citation.cfm?id=1387709.1387716)
垃圾郵件過濾系統不算什么高新技術,但如何提升過濾的準確性一直是一個難題。本文中來自加州伯克利大學的學者們介紹了一種基于機器學習開發的垃圾郵件過濾器,為垃圾郵件的過濾提供了一種全新的實現思路。
以下論文來自?covert.io?網站,該網站的論文(或博客)數量龐大,但并不像上文提到的那些論文一樣全部來自美國高校,covert.io 的文章也來自各大科技公司和研究所。
7. CAMP: Content-Agnostic Malware Protection
(http://www.covert.io/research-papers/security/CAMP%20-%20Content%20Agnostic%20Malware%20Protection.pdf)
來自谷歌,介紹了一種名為CAMP的惡意軟件保護系統,該系統能夠通過對二進制可執行文件的探測,確保互聯網的軟件應用安全。
8. Building a Dynamic Reputation System for DNS
(http://www.covert.io/research-papers/security/Notos%20-%20Building%20a%20dynamic%20reputation%20system%20for%20dns.pdf)
DNS服務器一直是互聯網中非常重要的組成部分,針對目前越來越流行的DNS攻擊,來自喬治亞理工學院的學者介紹了一種名為Notos的動態的域名信譽系統,可以有效防范各種針對DNS服務器的匿名的網絡黑客攻擊。
9. Detecting malware domains at the upper dns hierarchy
(http://www.covert.io/research-papers/security/Kopis%20-%20Detecting%20malware%20domains%20at%20the%20upper%20dns%20hierarchy.pdf)
本文介紹了一種名為Kopis的新型域名檢測系統,可以有效探測互聯網上包含惡意攻擊代碼的域名,由網絡安全公司Damballa、喬治亞理工學院和喬治亞大學聯合研發。
10. From Throw-away Traffic To Bots – Detecting The Rise Of DGA-based Malware
(http://www.covert.io/research-papers/security/From%20throw-away%20traffic%20to%20bots%20-%20detecting%20the%20rise%20of%20dga-based%20malware.pdf)
本文同樣來自Damballa公司和喬治亞大學,介紹了一種針對僵尸網絡的新技術,該技術夠探測來自動態域名系統的惡意攻擊,整合了聚合和分類兩類算法。
11. EXPOSURE: Finding Malicious Domains Using Passive DNS Analysis
(http://www.covert.io/research-papers/security/Exposure%20-%20Finding%20malicious%20domains%20using%20passive%20dns%20analysis.pdf)
DNS服務器成為了越來越多黑客的攻擊對象,本文介紹了一種名為EXPOSURE的域名分析系統,可以針對大批量的域名惡意訪問進行探測,由Eurecom研究所、波士頓東北大學和加州大學共同研發。
12. Polonium: Tera-Scale Graph Mining for Malware Detection
(http://www.covert.io/research-papers/security/Polonium%20-%20Tera-Scale%20Graph%20Mining%20for%20Malware%20Detection.pdf)
本文來自網絡安全公司Symantec、卡內基梅隆大學,介紹了一個名為Polonium的高效的可擴展的惡意軟件探測系統。
13. Nazca: Detecting Malware Distribution in Large-Scale Networks
(http://www.covert.io/research-papers/security/Nazca%20-%20%20Detecting%20Malware%20Distribution%20in%20Large-Scale%20Networks.pdf)
大量用戶在現實生活中下載并安裝惡意軟件的行為通常包含一定的規律性。來自加州大學圣巴巴拉分校、Narus公司的學者們將這些無人問津的數據利用起來,提出了一個名為Nazca的網絡安全探測系統。
14. Anagram: A Content Anomaly Detector Resistant to Mimicry Attack
(http://www.covert.io/research-papers/security/Anagram%20-%20A%20Content%20Anomaly%20Detector%20Resistant%20to%20Mimicry%20Attack.pdf)
來自哥倫比亞大學,介紹了一個名為Anagram的異常數據報文探測器。
書籍
講述數據科學和機器學習在網絡安全領域的應用的書籍并不多,作者只介紹了以下兩本。
1. Data Mining and Machine Learning in Cybersecurity
(https://www.amazon.cn/Data-Mining-and-Machine-Learning-in-Cybersecurity-Dua-Sumeet/dp/B00BU1CDFI/ref=sr_1_1?s=books&ie=UTF8&qid=1483425388&sr=1-1&keywords=Data+Mining+and+Machine+Learning+in+Cybersecurity)
作者是來自路易斯安那理工大學的Sumeet Dua博士和Xian Du博士,探討了目前普遍存在的網絡安全問題以及最先進的機器學習和數據挖掘解決方案。
2. Machine Learning and Data Mining for Computer Security
(https://www.amazon.cn/Machine-Learning-and-Data-Mining-for-Computer-Security-Methods-and-Applications/dp/184628029X)
編者是來自喬治城大學的Marcus A. Maloof,該書系統介紹了數據挖掘和機器學習技術在計算機安全領域的最新研究成果。
目前兩本書都沒有中文版,紙質版在亞馬遜上的售價都超過1000人民幣,第一本有Kindle電子版。
演講
原文作者收集了如下一些關于機器學習和網絡安全的演講,演講者們要么是來自相關領域的公司副總、技術負責人,要么是各大高校的研究人員、博士或者教授。
1. Using Machine Learning to Support Information Security
(https://www.youtube.com/watch?v=tukidI5vuBs)
視頻系統介紹了機器學習在信息安全領域的應用,時長約1小時。
2. Defending Networks with Incomplete Information
(https://www.youtube.com/watch?v=36IT9VgGr0g)
要在限定的時間內(通常是24小時)對惡意攻擊做出反應通常需要耗費巨大的人力和物力,但是如果利用機器學習的方法,首先對網絡攻擊進行優先級和攻擊方式分類,甚至處理一些簡單的套路式的攻擊,則可以大大降低網絡安全工程師的工作強度。本視頻就介紹了這一思路的具體應用,時長約47分鐘。
3. Applying Machine Learning to Network Security Monitoring
(https://www.youtube.com/watch?v=vy-jpFpm1AU)
這個視頻介紹了如何將機器學習應用于網絡安全探測,時長約1小時。
4. Measuring the IQ of your Threat Intelligence Feed
(https://www.youtube.com/watch?v=yG6QlHOAWiE)
目前互聯網上存在著各種各樣的網絡安全的探測系統,但是用戶對它們褒貶不一,究竟如何判斷一個探測系統的可靠性,視頻介紹了一種實用的判斷方法,時長約40分鐘。
5. Data-Driven Threat Intelligence: Metrics On Indicator Dissemination And Sharing
(https://www.youtube.com/watch?v=6JMEKnes-w0)
視頻介紹了數據驅動下的安全情報分析,特別是和社交網絡分享和傳播相關的,時長約48分鐘。
6. Applied Machine Learning for Data Exfil and Other Fun Topics
(https://www.youtube.com/watch?v=dGwH7m4N8DE)
為了幫助網絡安全相關的研究者、分析師和極客愛好者了解機器學習,以及如何將機器學習應用在網絡安全中領域中,例如數據泄露,本視頻做了詳細介紹,時長約43分鐘。
7. Secure Because Math: A Deep-Dive on ML-Based Monitoring
(https://www.youtube.com/watch?v=TYVCVzEJhhQ)
視頻介紹了以機器學習技術為基礎的互聯網監控,時長約46分鐘。
8. Machine Duping 101: Pwning Deep Learning Systems
(https://www.youtube.com/watch?v=JAGDpJFFM2A)
44分鐘教你攻克一個深度學習系統,必看系列。
9. Weaponizing Data Science for Social Engineering
(https://www.youtube.com/watch?v=l7U0pDcsKLg)
視頻介紹了社交網絡中的惡意攻擊行為和數據科學對此可能發揮的作用,時長約44分鐘。
10. Defeating Machine Learning What Your Security Vendor Is Not Telling You
(https://www.youtube.com/watch?v=oiuS1DyFNd8)
還是關于攻破機器學習的話題,視頻介紹了如何攻破以機器學習為基礎的互聯網安全產品,時長約50分鐘。
11. CrowdSource: Crowd Trained Machine Learning Model for Malware Capability Det
(https://www.youtube.com/watch?v=u6a7afsD39A)
視頻介紹了如何利用機器學習模型來探測互聯網安全,時長約28分鐘。
12. Defeating Machine Learning: Systemic Deficiencies for Detecting Malware
(https://www.youtube.com/watch?v=sPtbDUJjhbk)
系統的“缺陷”也能用來探測惡意軟件?這個視頻用45分鐘為你詳細講解利用機器學習和系統“缺陷”來探測惡意軟件的方法。
13. Packet Capture Village – Theodora Titonis – How Machine Learning Finds Malware
(https://www.youtube.com/watch?v=2cQRSPFSY-s)
視頻介紹了如何利用機器學習探測移動端惡意軟件,時長約44分鐘。
14. Build an Antivirus in 5 Min – Fresh Machine Learning
(https://www.youtube.com/watch?v=iLNHVwSu9EA&t=245s)
視頻用5分鐘介紹了如何用互聯網上開源的機器學習框架編寫一個全新的防病毒程序。
15. Hunting for Malware with Machine Learning
(https://www.youtube.com/watch?v=zT-4zdtvR30)
視頻介紹了針對企業用戶的自動化惡意軟件探測系統,時長約48分鐘。
項目和教程
1. Click Security Data Hacking Project
(http://clicksecurity.github.io/data_hacking/)
該項目包含了一系列與IPython、Pandas、Scikit Learn相關的練習,包含筆記和原代碼,每個練習都會故意設置一些常見的代碼錯誤、數據庫錯誤和邏輯錯誤供使用者改正。該系列教程幾乎是機器學習在信息安全領域應用的必學教程。
2. Using Neural Networks to generate human readable passwords
鏈接中是一位大神自己編寫的一個基于Keras框架和python語言的密碼生成器,利用了深度神經網絡原理,在保證密碼安全性的同時也保證了易讀性。該項目的代碼已經在Github上開源,可以結合上文提到的論文《Fast, Lean, and Accurate: Modeling Password Guessability Using Neural Networks》一起學習。
原代碼:https://github.com/keras-team/keras/blob/master/examples/lstm_text_generation.py
3. Machine Learning based Password Strength Classification
該項目關于用機器學習算法判斷一個已知密碼的健壯性,代碼已經在Github上開源。
源代碼:https://github.com/faizann24/Machine-Learning-based-Password-Strength-Classification/tree/master
4. Using Machine Learning to Detect Malicious URLs
該項目關于如何利用機器學習探測惡意的互聯網鏈接地址,據稱可以達到98%的正確率。
源代碼:https://github.com/faizann24/Using-machine-learning-to-detect-malicious-URLs
5. Big Data and Data Science for Security and Fraud Detection
(https://www.kdnuggets.com/2015/12/big-data-science-security-fraud-detection.html)
這是一篇綜述文章,文中介紹了多個國家/地區/大公司正在使用或研發的大數據分析工具和技術,這些技術結合了文本挖掘、機器學習或者網絡分析,能夠在早期階段對網絡安全威脅進行檢測和預防。
6. Using deep learning to break a Captcha system
(https://deepmlblog.wordpress.com/2016/01/03/how-to-break-a-captcha-system/)
這是一篇博客文章,介紹了如何利用深度學習技術破解煩人的驗證碼系統,作者在文中給出了部分關鍵功能模塊的源代碼,并且在文末還給出了許多參考鏈接。
7. Data Mining for Cyber Security
(http://web.stanford.edu/class/cs259d/)
這是斯坦福大學開設的一個系列公開課,關于數據挖掘在互聯網安全中的應用。在鏈接中可以直接看到課程安排,下載到講師演講的文本記錄、PPT,查看課后作業的題目和此前同學上傳的答案,以及課后的深入閱讀列表。這一課程可能是數據科學目前在網絡安全領域已經公開的最好的課程之一。
其他
1. System predicts 85 percent of cyber-attacks using input from human experts
(news.mit.edu/2016/ai-system-predicts-85-percent-cyber-attacks-using-input-human-experts-0418)
這是一篇研究成果介紹的文章,介紹了來自MIT計算機科學與人工智能實驗室(CSAIL)和一家機器學習初創公司PatternEx的最新研究成果:一個名為AI2的人工智能平臺,能夠根據人類網絡安全專家輸入的數據,對當前網絡可能遭到的安全威脅做出預測,正確率高達85%,超越了目前已知的其他同類預測系統。文中通過文字和視頻的方式講解了這一預測系統的基本工作原理。
2. MLSec
(www.mlsecproject.org/#open-source-projects)
這是一個開源項目相關的網站,該網站聚合了一系列將機器學習技術應用于網絡安全領域的開源項目,同時還開設了博客文章和社區討論頻道,幫助開發者對這些項目深入理解。
3. An Introduction to Machine Learning for Cybersecurity and Threat Hunting
(blog.sqrrl.com/an-introduction-to-machine-learning-for-cybersecurity-and-threat-hunting)
這是一篇深度文章,通過與幾位數據科學大牛訪談的形式,詳細介紹了機器學習和網絡安全的關系以及相關應用。
原文:https://www.kdnuggets.com/2017/01/machine-learning-cyber-security.html
附原文作者簡介:Faizan Ahmad,Fulbright 計劃大學生,目前在巴基斯坦國立計算機與新興科學大學(National University of Computer and Emerging ScienCES)學習,同時在巴基斯坦的拉合爾管理科學大學(Lahore University of Management Sciences)擔任研究助理,主攻計算機和網絡安全研究方向。
上一篇:后量子時代的應用密碼策略
下一篇:MySQL UDF開發