【為什麼我們挑選這篇文章】和正在風口上的人工智慧相關的「機器學習」,及網路世代來臨不能輕忽的「網路安全」問題,如何一次搞清楚兩者的關聯,並找到相關資源學習鑽研他們的奧妙,是許多人的疑問。

這篇文章就整理了各種資源,包括書籍、論文、教程、演講影片等等,這些都是作者在工作上或學習中,整理出值得利用的資源,對機器學習和網路安全有興趣或想研磨的人,這篇一定要好好收藏!(責任編輯:張瑋倫)

外媒 KDnuggets 刊登了一篇機器學習與網路安全相關的資料大匯總,文中列出了相關資料來源的獲取途徑,優秀的論文和書籍,以及豐富的教程。大部分都是作者在日常工作和學習中親自使用並認為值得使用的純乾貨,雷鋒網現編譯總結如下。

資料來源

SecRepo.com 網站,該網站匯聚了大量的與機器學習和網路安全相關的資料來源,並提供免費下載。據網站首頁介紹,所有可用的資料來源包含兩個部分:一是網站方面自己整理的,二是來自第三方的。其內容包括網路掃描數據,惡意軟體源碼,以及和網路安全相關的系統日誌等。

論文

  1. Fast, Lean, and Accurate: Modeling Password Guessability Using Neural Networks

本文來自卡內基梅隆大學,分析了通用符號密碼的脆弱性,以及目前常見的密碼健壯性檢驗的各種缺點,甚至給出了他們在實驗室利用神經網路算法攻破各種符號密碼的具體步驟,非常強大。

  1. Outside the Closed World: On Using Machine Learning for Network Intrusion Detection

本文來自加州柏克萊大學,分析了利用機器學習探測網路安全的優勢和劣勢,並給出了一些改善這些劣勢的解決方案。

  1. Anomalous Payload-Based Network Intrusion Detection

通常網路上的惡意請求都會在真正的惡意程式碼外部包裝一層善意的外衣,這大大阻礙了相關探測程序的正常工作。來自哥倫比亞大學的 Ke Wang 和 Salvatore J. Stolfo 兩位學者在本文中給出了一種全新的探測惡意程式碼中有效程式碼段的方法,並在實測中達到了接近100%正確率和0.1%的誤報率。

  1. Malicious PDF detection using metadata and structural features

當前,隨著防範措施的升級,惡意程式碼隱藏在 PDF 和 Word 等文本文件中的例子屢見不鮮,用戶防不勝防。在本文中,來自喬治梅森大學的學者介紹了一種通過機器學習技術探測惡意文本文件的技術,特別是內含惡意程式碼的PDF文件。

  1. Adversarial support vector machine learning

來自德州大學,介紹了兩種利用機器學習技術探測網路惡意攻擊的分析模型,即無邊界攻擊模型(free-range attack model)和限制邊界攻擊模型(restrained attack model)。

  1. Exploiting machine learning to subvert your spam filter

垃圾郵件過濾系統不算什麼高新技術,但如何提升過濾的準確性一直是一個難題。本文中來自加州柏克萊大學的學者們介紹了一種基於機器學習開發的垃圾郵件過濾器,為垃圾郵件的過濾提供了一種全新的實現思路。

以下論文來自 covert.io 網站,該網站的論文(或部落格)數量龐大,但並不像上文提到的那些論文一樣全部來自美國高校,covert.io 的文章也來自各大科技公司和研究所。

  1. CAMP: Content-Agnostic Malware Protection

來自 Google,介紹了一種名為 CAMP 的惡意軟體保護系統,該系統能夠通過對二進制可執行文件的探測,確保網路的軟體應用安全。

  1. Building a Dynamic Reputation System for DNS

DNS 服務器一直是網路中非常重要的組成部分,針對目前越來越流行的 DNS 攻擊,來自喬治亞理工學院的學者介紹了一種名為 Notos 的動態的域名信譽系統,可以有效防範各種針對 DNS 服務器的匿名的網路駭客攻擊。

  1. Detecting malware domains at the upper dns hierarchy

本文介紹了一種名為 Kopis 的新型域名檢測系統,可以有效探測網路上包含惡意攻擊程式碼的域名,由網路安全公司 Damballa、喬治亞理工學院和喬治亞大學聯合研發。

  1. From Throw-away Traffic To Bots – Detecting The Rise Of DGA-based Malware

本文同樣來自 Damballa 公司和喬治亞大學,介紹了一種針對殭屍網路的新技術,該技術夠探測來自動態域名系統的惡意攻擊,整合了聚合和分類兩類算法。

  1. EXPOSURE: Finding Malicious Domains Using Passive DNS Analysis

DNS 服務器成為了越來越多駭客的攻擊對象,本文介紹了一種名為 EXPOSURE 的域名分析系統,可以針對大批量的域名惡意訪問進行探測,由 Eurecom 研究所、波士頓東北大學和加州大學共同研發。

  1. Polonium: Tera-Scale Graph Mining for Malware Detection

本文來自網路安全公司 Symantec、卡內基梅隆大學,介紹了一個名為 Polonium 的高效的可擴展的惡意軟體探測系統。

  1. Nazca: Detecting Malware Distribution in Large-Scale Networks

大量用戶在現實生活中下載並安裝惡意軟體的行為通常包含一定的規律性。來自加州大學聖塔巴巴拉分校、Narus 公司的學者們將這些無人問津的數據利用起來,提出了一個名為 Nazca 的網路安全探測系統。

  1. Anagram: A Content Anomaly Detector Resistant to Mimicry Attack

來自哥倫比亞大學,介紹了一個名為Anagram的異常數據報文探測器。

書籍

講述數據科學和機器學習在網路安全領域的應用的書籍並不多,作者只介紹了以下兩本。

  1. Data Mining and Machine Learning in Cyber​​security

作者是來自路易斯安那理工大學的 Sumeet Dua 博士和 Xian Du 博士,探討了目前普遍存在的網路安全問題以及最先進的機器學習和數據挖掘解決方案。

  1. Machine Learning and Data Mining for Computer Security

編者是來自喬治城大學的 Marcus A. Maloof,該書系統介紹了數據挖掘和機器學習技術在電腦安全領域的最新研究成果。

(雷鋒網注:目前兩本書都沒有中文版,紙質版在亞馬遜上的售價都超過1000人民幣,第一本有 Kindle 電子版。)

演講

原文作者收集瞭如下一些關於機器學習和網路安全的演講,演講者們要麼是來自相關領域的公司副總、技術負責人,要麼是各大高校的研究人員、博士或者教授。(雷鋒網注:國內訪問需要科學上網。)

  1. Using Machine Learning to Support Information Security

影片介紹了機器學習在訊息安全領域的應用,時長約1小時。

  1. Defending Networks with Incomplete Information

要在限定的時間內(通常是24小時)對惡意攻擊做出反應通常需要耗費巨大的人力和物力,但是如果利用機器學習的方法,首先對網路攻擊進行優先級和攻擊方式分類,甚至處理一些簡單的套路式的攻擊,則可以大大降低網路安全工程師的工作強度。影片就介紹了這一思路的具體應用,時長約47分鐘。

  1. Applying Machine Learning to Network Security Monitoring

這個影片介紹瞭如何將機器學習應用於網路安全探測,時長約1小時。

  1. Measuring the IQ of your Threat Intelligence Feed

目前網路上存在著各種各樣的網路安全的探測系統,但是用戶對它們褒貶不一,究竟如何判斷一個探測系統的可靠性,影片介紹了一種實用的判斷方法,時長約40分鐘。

  1. Data-Driven Threat Intelligence: Metrics On Indicator Dissemination And Sharing

影片介紹了數據驅動下的安全情報分析,特別是和社交網路分享和傳播相關的,時長約48分鐘。

  1. Applied Machine Learning for Data Exfil and Other Fun Topics

為了幫助網路安全相關的研究者、分析師和極客愛好者了解機器學習,以及如何將機器學習應用在網路安全中領域中,例如數據洩露,影片做了詳細介紹,時長約43分鐘。

  1. Secure Because Math: A Deep-Dive on ML-Based Monitoring

影片介紹了以機器學習技術為基礎的網路監控,時長約46分鐘。

  1. Machine Duping 101: Pwning Deep Learning Systems

44分鐘教你攻克一個深度學習系統,必看系列。

  1. Weaponizing Data Science for Social Engineering

影片介紹了社交網路中的惡意攻擊行為和數據科學對此可能發揮的作用,時長約44分鐘。

  1. Defeating Machine Learning What Your Security Vendor Is Not Telling You

還是關於攻破機器學習的話題,影片介紹瞭如何攻破以機器學習為基礎的網路安全產品,時長約50分鐘。

  1. CrowdSource: Crowd Trained Machine Learning Model for Malware Capability Det

影片介紹瞭如何利用機器學習模型來探測網路安全,時長約28分鐘。

  1. Defeating Machine Learning: Systemic Deficiencies for Detecting Malware

系統的「缺陷」也能用來探測惡意軟體?這個影片用45分鐘為你詳細講解利用機器學習和系統「缺陷」來探測惡意軟體的方法。

  1. Packet Capture Village – Theodora Titonis – How Machine Learning Finds Malware

影片介紹瞭如何利用機器學習探測移動端惡意軟體,時長約44分鐘。

  1. Build an Antivirus in 5 Min – Fresh Machine Learning

影片用5分鐘介紹瞭如何用網路上開源的機器學習框架編寫一個全新的防病毒程序。

  1. Hunting for Malware with Machine Learning

影片介紹了針對企業用戶的自動化惡意軟體探測系統,時長約48分鐘。

項目和教程

  1. Click Security Data Hacking Project

該項目包含了一系列與 IPython、Pandas、Scikit Learn 相關的練習,包含筆記和原程式碼,每個練習都會故意設置一些常見的程式碼錯誤、數據庫錯誤和邏輯錯誤供使用者改正。該系列教程幾乎是機器學習在訊息安全領域應用的必學教程。

  1. Using Neural Networks to generate human readable passwords

連結中是一位大神自己編寫的一個基於 Keras 框架和 Python 語言的密碼生成器,利用了深度神經網路原理,在保證密碼安全性的同時也保證了易讀性。該項目的程式碼已經在 Github 上開源,可以結合上文提到的論文《Fast, Lean, and Accurate: Modeling Password Guessability Using Neural Networks》一起學習。

(開放原始碼:連結

  1. Machine Learning based Password Strength Classification

該項目關於用機器學習算法判斷一個已知密碼的健壯性,程式碼已經在 Github 上開源。

(開放原始碼:連結

  1. Using Machine Learning to Detect Malicious URLs

該項目關於如何利用機器學習探測惡意的網路連結地址,據稱可以達到98%的正確率。

(開放原始碼:連結

  1. Big Data and Data Science for Security and Fraud Detection

這是一篇綜述文章,文中介紹了多個國家/地區/大公司正在使用或研發的大數據分析工具和技術,這些技術結合了文本挖掘、機器學習或者網路分析,能夠在早期階段對網路安全威脅進行檢測和預防。

  1. Using deep learning to break a Captcha system

這是一篇部落格文章,介紹瞭如何利用深度學習技術破解煩人的驗證碼系統,作者在文中給出了部分關鍵功能模塊的開放原始碼,並且在文末還給出了許多參考連結。

  1. Data Mining for Cyber​​ Security

這是史丹佛大學開設的一個系列公開課,關於數據挖掘在網路安全中的應用。在連結中可以直接看到課程安排,下載到講師演講的文本記錄、PPT,查看課後作業的題目和此前同學上傳的答案,以及課後的深入閱讀列表。這一課程可能是數據科學目前在網路安全領域已經公開的最好的課程之一。

其他

  1. System predicts 85 percent of cyber-attacks using input from human experts

這是一篇研究成果介紹的文章,介紹了來自 MIT 電腦科學與人工智慧實驗室(CSAIL)和一家機器學習初創公司 PatternEx 的最新研究成果:

一個名為 AI2 的人工智慧平台,能夠根據人類網路安全專家輸入的數據,對當前網路可能遭到的安全威脅做出預測,正確率高達85%,超越了目前已知的其他同類預測系統。文中通過文字和影片的方式講解了這一預測系統的基本工作原理。

  1. MLSec

這是一個開源項目相關的網站,該網站聚合了一系列將機器學習技術應用於網路安全領域的開源項目,同時還開設了部落格文章和社區討論頻道,幫助開發者對這些項目深入理解。

  1. An Introduction to Machine Learning for Cyber​​security and Threat Hunting

這是一篇深度文章,通過與幾位數據科學大牛訪談的形式,詳細介紹了機器學習和網路安全的關係以及相關應用。

以上只是這位外國大牛的總結,如果你手裡也有一些值得安利的干貨和資源,不妨在文末留言分享出來吧!

(附原文作者簡介:Faizan Ahmad,Fulbright 計劃大學生,目前在巴基斯坦國立計算機與新興科學大學(National University of Computer and Emerging Sciences)學習,同時在巴基斯坦的拉合爾管理科學大學(Lahore University of Management Sciences)擔任研究助理,主攻電腦和網路安全研究方向。)

(本文經合作夥伴雷鋒網授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為〈如何玩轉網絡安全下的深度學習?最全的學習資料清單看這裡〉。)

延伸閱讀

替你省下整整半天查 code 時間的 AI 助手 Kite,有機會成為下一個 Github 嗎?
台灣軟體工程師到美國找工作指南:從「心態」到「談薪水」一次搞懂
一看就懂的 IC 產業結構與競爭關係:台積電、日月光、Intel 間的愛恨糾葛你都懂嗎?