假如黑客也用上「人工智慧」
【聽楊姐說】
大家知道現在最令人意想不到的「黑客」是怎樣入侵的么?
艾瑪,前兩天跟亞信網路安全產業技術研究院副院長童寧聊了半天,結果怎樣,說出來你都不敢相信:
現在的黑客其實幹活很輕鬆,人家給你的HR發一封求職簡歷,簡歷是一個PDF文件,裡面使用帶Adobe Reader漏洞的PDF文件(或者在word里加個惡意的宏命令),先破了你們公司HR的郵箱(每個公司其實最薄弱的對外環節就是HR),貴公司那點破事就沒啥秘密可言了——這還有個特文藝的名字叫「社交工程學攻擊法」;
再有給你們公司門口「丟」U盤的,U盤裡一般會事先準備好一個例如名為「公司絕密:年底漲薪名單.doc」的文件,只要有人撿到一插電腦再打開那個誘人的名單……貴公司那點破事就又沒啥秘密可言了;
還有更簡單粗暴的。現在不是都在搞智慧城市、公司里也有一大堆攝像頭嗎,一般這些攝像頭不遠的地方就是戶外交換機,黑客們就把鎖一撬,把交換機換成他自己留了「後門」的,人家在家裡就可以直接連過來soho辦公了,貴公司那點破事……你懂的!
當然,也有一些頗具「技術含量」的,買通二級域名註冊商,在一些大家都愛上的網址前加上二級域名,用戶一點,直接到了他的賭博網站啥的。
你會說,這都是老套的玩法了吧,唉,確實老套,但據亞信童寧所說——仍然好使!因為小白太多了……
童寧是誰?
這麼說吧,他所在的亞信集團,一直給中國三大電信運營商提供計費系統,現在已經是全亞太第一的電信軟體服務商,目前又有一部分業務是給三大運營商和全行業提供安全服務——此前他們收購了全球最大獨立安全公司趨勢科技的中國區業務,現在手裡有來自全球15個實驗室匯總的、最大的惡意病毒庫。童寧就在亞信網路安全產業技術研究院擔任副院長。
但是,更多黑客其實沒那麼「勤快」去你公司附近扔U盤,換交換機,他們喜歡的仍然是網路上的遠程攻擊,手法千變萬化,而安全行業的很多人並不能及時搞清楚,所以童寧就特別希望搞出一套利用人工智慧來訓練的系統,能夠讓這些安全人員能夠經過簡單地培訓就使用這套系統。到了那個時候,每個公司的安全管理員都可以「自己」就判斷一個行為是不是「黑客入侵」了!
想法確實不錯,可是如果攻擊的一方也去訓練一套人工智慧的系統……呢?
訓練一個「大腦」
最早接觸童寧,是在成都舉辦的C3安全峰會上。童寧有個演講,就是在說他正在如何計劃用機器學習的方法來對付黑客。
童寧干這件事的背景是2006年開始的病毒和黑產的大規模爆發——2007年約有600萬個新病毒出現,也就是每天出現1.6萬個病毒。2012年達到第一個高峰期,新病毒大量出現。
人們也一直在對抗。「第一代」主要是防守法:首先是建柵欄,打補丁;其次是做入侵檢測;第三是做防病毒,第四是做關鍵文件審計,即關鍵文件有沒有被人替代,被人修改。這些都是禦敵於外的策略。
「第二代」的方法論則是「監視」,既然攔不住——信息必須進入,那好,就「監視」進來的人一舉一動,從行為特徵上判斷誰是小偷。但這個監視的人必須是個公安局的抓偷能手,或者本身就是「小偷」,因為只有更專業的人才能通過行為識別「小偷」。
因此出現了土豪公司請來了「攻防專家」對付黑客和病毒,其實就是人肉戰!
這顯然並非長久之計,一來攻防專家數量特別有限,成長時間又很慢長,不夠用啊;二來,如果真的好不容易修鍊成了攻防專家,他們有很多方法能掙到大錢,就甲方給的那幾十萬的單子,真正落入專家手中的並沒有多少——留不住人家的心啊。
所以在這種情況下僅靠網路安全專家分析和阻擋是絕對不夠滴——童寧就想到了要打造一個可以通過機器學習的方法來篩查漏洞的「系統」。
「無論是U盤、HR簡歷還是更換交換機這樣的攻擊,都能夠通過簡單地本地分析來識別,但過程比較複雜且代價是個問題。例如針對攝像頭的交換機被人換掉,人工智慧也許就能發現異常斷網了,發現設備號發生變化,再進一步識別……理論上講這些攻擊手法進行訓練,機器學習都會產生認知。」童寧說。
是的,如果越來越多的人來不停地用線索、特徵來「喂」這個系統,這個系統就會越來越聰明,童寧目前正在訓練這台「機器」,通過機器學習的四類方法:監督學習、無監督學習、半監督學習和強化學習,應用在安全領域裡,就是識別攻擊和病毒。
所謂「監督學習」其實就是界定和分類,通過已有的病毒攻擊樣本去訓練得到一個最優模型,再利用這個模型將所有的最終結果,例如病毒、攻擊名稱等等特徵與樣本對應起來。目的就是以後見到了特徵就能知道原因,也就具有了對未知數據進行分類的能力。
就像教一個孩子,這個是鳥,這個叫樹,開水是燙的,雪是冷的……以後孩子見到這些東西,就知道它的名字、特徵,這個過程就相當於「定義」的過程,都是針對已知的病毒、攻擊用的。
無監督學習的過程則是「聚類」,前提就是不知道它具體是什麼,直接建模,只要有相似性就放一起——這個主要用於監督那些此前從未出現過的攻擊,人們缺乏足夠的先驗知識,因此難以人工標註類別。也就是說,這個理論用在發現異常現象上特別好使,因此一個聚類演算法通常只需要知道如何計算相似度就可以開始工作了。
但童寧強調,無監督學習的核心價值是相當於亞信安全給這個客戶派了一個已經對客戶、網路、環境能夠有認知的機器學習大腦在客戶環境里,基礎演算法雖然都有,但是訓練的過程必須在客戶的環境里——行業不一樣,訓練的結果也不一樣,例如銀行、電信或者是公安的網路里,訓練出來的最後的認知也都不一樣!
半監督學習的過程介於前面兩者之間,既使用大量的未標記數據,又使用標記數據,其基本思想是利用數據分布上的模型假設, 建立學習器對未標籤樣本進行標籤。這種方法用人少,準確性又高,因此正越來越受到重視。
而強化學習就比較好理解了,比如馬戲團逗狗熊,做對了一個投籃動作就給個巧克力,強化狗熊對這個動作的正向肯定——判斷、對抗病毒和攻擊也是如此,如果系統能夠通過某種方法幹掉一個病毒並獲得正向肯定的獎勵信號,系統就會更傾向於這樣做……
當然,機器學習這四種方法不但需要研發時間,還需大量數據,不僅僅是日誌,而是核心數據。
童寧的這個防禦系統,第一步就是做「取證系統」,數據足夠多的時候,可以做異常行為的發現,並且啟動第二步「對戰模塊」,通過機器進行對戰,等戰到機器把所有已知的進攻行為、防禦的部分都產生一個認知之後,才可以商用,即用機器學習做防禦。
「到了那個時候,識別攻擊對於一般的運維人員來講難度可以降到很低,培養運維人員的周期甚至縮短到幾個月,因為未來取證的課程是場景化的,感覺就像是Google一樣。」童寧說:「這就像你自己請了個保安,有可疑的人在家門口徘徊保安就可以去詢問一下進行判斷,不用凡事都去報警了。」
艾瑪,那攻防專家會失業么——當然不會,攻防專家那個時候就去研究最新的攻擊手法,然後再丟到這個機器學習的模型里,再進行訓練。
ok,姐的問題來了:那如果黑客也去「訓練」一個基於同樣原理的人工智慧系統來不斷產生新的攻擊方法呢?
魔高一尺,道高一丈
這個問題多好玩——告訴你,童寧的回答是「理論上確實是可行的」!
但黑客攻方也要做機器學習,跟守方做機器學習的過程和條件都是類似的,他們也必須具備條件:第一個,高質量數據,且是大量的數據,還是持續學習——這點對攻方來講是一個非常大的挑戰。
可是吧,黑客攻擊一方卻不能像守方一樣可以合法地利用大數據,所以挑戰不小。當然攻方也可以購買到數據,但他也要偽裝身份,用不合法的方式拿到——這對持續的機器學習是一個很大的挑戰。
此外,攻方的方式目前還是找到別人的弱點和系統漏洞,基本還處於第一代方法,即便攻方有利用人工智慧的思路,但是也沒有看到特別明顯的做法。還有一個原因是,現在守方實在太弱勢了:扔個U盤都有很多公司中招,黑客不需要用很高級的方法去費那麼大的勁!
所以,現在的很多資料都在講,如果有人在干機器學習攻擊這件事,那他最想做的事情是如何用正常的行為來拿到數據。當然,攻方也可以把自己偽裝成一個「良民」,就像在菜場里,總要拎個菜籃子,總要買點菜,總要天天來……
據悉亞信安全在做相應的機器學習的時候,也不是放開了100%放心讓他跑,而是將第一代技術、第二代技術和第三代技術組合用的,即黑白名單、行為識別一起都在用,且加上機器學習識別。
唉,現在的世界本身就是攻防世界,說穿了還是人與人的「對抗」!而在網路安全這個世界裡,永遠是先有「魔」,後有「道」——「道高一尺,魔高一丈」!
推薦閱讀:
※事件響應計劃成功九步
※「全家桶」的安全軟體還想再用嗎?不如試下這個!
※學習 Web 安全之前一定要精通 Web 開發嗎?
※常見web攻擊
TAG:网络安全 |