知物由學 | 人工智能、機器學習和深度學習如何在網絡安全領域中應用?


歡迎訪問網易雲社區,瞭解更多網易技術產品運營經驗。程序員


「知物由學」是網易雲易盾打造的一個品牌欄目,詞語出自漢·王充《論衡·實知》。人,能力有高下之分,學習才知道事物的道理,然後纔有智慧,不去求問就不會知道。「知物由學」但願經過一篇篇技術乾貨、趨勢解讀、人物思考和沉澱給你帶來收穫的同時,也但願打開你的眼界,成就不同的你。固然,若是你有不錯的認知或分享,也歡迎經過郵件(zhangyong02@corp.netease.com)投稿。
算法


如下是正文:數據庫


本文做者:Guarav Banga安全


最近,我參加了由十幾位CISO(首席信息安全官)組成的思想領導力討論會,咱們就一系列網絡安全問題進行了傑斐遜式的討論。討論會上提出的第一個問題就是你們如何看待人工智能,以及是否在使用人工智能。許多的與會者表示,他們的機器學習項目目前正在進行之中,但同時也強調,在網絡安全領域並無使用到人工智能技術。
網絡


人工智能這個詞確實值得咱們幻想,並且也符合咱們對人類智能、圖靈測試以及科幻電影的認知。惋惜的是,正如我在CISO(首席信息安全官)晚宴上所闡述的那樣,人們對「人工智能是什麼」這個問題還存在着一些困惑,雖然近年來不少人都在提人工智能,但人們的困惑並無獲得解除。
機器學習


本文由三部分組成,首先咱們探討一下人類智能與人工智能的一些基本概念,並解釋當今比較流行的一些詞彙,包括人工智能、機器學習、專家系統和深度學習之間的差別。最後,咱們將討論人工智能在網絡安全應用中的真實狀況,以及爲何咱們須要把它做爲一種戰略工具。工具


什麼是智能?


在進一步討論人工智能這個話題以前,讓咱們首先來定義什麼是智能(譯者注:在英文中,智能即intelligence)。智能在廣義上是至關複雜的,在科學和哲學的許多方面都存在着激烈的爭論。但在本文中,我提供了下面這個定義。學習




對於智能,我有兩個很重要的觀點。首先,許多科學家認爲,人類的智能根源於大腦如何在多種不一樣類型的感官數據中發現並存儲具備相關性的分層模式。例如,當你在捕獲的數據包或日誌文件中看到某個網絡名稱中存在「Gaurav-iPhone」的時候,你會很天然地想到這頗有多是你的朋友Gaurav的iPhone。你會無心識地將有關同事姓名的知識與有關經常使用設備類型的知識聯繫起來。在生活中,你會不斷地無心識地去更新這兩個模型,而且會受到來自於多源的多媒體感官輸入的影響,這些源包括Apple的廣告、電視節目、電子郵件、文章以及走廊上的談話。你能夠試着將這個過程與傳統的任意字符串模式匹配程序作個比較,而且在輸入的靈活性和輸出的準確性上保持一致。
測試


其次,智能是一種預測,這是解決問題的一種方法。好比:你的眼睛正試圖看到它所能看到的一切,與此同時,大腦會根據它指望眼睛所能看到的東西來經過神經系統向眼睛發送預測信息。這種預測機制「填補」了本沒有意識到的東西,也就是爲何你沒法正常識別視覺盲點的緣由。這種預測機制也讓你可以在晚上漆黑一片的臥室裏行走而不會被絆倒:你的大腦向運動神經系統發送信號,爲肌肉提供一個行走時所指望的模型。
大數據


常規的人工智能與狹義人工智能


人工智能這個概念最初是由一些探索超越傳統程序的計算機科學家在20世紀50年代提出來的。他們受到了超智能程序的啓發,該程序的智能特徵與人類類似,好比「星球大戰」中的R2D2和C-3PO,以及Superman III中的超級計算機,這是常規的人工智能。常規的人工智能在今天並不存在。咱們不知道如何模仿人類大腦進行工做,甚至不知道模仿它的一小部分智能。


今天存在的人工智能,咱們能夠稱之爲狹義人工智能。如今有許多頗有用的產品使用到了狹義人工智能,他們能夠保質保量地執行一些任務,甚至比人類作得更好。例如亞馬遜的Alexa,它的輸入範圍是有限的,但同時結合了多種狹義人工智能技術來完成某些任務,這讓人錯誤地認爲它具備智能。當前的國際象棋和圍棋世界冠軍也是狹義人工智能的運用。這些狹義人工智能系統擁有前面討論過的三個智能元素:存儲特定領域的知識、獲取新知識的機制以及使用這些知識的機制。


當前也存在着幾種經過狹義人工智能來解決網絡安全領域問題的方法。雖然,可以經過圖靈測試並取代安全團隊成員的安全機器人並不存在,可是,基於狹義人工智能的工具可以提早發現威脅和漏洞,而且可以比大多數人更好地衡量安全情況。


人工智能、機器學習、專家系統和深度學習之間的區別


機器學習是概括算法的應用,是知識獲取過程的第一步,是在20世紀60年代探索人工智能的過程當中產生的。機器學習能夠說是側重於「學習」的算法。計算機不是經過編寫特定的計算機指令來完成任務,而是使用大量數據進行「訓練」,使其可以學習如何執行任務。用於訓練的樣本能夠由外部提供,也能夠由知識發現過程的前一階段提供。


這麼多年來,出現了不少種機器學習算法,包括決策樹、概括邏輯、聚類、貝葉斯網絡和人工神經網絡。人工智能與統計學密切相關,甚至相互重疊。


機器學習被認爲是脫胎於專家系統,但又與之不一樣,專家系統是根據精心準備的知識體系(規則)經過基於模糊規則的推理來解決問題的。專家系統被吹捧爲20世紀80年代人工智能最成功的案例。專家系統背後的原理是,智能系統從它們所擁有的知識中獲取能力,而不是從它們使用的特定推理策略中獲取能力。簡而言之,專家系統擁有知識,但並不徹底會自學。它們須要人類程序員或操做員來讓它們變得更加聰明。可是,若是根據咱們對智能的定義進行判斷的話,它們並不聰明。



如今回到會學習的系統上來。機器學習很難,由於在多個維度的數據之間關聯模式是一個難題。這是一個大數據和計算密集型問題。人類大腦不斷地從大量的源而且跨越多個維度獲取大量的感官數據,慢慢地完善它的模型,而後才能達到網絡安全團隊中熟練員工的智能和專業知識水平。請設想一下一個大學畢業生大腦所接受的訓練數據量(標記的和未標記的)。在大多數狀況下,適用於機器學習系統的訓練數據至關稀少,從而使得機器學習程序沒法提供準確的結果。


人工神經網絡和深度學習


近年來,咱們看到一種被稱爲深度學習的機器學習技術發展十分迅速,這是一種早期機器學習方法人工神經網絡的演進,該神經網絡是受到人類大腦結構的啓發而創造出來的。在神經網絡中,每一個節點都會爲其輸入分配權重,以表示其正在執行的操做的正確與否。最終的輸出由這些權重的和決定。實際運用中的神經網絡有許多層,每一個層對應於神經網絡要完成的各個子任務。


神經網絡報告的輸出採用「機率向量」的形式,例如,系統可能會說該圖像有90%的確信度包含給定的動物,該動物有25%的確信度是鱷魚。


直到目前爲止,神經網絡的研究幾乎沒有產生任何能夠稱之爲「智能」的東西。預測輸出的確信度很低,所以並無什麼用。你可能已經想到,目前遇到的最基本的問題是,即便是最基本的神經網絡,它的計算密集度也很高,創建和使用神經網絡來完成複雜的任務是不切實際的。多倫多大學的GeoffreyHinton領導的一個小型研究小組一直在研究這個問題,他們將超級計算機的算法並行化,並證實了這個觀點。


爲了理解這個問題,咱們舉一個計算機視覺和自動駕駛汽車方面的例子:識別交通停車標誌。當停車標誌檢測神經網絡在訓練的時候,極可能會出現不少不正確的答案。例如,它在良好的能見度下可能就作得很好,但在惡劣的天氣條件下就不行。這個網絡須要大量的訓練。它須要看到成千上萬,甚至數百萬的圖像,直到各類神經元輸入的權重都調好爲止,而且不管環境條件如何,它每次都能得出正確的答案。直到作到這一點,咱們可能纔會說這個神經網絡已經學會了停車標誌的樣子。


這正是2012年吳恩達(Andrew Ng)在谷歌所作的事情。吳恩達的重大突破是增長神經網絡中的層數和神經元的數量,而後經過運行海量數據來訓練它,這些海量數據主要是1000萬個來自YouTube視頻的圖像。深度學習中的「深度」表示這種神經網絡包含了的大量層。谷歌大腦項目是一個在16000個CPU核上使用深度學習算法訓練的神經網絡。該系統已經學會了在YouTube視頻中識別一些東西,例如「貓」,即便該系統從未被告知過「貓」是什麼。神經網絡能「看到」貓這個視覺圖像、包含單詞「貓」的視覺圖像,以及包含單詞「貓」的音頻之間的相關性,而且將這種相關性學習爲知識,就像一個小孩子同樣。


今天,基於深度學習的圖像識別一般作得比人類更好,例如自動駕駛車輛、識別血液中的癌症和核磁共振掃描圖像中的腫瘤。還有不少深度學習的變體獲得了積極地改進和運用。有些模型能夠進行堆疊以產生更高級的分類能力。如下圖片來自於亞馬遜Rekognition System的演示,深度學習技術能識別出圖像和視頻流中的對象、面部和上下文。








這樣的系統是否算是智能呢?因爲深度學習和其餘先進的機器學習算法確實在它們各自的領域進行了學習,並變得至關的博學,所以它們確實擁有了「智能」的兩個關鍵因素。


這樣的系統是否知道如何運用它們的知識來解決問題呢?狹義人工智能系統目前須要人工干預才能與現實世界的問題解決工做流程相關聯、與傳統系統以及其餘人員進行交互。人們須要懂得將檢測跟蹤人員的交通攝像機與其餘的面部檢測和圖像檢測系統相融合,使用來自加利福尼亞DMV駕駛執照的圖像數據和汽車牌照數據庫進行訓練。


若是在公共場所安裝這樣的系統,咱們就能大大提升社區的犯罪打擊能力。試想一下,這樣還可能會產生倍增效應,咱們的警察、安全人員和調查人員天天都有提升工做效率和速度的潛力!若是拿這種狹義人工智能做爲武器,這些特勤人員的工做效率會變得更高。


人工智能(AI)、機器學習(ML)、專家系統和深度學習之間的關係也能夠參照下面的維恩圖進行理解。




人工智能、機器學習和深度學習在網絡安全領域中的應用


網絡安全問題能夠理解爲保證計算機系統的機密性、可用性和完整性。網絡防護主要包含如下三個方面:


  1. 漏洞評估。

  2. 設置和管理有效的安全控制。

  3. 安全事件的處理和響應。


近年來,網絡安全已經成爲一個多維度問題。隨着業務的「計算機化」,漏洞的數量和種類急劇增長。安全研究人員和黑客們天天都會發現危害計算機系統的新方法。


讓咱們從攻擊層面來講明這一點,好比業務應用程序和共享的密碼。企業用戶的雅虎或LinkedIn密碼可能與某個企業應用的密碼相同。所以,若是雅虎或LinkedIn遭到攻擊而且密碼被盜(而且沒有設置祕鑰),那麼你就會遇到了一個問題:黑客有100萬種方法來進入企業應用。


一般,防護者並不知道密碼共享這個風險對他們的業務會有什麼影響。在這個時候,你最好但願你的雙因素身份認證配置正確而且有效。




攻擊者利用多個漏洞來攻破你的網絡,而後跳轉到目標系統上,提高他們的訪問權限,最後進行攻擊、泄露或破壞信息。對於一個擁有一萬多人的機構來講,咱們估計在攻擊層面上有超過1億個時變因素。


這再也不是一我的的問題了,須要手工分析的數據實在太多了。


爲了防止網絡被攻破,防護者必需要及時發現並解決這些漏洞,這一般涉及到對系統的從新設置或給系統打補丁、用戶培訓、安裝其餘安全軟件、優化流程。


最後,雖然咱們盡了最大的努力,網絡仍是被攻破了。安全管理員天天須要處理的安全報警數量一直都在增加。報警的處理涉及到從多個系統獲取數據,這至關乏味,並且很耗時。大多數機構都沒有足夠訓練有素的人員來處理天天發生的安全警報。


網絡安全中的人工智能


如今,想象一下,若是你擁有一套通過訓練的自學系統,該系統可以自動而又連續地從各類各樣的源中收集有關企業的數據,並對數百個維度的模式進行關聯。該系統包含了下面這幾種智能:


  1. 瞭解企業資產相關的全部詳細信息(配置、使用狀況等等),包括全部設備、用戶和應用程序,包括內部的和外部的。

  2. 深刻了解每一個資產和用戶在業務上的重要程度。

  3. 及時更新全球和行業特定威脅的最新知識,也就是說天天或每週最新的威脅。

  4. 深刻理解已經部署的各類安全產品和流程。

  5. 綜合上述第1-4項中的全部信息,計算你的有效風險,並預測最有可能被攻擊的地方和方式。

  6. 提供規範性的建議,說明如何進行配置和加強安全控制和流程,提升網絡彈性,但同時不會對業務運營產生負面影響。

  7. 爲安全警報的處理優先級和處理方式提供儘量多的參考信息,並儘量地減少對其影響。

  8. 經過提供多種不一樣的可視化界面和報告,向全部的利益相關者,好比用戶、業務全部者、安全操做員、CISO(信息安全官)、審計員、首席信息官、首席執行官和董事會成員提供相關信息,解釋其預測和建議。



本文由網易雲易盾組織翻譯,譯者:雁驚寒



網易雲安全(易盾)基於網易20年技術積累及安全大數據,爲互聯網各行業提供反垃圾、驗證碼、註冊保護、登陸保護、活動反做弊、應用加固、DDoS 防禦等總體安全解決方案,全程提供完善的技術支持,助力產品創建安全防禦體系,點擊可免費試用



相關文章:
【推薦】 如何從內容的角度迅速對做品的影視價值進行判斷

相關文章
相關標籤/搜索