近期最引人注意的事情,除了是任天堂的手機遊戲精靈寶可夢(Pokémon GO),也是小時候說的神奇寶貝,正式登陸臺灣市場並引發一股抓妖怪或者是抓交替的風潮之外,另外一起發生在美國的重要事件,甚至可以改變未來全世界對於漏洞修補的方式以及進展,那就是,「機器人有一天,真的會打贏人類嗎?」
由美國國防部國防高等計畫研究署(DARPA)推出的漏洞自動攻防比賽CGC(Cyber Grand Challenge),由七隊機器人隊伍進行對決,比拼在同樣的CGC平臺上,誰是找漏洞和修補漏洞速度最快的機器人。而在CGC比賽獲得冠軍的機器人,便成為DEF CON CTF比賽的第15隊參賽者,和其他來自全球14隊比賽找漏洞和修補漏洞的速度。
第一天比賽的結果,機器人和人類比賽墊底,名列第15名,不過,機器人隊伍在第一天比賽後的推特(Twitter)上表示,因為接錯流量API所以沒有封包可以分析,第二天,其他人類隊伍就知道機器人的厲害了;而到了第二天,機器人在兩天接錯流量API,依舊沒有封包可以分析的情況下,仍然打贏兩隊人類隊伍。
最終,這場CTF比賽中,由美國隊PPP獲得第一名,第二名則是由中國藍蓮花和0ops組成的blo0p,第三名則是去年冠軍韓國隊DEFKOR,臺灣HITCON雖然沒有獲得前三名,但推估,應該有第四名的實力。不過,臺灣CTF戰隊HITCON領隊李倫銓引述此次CEF CON CTF冠軍隊伍PPP的看法指出,機器人最後一天才接上流量,但在9個Binary中,就順利找到7個攻擊程式(Exploit)、修補6個漏洞,假如機器人兩天的流量都有順利接上、有封包可以分析的話,「機器人應該會屌打全場」他說。
而另外一位臺灣參賽選手和機器人實際對戰後更認為,如果不是大會的API出問題,這次機器人只要可以利用高難度洞跟複雜邏輯漏洞,然後搭配payload的隱藏跟偵測,就會是機器人致勝的關鍵。
機器人崛起的時代來臨了嗎?
這次的DEF CON比賽主題是:Rise of the Machines(機器人崛起),就是為了見證這個CGC計畫中,劃時代的歷史意義,而李倫銓認為,臺灣隊伍有機會可以見證人類決戰機器人的歷史性時刻,是一個非常難得和寶貴的經驗,而這些經驗對於未來這類自動化攻擊程式分析的進展等,都會帶來實質的幫助。
整個CGC的比賽從2013年10月正式展開,期間經過3場初賽後,在2015年8月的DEF CON活動中,由CGC專案經理 Mike Walker宣布入圍CGC決賽的七隊參賽隊伍外,也同時宣布,CGC比賽冠軍將加入DEF CON CTF比賽,和其他14隊CTF隊伍一起較勁。
宣布最終入圍的7個隊伍,包括:由加州柏克萊大學組成的CodeJits所設計的Galactica機器人;由卡內基美隆大學David Brumley教授創立的新創公司ForAllSecure設計的Mayhem機器人;以及由程式分析公司GrammaTech和維吉尼亞大學組隊的TECHx所設計的Xandra機器人。
另外,還包括由愛德華大學資工系的教授Jim Alves-Foss及其博士後研究員Jia Song組成的兩人團隊CSDS所設計的Jima機器人;美國國防公司Raytheon(雷神)組成DeepRed設計出的Rebeus機器人;喬治亞大學學術理論分析人員和CTF選手組成的四人小組disekt所設計的Crspy機器人;以及加州大學聖塔芭芭拉分校的學生組成的Shellphish所設計的Mechanical Phish等七隊機器人。
其中,像是Shellphish則是同時參與CGC比賽,且入圍DEF CON CTF比賽的隊伍;而卡內基美隆大學組成的ForAllSecure新創團隊中,也有許多熟悉CTF比賽的高手。同時懂得CGC比賽邏輯,並懂得人類CTF的參賽規則,也有助於人類去面對這些機器人在比賽發動攻擊時,應該如何做好因應對策。
漏洞出現速度超過人類修補漏洞速度,仰賴電腦才能加速
回首DARPA推出這個CGC挑戰賽,是因為軟體和系統漏洞出現的速度越來越快,而人類找尋漏洞和修補漏洞的速度,完全跟不上漏洞出現的速度,希望解決現實社會中難以解決的零時差(Zero Day)漏洞的問題,透過即時的自動化網路防禦系統,可以透過系統自動化找出漏洞並且完成修補,真正做到降低這種零時差漏洞對系統和使用者帶來的損害。
李倫銓也以2003年出現的微軟SQL漏洞:SQL slammer蠕蟲,在短短10分鐘內就感染7萬多臺電腦,這樣的感染速度,人類根本沒辦法追上,唯有依賴電腦的自動化工具,才有可以遏止。
因此,如果藉由CGC計畫的推動,最終可以研發出一套具備自動化分析,找出系統漏洞、過濾各種攻擊程式,並且自動產生防禦機制以及自動修補系統漏洞的CRS系統,就可以大幅提升人類找尋漏洞和修補漏洞的速度。
李倫銓指出,不管現在我們在使用的各種作業系統到底安全程度有多差,但是,在經過過去這麼多年的發展下,許多作業系統都已經具備一定程度的安全防護措施,藉此確保使用者的安全性,例如,在記憶體中檢查以防止惡意程式執行的DEP(Data Execution Prevention,防止資料執行)技術、防止惡意程式對已知位址攻擊的ASLR(隨機分配位址空間)技術等。
因此,這次DARPA便開發出一套已精簡化過的、專門用來做電腦安全研究的開源DECREE系統(DARPA Experimental Cybersecurity Research Evaluation Environment)。他則指出,這樣的簡化系統具有單純性(Simplicity)、可重現性(High Determinism)和限制性(Incompatibility)等特色,都可以讓參與的CGC參賽隊伍,可以更聚焦在安全性的分析和研究。
機器人比賽卡內基美隆團隊奪冠,已對人類產生極大影響
由美國七個團隊設計出七套網路決策推理系統競技的結果,首先在美國時間8月4日出爐,由CGC初賽的冠軍、卡內基美隆大學成員組成的新創公司AllForSecure設計的Mayhem機器人獲得,同時獲得200萬美元的獎金。
「這次Mayhem比賽到一半就當機,」李倫銓說:「可怕的是,最終Mayhem還是贏得冠軍。」而Mayhem厲害的地方還不止於此,他也補充說明,像是人類CTF冠軍PPP在這次的比賽中,在他們釋出的修補程式埋藏一個後門程式,其他隊伍會習慣去抓第一名隊伍的修補程式來使用,但一旦安裝PPP的修補程式後,也等於安裝PPP預設埋藏的後門程式。他笑說:「這種人類的小心機,其實,機器人(Mayhem)也有。」
第二名則由TECHx的Xandra機器人,第三名由Shellphish的Mechanical Phish機器人Machaphish獲得。不過,這中間曾經出現一個小插曲,Shellphish團隊成員之一Antonio Bianchi 表示,原本在8月4日CGC比賽結束後,便已經宣布Shellphish團隊獲得第三名,但到8月5日卻通知說,第三名的成績必須重新檢驗。Antonio Bianchi 表示,主要是CGC的檢測系統有系統錯誤(Bug),導致得出兩個不一樣的成績,以至於必須重新檢驗。所幸,到8月7日便確認,Machaphish是名符其實、全世界第三厲害的機器人CRS系統。
重新回顧這次CGC和人類的CTF比賽,看起來,因為一些人為的操作錯誤,以至於機器人沒有展現真正的實力,但是,整個比賽過程中,比賽的效能占有相當大的比重,以CGC設計的平臺,對於具有超高效能的機器人系統是相當有利的。
不論這種機器人和人類的CTF比賽是否還有機會再度舉辦,但可以證明的是,強調效能的找漏洞、分析漏洞甚至是修補漏洞,的確是機器人擅長的事情,而人類如何把熟悉的模式或模型,加諸到這樣的機器人中,協助人類加速找尋漏洞的速度,才是未來人類好好發揮機器人專長的發展方向。
上週(7/31~8/7)重要資安事件回顧:
※人腦-電腦介面研究持續進展,專家:惡意程式駭入人腦可能成真
※國安會資通安全辦公室正式成立,國發會管考處長何全德兼主任一職
※1Password推出個人用密碼代管服務,月費2.99美元
※香港比特幣交易商Bitfinex被駭,價值6500萬美元的比特幣遭竊
※Google上周將修補上百個Android漏洞,過半和高通元件有關
※Google.com網域啟用HSTS安全瀏覽,未加密網址自動轉成加密傳輸