2017年安全數據科學領域的4個趨勢:機器人、威脅情報、對抗機器學習以及深度學習是如何影響安全領域的
編者註:從Nikhil Buduma的《深度學習的基礎》開始了解深度學習和神經網路。n
安全數據科學正在蓬勃發展,有報告顯示安全分析市場將在2023年達到八十億美元的價值, 26%的增長率。這要感謝不屈不撓的網路攻擊。如果你想要在2017年走在不斷湧現的安全威脅的前面,那麼投資在正確的領域是很重要的。在2016年3月,我寫了一篇《2016年需要注意的4個趨勢》。而2017年的文章由我與來自Netflix的Cody Rioux合作,帶來他的平台化視角。我們的目標是幫助你為2017年的每一個季度形成一個計劃(例如,4個季度有4個趨勢)。對於每一個趨勢,我們都提供了一個短小精悍的理論基礎,即為什麼我們認為現在這個時間投資是對的;以及如何充分利用這一投資,並指明具體的工具和可用資源。
1.自動化安全響應和協助的機器人
我們認為,安全行業將會見證以聊天機器人形式出現的自動和自主反應。當一個模型判定到相關信息時或者符合需求時,機器人將會響應提供信息。這種響應將會整合在目前用於與團隊成員進行溝通的事件響應平台里。這並不是一個新的想法,聊天機器人至少和IRC存在一樣長的時間了,但是要感謝」ChatOps」使它們流行起來。Shivon Zilis和James Cham將這稱為「2016年最大的聊天機器人爆發潮」。在他們給出的信息圖表中列出了15家正在開發自主代理機器人的公司。
為什麼是現在?
Chris Messina(@chrismessina,哈希標籤的發明者)最近寫了一篇名為《聊天機器人不是一時的流行,它們是一場革命》的文章。高科技組織通常處在這樣一個地位,即對於生產環境中的自主系統有著充分的信任,這使得自動化各種瑣碎的任務(包括那些在安全領域的任務)成為可能。機器人框架主要用於開發各種溝通協作平台,包括Slack、 IRC 以及Skype等,你很可能在日常生活和安全事件發生時已經在使用這樣的平台進行溝通了。這使得機器人成為在事件中快速執行任務或是執行和報告例行檢查(例如證書更新以及確認是否符合安全標準)的理想夥伴。Jason Chan (@chanjbs)最近也發表了關於Netflix在安全方面是如何使用機器人的相關演講:從安全諮詢講到批准部署更新,再到如何設定明顯的安全關鍵字等。
下一步
- 與你的運營團隊/網路運營中心談談,看看他們是否已經有了可以進行調用的解決方案。
- 看看微軟的機器人框架、Slack機器人,或者許多IRC機器人框架之一。
- 調研Security Monkey(Netflix的一個安全開源項目)中的自動化技術,並嘗試複製它們。
2.將威脅情報與機器學習檢測相結合
威脅情報可以被認為是已知的不良行為的離散實例,或是一個折衷指標的集合。它們是多種多樣的,可以是已知惡意文件的哈希值、殭屍網路的控制伺服器以及命令的IP地址,甚至是持久威脅所試用的用戶代理字元串。威脅情報長期被安全社區用於安全監控的定點檢查,但是我們認為數據科學社區應該在2017年將它們利用到行為檢測系統中去。
為什麼是現在?
貝葉斯錯誤率是任何在給定數據集上的分類器的最基本的限制。改進錯誤率的標準方法是包含新的信息來源。我們假設威脅情報是一個簡單的網關,並且是引入新的數據來源的第一步。
另外還有可替代的能解釋性——他們還提供了解釋警告的洞察。例如,如果你的機器學習系統判斷出登陸人是不正常的,且登陸的IP地址出現在一個「肉雞」網路情報列表裡,那麼我們就能推測出這次登陸不正常,是一個受到感染的「肉雞」機器進行的。儘管有些玄乎且不是100%確信,但這也提供了對告警的一種好的解釋。
下一步
- 引入威脅情報最簡單的方式是直接將威脅情報數據加入到機器學習系統的結果中去。而最直接的方法是將威脅情報作為一個過濾器放置在機器學習系統之後。
- 另外一個選項是將它們作為二元的特徵放置到訓練集中去。這帶來額外的好處就是只要管理一份代碼。這個方法的缺點是每當你新添加一個新的威脅情報,你需要改動一次代碼並且重新訓練和部署你的機器學習系統,這是很麻煩的。
在你開始威脅情報的相關實驗之前,要注意這些數據在不同的指標上有不同級別的置信度,需要反覆嘗試調整。商業威脅情報的供應商包括Team Cymru,、iSight、 iDefense以及 Webroot。開源威脅情報項目包括Project Honeypot、Malware Domain List,而諸如 Feodo Tracker, Zeus Tracker 和 OpenPhish 等的追蹤器是便宜的原型系統之選。
3.繼續投資在對抗性機器學習上
對抗機器學習是指攻擊者可以破壞機器學習系統從而獲利。攻擊方可以增加系統的誤報率到很高,使得安全分析師感到挫敗、精疲力竭。或者也可以增加系統的假陰性率,從而使得攻擊可以完全不被注意地通過雷達監控。甚至可以完全控制整個安全系統。對抗機器學習是真實會發生的,與Ian Goodfellow一起在這一話題寫過很多論文的Nicholas Papernot曾寫過一篇很棒的博客來解釋其中的一些奧妙,其核心就是說,對抗性機器學習是非常可能發生的。
為什麼是現在?
這一趨勢已經在我2016年發表的文章中列舉過。但是考慮到熱度的提升以及可能的損害,我們認為有必要提醒我們的讀者,在2017年開始保護他們的機器學習檢測防護系統是有價值的。儘管安全專家之前在惡意軟體過濾領域中已經預見這一趨勢,2016年還是出現了許多的例子,打擊了幾乎所有的大公司。首先,微軟的「Tay the Tweet」機器人不得不關停,因為它開始冒出種族方面的用詞。然後,來自康奈爾的研究人員展示了他們是如何能夠從亞馬遜和BigML偷取機器學習模型的。最後,對抗機器學習甚至出現在2016大選,谷歌曾經顯示過一張總統候選人的圖片,上面寫著「病態的騙子」。
下一步
- 開始對你的對外暴露的機器學習系統進行威脅建模,Nicholas Papernot (@nicholaspapernot)等有一些靠譜的指導,比如這篇新論文《論安全科學以及機器學習中的隱私》。
- 看一看cleverhans。這是一個新的庫,模擬了對於機器學習解決方案的各種類型的攻擊。
- 在允許用戶輸入成為模型的訓練數據之前仔細地檢查用戶輸入,特別是在線機器學習的場景下。
4.深度學慣用於安全
深度學習使以與人類相當的水平來完成一些任務成為可能,從開車到以你最喜歡的藝術家的風格來繪畫。有時甚至是完全超越人類的水平,比如說下圍棋。諸如流量識別、惡意軟體識別、命令檢測、伺服器控制等安全任務已經在向這一趨勢發展。而神經網路也具有無監督學習的技術能力,可以自動編碼和強化學習,這為諸如異常檢測和建立自治系統等任務提供了即使沒有標記數據也可用的解決方案。簡而言之,如果你需要人類級別的性能並且有相當多的數據和處理它們的計算資源,那麼你可能想要利用這一趨勢來自動化那些曾經被視為只有人類可以完成的任務。
為什麼是現在?
深度學習的實現層一度淪為數據科學家的機器拼湊上包含數百行Theano代碼的python腳本。然而早已不是這樣了,產品級深度學習組件的工具是應有盡有,無論你的軟體棧是什麼。並且用來訓練大型模型的分散式計算資源也是司空見慣的,你很可能已經有一個可用的Spark或者Hadoop集群。你可能也正在生成足夠的數據來訓練一個數據飢餓的演算法,例如深度神經網路。集合分散式計算集群上的數據和計算資源,再加上可以使得用戶能夠簡單地訓練、預測、監控和維護深度學習模型的產品級軟體包,意味著把深度學習整合到你的產品的威脅監控系統中是前所未有得簡單。
下一步
- 如果你不了解深度學習,在Practical Deep Learning For Coders-18 hours of lessons for free看看Jeremy Howard (@jeremyphoward)的新課程,務實、關注代碼,並且非常實用。
- 調研你的技術棧中的神經網路相關的包。Python (Keras, Lasagne, Theano, Tensorflow), Java (deeplearning4j), 或者 .NET (accord)。你可能更願意將這一職責交給一個管理服務,例如Azure ML。
- 一旦你選定了軟體包,動手嘗試一下Cyber Defense Exercise數據集。
- 調研惡意軟體識別的研究,可以從以下論文開始:《 Deep Neural Network-Based Malware Detection Using Two-Dimensional Binary Program Features 》和《Droid-Sec: Deep learning in android malware detection》。
總地來說,對抗機器學習將繼續成為重要焦點,而正如它在其他領域所做的那樣,深度神經網路將開始在安全數據科學領域產生影響力。與此同時,分析師的日常工作將更簡單,通過整合威脅情報和通過帶有「安全口味」的聊天運營機器人儘可能自動化所有任務。進一步的自動化任務可以只執行一次並且自動地通過聊天機器人將信息傳播到相關群體中。
我們樂意聽取你對於安全數據科學的趨勢預測的想法,歡迎通過推特@ram_ssk和 @codyrioux聯繫我們,並加入到討論中來。
Ram Shankar是微軟Azure的安全數據科學團隊的安全數據總監。他的主要關注點是對海量安全日誌進行建模來發現惡意活動。他的成果曾出現在核心安全會議(像DerbyCon、MIRCon、BlueHat等),以及大數據會議(像Strata+Hadoop 世界大會)和機器學習實踐大會。Ram畢業於卡內基梅隆大學電氣與計算機工程專業,並獲得工程與技術創新管理碩士。Cody Rioux是一名高級軟體工程師,設計和開發實時機器學習系統來支持Netflix在AWS上的高可靠和可用。Cody曾參與過Netflix的異常值檢測、自動化Hystrix部署等項目,實現了針對實時流式數據查詢的查詢語言。Cody的成果在Netflix的技術博客、一些集會、Strata+Hadoop世界大會以及PyData上發表過。Cody畢業於萊斯布里奇大學,獲得計算機科學學士學位。This article originally appeared in English: "4 trends in security data science for 2017".推薦閱讀:
※9個不錯的數據可視化工具
※直播 | Facebook Analytics Manager如何運用300PB海量資料庫?
※沒用過TF,沒摸過GPU,我算不算是真正的數據科學家?
※利用 SQL 進行數據分析初學者教程 - ep1