人工智能(AI)的出現(xiàn)最早可以追溯到上個世紀(jì)五十年代,但在經(jīng)歷了一段時間的熱度之后便開始下降及至沉淪,。一直到了今天,,隨著深度學(xué)習(xí)的興起,AlphaGo的橫空出世,,人工智能的概念再次大熱,,但深度學(xué)習(xí)到底意味著什么?人工智能又有哪些細分技術(shù)應(yīng)用在安全領(lǐng)域,?安全人員需要擔(dān)心被人工智能取代工作嗎,? 帶著這些問題,安全牛采訪了人工智能與網(wǎng)絡(luò)安全專家李康教授,。 個人簡介 李康,,現(xiàn)任喬治亞大學(xué)終身教授,360IoT研究院院長,。李康教授為網(wǎng)絡(luò)安全對抗賽CTF最早的實踐者,,組建的Disket在2015年美國國防部高級計劃研究局組織的CGC (Cyber Grand Challenge)資格賽中闖入決賽。 一,、受縛于復(fù)雜邏輯 振興于深度學(xué)習(xí) 安全牛 之前了解到您很早就在人工智能領(lǐng)域,,您如何看待今天的人工智能浪潮? 李康:二十幾年前我在學(xué)校被分到人工智能班,,畢業(yè)時正趕上一波人工智能的谷底,。當(dāng)年想必同班同學(xué)們都恨不得把“人工智能”幾個字從畢業(yè)證里摳下去 … 做語音識別,自然語言理解,,圖像識別的同學(xué)們絕口不提人工智能,。我也在大四做了逃兵,早早跳槽去了網(wǎng)絡(luò)系統(tǒng)組,,懵懂而幸運地去做了網(wǎng)絡(luò)安全,。 今非昔比,人工智能的新一輪浪潮來了,,這次帶頭的是深度學(xué)習(xí)技術(shù),。 當(dāng)下深度學(xué)習(xí)技術(shù)在視覺,,語音中的廣泛應(yīng)用,對自動駕駛的促進,,AlphaGo 對人類棋手的碾壓以及其不斷的進化,,深度學(xué)習(xí)技術(shù)大有一統(tǒng)天下的味道。 在我們安全行業(yè),,這種情景也不例外,。 我認(rèn)識的好多安全研究的新老朋友,聽說都在用深度學(xué)習(xí)這把刀子,,在各種安全問題上亂捅,。 安全牛 人工智能為何跌入谷底,又因何而復(fù)興乃至大熱,? 李康:人工智能有很多分枝,。前面幾代的人工智能主要以符號邏輯和簡單神經(jīng)元網(wǎng)絡(luò)為主,受到邏輯表達能力以及狀態(tài)爆炸的約束,,對復(fù)雜問題難以施展手腳,。而這一次人工智能的復(fù)興是基于統(tǒng)計的深度學(xué)習(xí)算法的成功應(yīng)用。成功的因素主要有“誤差反向傳播算法”,、“海量培訓(xùn)數(shù)據(jù)”,,以及GPU的超強并行處理能力等。 人工智能的一些分枝,,尤其是傳統(tǒng)機器學(xué)習(xí)和遺傳算法,,其實在安全的一些子領(lǐng)域里早就大有所為。特別是在異常行為檢測,,信息分類等場景中,。因此最近很多老朋友也都翻出家底兒,展示自己在安全領(lǐng)域中應(yīng)用人工智能的悠久歷史,。 當(dāng)然,,人工智能的歷史遠不至于此,我只是從自己的角度稍做點評,。 二,、只有基于邏輯才更加智能 安全牛 人工智能目前都有哪些細分技術(shù)應(yīng)該用在安全領(lǐng)域,并為其帶來了哪些改觀,? 李康:這個問題展開的話,,需要一個單獨的文章來回答。感興趣的話,,歡迎約稿:),,我在這里簡單回答一下。 人工智能包括符號邏輯,、遺傳算法和傳統(tǒng)機器學(xué)習(xí),,而新的機器學(xué)習(xí)技術(shù)如深度學(xué)習(xí)在安全領(lǐng)域中有很多應(yīng)用,。比如基于數(shù)據(jù)的決策判斷,包括病毒檢測分類,,網(wǎng)絡(luò)異常行為檢測等,,它的主要作用體現(xiàn)在對海量數(shù)據(jù)應(yīng)用的改觀上。此外,,深度學(xué)習(xí)最近在逆向工程的一些細節(jié)問題(例如函數(shù)識別,,相似函數(shù)檢測)也有很成功的應(yīng)用。 符號邏輯和遺傳算法在過去幾年在軟件測試和漏洞挖掘方面有非常成功的應(yīng)用,,最近幾年有大量的漏洞是用這些技術(shù)發(fā)現(xiàn)的,。雖然最近深度學(xué)習(xí)也被用來做漏洞挖掘(微軟和我們都有嘗試),但效果并不比基于符號邏輯和遺傳算法的方式改變太多,。 安全牛 如何理解深度學(xué)習(xí)?能否用淺顯易懂的語言解釋一下,? 李康:想象一下打網(wǎng)球,。一個“漂亮”的擊球動作需要成千上萬個肌肉神經(jīng)來控制,每塊肌肉神經(jīng)都需要有合適的“參數(shù)”,。我們練習(xí)打球的時候就是不斷調(diào)整這些肌肉神經(jīng)的記憶,, 打多了就自然“知道”這些“參數(shù)”。 這個動作的完成在大腦里用的不是符號邏輯推導(dǎo),,用的是神經(jīng)的記憶,。 深度學(xué)習(xí)中學(xué)習(xí)的過程就是調(diào)整這個神經(jīng)記憶的過程,它通過訓(xùn)練結(jié)果的誤差不斷調(diào)整神經(jīng)原的相關(guān)記憶,。希望我舉的這個例子有所幫助,, 同時也希望用這個例子解釋基于符號邏輯的人工智能與基于統(tǒng)計的人工智能的區(qū)別。 安全牛 也就是說深度學(xué)習(xí)是基于重復(fù)統(tǒng)計的,,而只有基于邏輯才能更加智能,? 李康:是的,而且只有后者才更有可能做出“創(chuàng)造性”的工作,,創(chuàng)造很難用深度學(xué)習(xí)來獨立完成,,因為創(chuàng)造需要邏輯推理,就像橋梁工程師設(shè)計大橋時,,會需要很多邏輯推導(dǎo),。單純用統(tǒng)計(嘗試)的方法來搭建橋梁比較困難,至少從目前看效率比較低,。 三,、機器不如人的兩個事實 安全牛 我們知道,機器自動攻防,、自動漏洞挖掘與利用現(xiàn)在正成為行業(yè)關(guān)注重點,。去年美國DARPA(美國國防高級研究計劃局)舉辦了CGC全自動攻防挑戰(zhàn)賽,,今年國內(nèi)的360與永信至誠也辦了機器自動攻防比賽,賽寧XCTF也在全球率先創(chuàng)辦的人機協(xié)同CTF比賽,。 但另一方面,,一些年輕的安全人員擔(dān)憂未來行業(yè)前景,擔(dān)心人工智能會替代安全人員的工作,,您如何看待這種想法,? 李康:這種想法當(dāng)然可以理解,不過你既然提到了CGC比賽,,我們來看一下比賽的兩個事實結(jié)果,。一個是CGC決賽后的人機安全對抗結(jié)果,總共15只戰(zhàn)隊,,CGC冠軍 Mayhem卻最后墊底,,輸給了14個人類戰(zhàn)隊。而且不要忘記,,比賽內(nèi)容是為機器專門設(shè)計的,,比賽運行在與現(xiàn)實任務(wù)有相當(dāng)差別的簡化環(huán)境。但不管怎樣,,這個結(jié)果至少說明機器離人類安全戰(zhàn)隊還有距離,。 另一個事實是優(yōu)秀安全人才的身價一直都在持續(xù)飆升,如果你是業(yè)內(nèi)非技術(shù)人員,,可以向各大公司的HR求證,。如果你就是安全技術(shù)人員,而且水平還不錯,,可以直接數(shù)數(shù)自己手里的offer,。 四、此“黑”非彼“黑” 安全牛 也就是說,,替代人的那一天至少現(xiàn)在還看不到,。那么,人工智能技術(shù)實現(xiàn)主要的挑戰(zhàn)在哪里,? 李康:我稍微具體一下論題,,比如哪些安全問題,深度學(xué)習(xí)還沒搞定,?直接的答案是 — 大部分安全問題都沒被深度學(xué)習(xí)搞定,。 安全是一個很廣的領(lǐng)域,這里集中說說在安全領(lǐng)域里 深度學(xué)習(xí)目前最不擅長的,。 我個人認(rèn)為深度學(xué)習(xí)目前最不擅長的是安全行業(yè)中的一個最核心的技術(shù) — 也就是黑客中的“黑”這個動作,。 黑客中的這個“黑”字。 大眾很容易把“黑”想成黑產(chǎn)的黑,,或者黑暗的黑,。 黑客的黑其實是動詞,,來自hacking這個動作。 什么是hacking,? 我的定義是用非常規(guī)方法解決問題的動作,。具體到安全問題,是指通過發(fā)現(xiàn)程序的非設(shè)計功能,,通過組合這些功能,,重寫并形成新的程序,實現(xiàn)原來程序或系統(tǒng)不具有的功能,。 舉個例子,,對于普通用戶來講,微軟的公式編輯器是一個用來在Word文檔或PPT里插入公式的一個程序,。但對于黑客來說,,一個公式可以讓W(xué)ord程序瞬間變成一個間諜程序,能夠打開你的麥克風(fēng),,并將錄下來的聲音上傳到網(wǎng)上,。你相信嗎? 安全牛 當(dāng)然相信:),這就是最近剛剛曝出的一個Office公式編輯器漏洞,而且這個漏洞已經(jīng)存在17年了,。 李康:包括微軟的公式編輯器,,大多程序在完成“本職工作”之外,都有各種各樣的“特異功能”,。 這些特異功能有的是程序員的錯誤,,但更多是程序本身以及計算機系統(tǒng)實現(xiàn)的各種因素造成的。 用現(xiàn)實生活中的例子,,如果把送餐小哥想象成一個程序的話,,用戶這邊只看到訂餐和餐送到的情況。 但是要實現(xiàn)這個功能,,送餐小哥一定要從把食品送過來,。送餐小哥走了哪條線路,路上是否闖紅燈,,用戶都看不到(可能也不關(guān)心),。 安全人員可以通過發(fā)現(xiàn)程序的非設(shè)計功能,并對這些功能進行組合,,從而實現(xiàn)一些目標(biāo)程序不相關(guān)的功能,。例如,如果某個送餐小哥(程序)在某個特定地點一定會闖紅燈的話,,就可能被攻擊者利用,,通過特定的訂餐行為引導(dǎo)送餐小哥在特定時間特定地點造成交通問題,。 程序化地利用目標(biāo)程序的非設(shè)計功能,這個過程就叫做黑(hacking),。 五,、從機器學(xué)習(xí)到機器創(chuàng)造 安全牛 如何讓機器能夠hacking? 李康:從技術(shù)的角度講,,hacking這個動作具有以下幾個難度,。第一是尋找程序和系統(tǒng)的各種非設(shè)計功能。 第二個是如何把非設(shè)計功能變成組件,,并有機地把它們組合起來,。也就是用這些非設(shè)計功能來寫程序。 這些程序不容易寫,,因為組件都不是專門設(shè)計好的,。如果正常寫程序可以看成小朋友用樂高來搭積木的話,hacking是調(diào)皮的孩子用積木廢料來做小提琴,。而且還是背著大人偷著干的,。這是因為安全研究工作中,攻擊方不僅僅要考慮如何用這些非設(shè)計功能進行組合,,同時還要對抗或繞過防護方的各種防御手段,。 搞安全研究的大都熟悉 ROP/JOP/DOP等攻擊手段,他們的核心就是要把各種程序片段或者對數(shù)據(jù)的影響按照邏輯串在一起,。不僅是要有辦法把這些非設(shè)計功能片段連起來,,為了能做到更全面的攻擊功能,安全研究者們會研究如何用這些組件實現(xiàn)圖靈機,。 一旦證明這些非設(shè)計組件可以形成一個完整的圖靈機(Turing Complete)的時候,,安全研究人員也就證明了他們可以在上面寫任意程序。 研究攻擊和漏洞利用的過程也就是一個發(fā)現(xiàn)組件,,并用它們搭建圖靈機的過程,。 歸根結(jié)底,安全中的“黑”(hacking)需要的是一個創(chuàng)造機器并在上面編程的技術(shù),。所以,,安全的核心需要的不僅僅是做機器學(xué)習(xí)(machine learning) 的人工智能,還需要能夠做機器創(chuàng)造 (machine creation) 的人工智能,。 六,、對抗無止境 人類是主角 安全牛 深度學(xué)習(xí)有否可能突破這個從“學(xué)習(xí)”到“創(chuàng)造”的過程? 李康:目前的機器創(chuàng)造主角還是人,,通過安全人員基于嚴(yán)密的邏輯進行搭建,。這個過程需要設(shè)計者充分了解系統(tǒng)里可能存在的組件,并對組合的方法以及防御引入的障礙了如指掌。 解決問題的時候最需要的是精準(zhǔn)的邏輯控制,,例如如何將一個指定指令的寄存器值改成一個特定的值,。 這就是為什么像 Lokihardt 這樣的頂尖黑客可以一騎絕塵,因為他們比微軟的工程師更懂windows內(nèi)核,比蘋果程序員更懂safari瀏覽器,。 我們目前還不知道如何用統(tǒng)計的方法來搭建復(fù)雜的邏輯系統(tǒng),當(dāng)下流行的深度學(xué)習(xí)是一種統(tǒng)計算法,可以幫助很多解決基于統(tǒng)計的工作,。 例如對于樹木樣子的描述。 什么是一棵樹,?人的判斷是通過經(jīng)驗而不是詳細邏輯定義的,。 深度學(xué)習(xí)善于幫助人處理沒有準(zhǔn)確邏輯描述的事情,但目前深度學(xué)習(xí)的邏輯歸納和判斷能力還很弱,帶有推理和強邏輯關(guān)系的深度學(xué)習(xí)也是目前重要的研究方向,。 所以我斷言,,安全的一個核心是機器創(chuàng)造問題,目前還沒法用深度學(xué)習(xí)來解決,。 當(dāng)然在這個機器構(gòu)造過程中,,是不是有些部分問題可以用深度學(xué)習(xí)來協(xié)助。答案當(dāng)然是肯定的,。 但是深度學(xué)習(xí)對安全的核心還沒有什么革命性的推動,,對頂尖安全人員的需求目前只會有增無減。 以上只是我個人觀點,,歡迎大家拍磚,,也歡迎研究人員用實踐挑戰(zhàn)我的說法。 另外人工智能技術(shù)有很多技術(shù)分枝,,包括符號邏輯推導(dǎo),,遺傳算法,機器學(xué)習(xí),,神經(jīng)元網(wǎng)絡(luò),。 上面集中說深度學(xué)習(xí),,但是其它人工智能方法在安全中的應(yīng)用也很廣并有效,。年輕熱關(guān)注人工智能在安全中的應(yīng)用,不要認(rèn)為人工智能只是深度學(xué)習(xí),。 安全牛 那么,,如果人工智能以后真的進化到“機器創(chuàng)造”,是不是安全研究人員就失業(yè)了,? 李康:在安全行業(yè)做久了都知道,,安全的本質(zhì)是對抗。 當(dāng)人工智能能力提升以后,,安全對抗的對手能力也就提升了,。其實目前在一些領(lǐng)域,黑產(chǎn)(不是hacking的黑)已經(jīng)開始使用深度學(xué)習(xí)技術(shù),。破解圖片校驗碼是最常見的例子,,其他還有用機器學(xué)習(xí)來刷帖,,自動生成評論,筆跡或?qū)懽黠L(fēng)格模仿,。因此對抗基于統(tǒng)計數(shù)據(jù)的人工智能應(yīng)該是安全研究的一個新焦點,。 未來當(dāng)人工智能達到能夠自我構(gòu)建機器并編程的階段后,做安全攻防的研究人員需要考慮的是如何對抗具有自動機器構(gòu)造能力的對手,。攻防對抗是無止境的,,只要我們?nèi)祟愡€在。 |
|
來自: 快讀書館 > 《經(jīng)濟管理》