比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > AVAX > Info

獵豹區塊鏈研究中心楊文玉:智能合約自動化審計存在誤報率高、自動化程度低及審計時間長三大問題 | 區塊鏈P.O.D大會_APP

Author:

Time:1900/1/1 0:00:00

9月5日,在由Odaily星球日報主辦、36Kr集團戰略協辦的P.O.D大會安全論壇上,獵豹區塊鏈研究中心安全專家楊文玉發表題為《智能合約自動化審計技術》的演講。楊文玉開場介紹了智能合約發展的現狀。大部分人認為區塊鏈現在是一個寒冬時期,但是據獵豹區塊鏈研究中心統計,過去一個月中,智能合約每日新增數量為1317個。研究中心收錄的項目中,區塊鏈基礎設施占9.38%,游戲和VR4.44%,商業和零售3.6%,社交媒體與通訊3.4%。在數量穩定增長的同時,智能合約還面臨著安全問題。從2017年到2018年6月,智能合約漏洞頻繁爆發,帶來大量資金損失,也使得區塊鏈甚至智能合約的一些開發者或者用戶對智能合約的安全性產生質疑,也阻礙了以太坊之后的發展。除此之外,Fomo3D在興起的時候,僅僅在第二天就出現了大量的山寨合約。山寨Fomo3D游戲開發者更改了積極分配的邏輯,導致投入的資金大部分都流向山寨合約開發者,也對DApp發展造成阻礙。在這樣的背景下,如何有效保障海量智能合約的安全?楊文玉認為,最好的方法是降低人工審計復雜度,采用智能合約自動化審計。具體來講,自動化審計方法主要分為三類:第一種是特征代碼匹配,就是對惡意代碼進行提取、抽象,形成匹配模塊對待檢測源碼進行檢測。優點是速度快、迅速響應新漏洞,缺點則是使用范圍有限、漏報率高。第二種是基于形式化驗證的自動化審計方法。最早是在2016年由Hirai提供,Grishchenko和Hildenbrandt之后進行了改進,采用F*framework和Kframework,將EVM轉化為一個Formalmodel。Formal是航空航天領域常見的形式化驗證框架,而Kframework則是一個語義的轉化框架。最后一種是現在最常用的方法,基于符號執行和符號抽象自動化審計。分析智能合約時,通過編譯源碼,可以形成EVMOPCODE,然后輸入到自動化分析引擎,轉化成CFG,再利用這兩種方法進行分析。比較典型的是Oyente和Securify系統,可以降低誤報率和漏報率,但是分析方法繁瑣并且耗時。不過,楊文玉也指出,現在自動化審計方法處于一個很不成熟的階段,主要面臨三大問題:誤報率高,自動化程度低、依賴人工二次審計,審計時間比較長。以下為楊文玉演講全文,enjoy:

動態 | 獵豹大數據:區塊鏈相關App流量與數字貨幣交易相關:據騰訊網報道,獵豹大數據顯示,數字貨幣交易是區塊鏈相關App的第一個爆發點。越接近交易的App,流量也越大,具體為:錢包/交易所>挖礦/行情>資訊。在過去半年中,區塊鏈相關App的滲透率基本隨比特幣價格波動而波動,同樣越接近交易的App,滲透率走勢也越貼近幣價。[2018/8/16]

謝謝大家,今天非常榮幸來參加這個會議,今天我所帶來演講主題就是我們一起來淺析一下當下智能合約自動化安全檢測的技術,今天我的演講可能分兩位個部分,首先第一部分我們會一起來看一下現在以太坊上智能合約發展的現狀,第二部分基于這個現狀了解,再詳細描述一下現在智能合約自動化涉及的一些方法。首先我們一起看一下現在智能合約發展的一個現狀,根據我們平臺,可以知道在過去一個月當中,智能合約的數量每天還在以1317個的平均增長率高度穩定地增長著,可能和我們所理解的區塊鏈現在是一個寒冬時期,所不太一樣這種增長率還比較穩定的。其次我們通過一些NLT方法,把智能合約領域劃分出來,除了一些敏感領域,現在智能合約比較多的應用在一些基礎設施,商業零售,游戲以及社交媒體和通訊。這是一個智能合約大的現狀,智能合約現在面臨一個安全現狀是什么樣的,可能剛才兩位嘉賓已經都進行了非常詳細的描述,從2017到2018年6月,這種智能合約漏洞頻繁爆發,每次都帶來大量資金損失,也使得區塊鏈甚至智能合約的一些開發者或者一些用戶對智能合約這種安全性產生一些高度的質疑,也阻礙了以太坊之后的發展。除此之外,我們還可以看到像剛才嘉賓講到Fomo3D這件事情,除了基本智能合約安全,現在安全受到極大的關注,之前Fomo3D在興起的時候,僅僅在第二天就出現了大量的山寨合約,山寨的Fomo3D,在這種游戲當中,其實開發者更改了積極分配的邏輯,使得其實玩那個蜂窩游戲過程當中,投入的資金大部分都是流向山寨合約開發者,也對DApp發展造成阻礙。現在面臨一個問題是如何有效保障海量智能合約的安全,也是我們今天要討論的問題,也是第二部分想跟大家分享一個現在智能合約自動化審計技術的發展。再回顧一下,現在智能合約截止到昨天中午12點,以太坊總共有193萬個合約,日增長率穩定增長,現在審計方法有人工審計,以及自動化審計。在海量智能合約當中,我們最好的方法就是降低人工審計復雜度,從而讓更多通過自動化審計進行。我們把自動化審計分為三個部分。首先第一種是特征代碼匹配,第二類是基于形勢化驗證的子都化審計方法,最后一種是基于符號執行和符號抽象自動化審計。首先看特征代碼匹配,從名字可以很清晰理解到,就是對惡意代碼進行提取抽象,我們是一種語義匹配,匹配靜態原代碼,審計的方法優點是很顯而易見的,比如說速度很快,因為對源碼進行一個字符串匹配,第二個可以迅速進行新的漏洞,他審計出現一個新的漏洞,我們就可以快速提交一些新的匹配模式。他缺點在哪里,再來看一下,我們所理解的現在區塊鏈都上應該是公開透明的,但實際情況并不是這樣,我們大概做了一個統計,目前代碼的開原率僅僅只占48.62%,就是說在以太坊上,其實有超過一半合約是不開源的,只暴露code,剛剛那個嘉賓也說,他們也費了十分大的力氣去立項這個code這種限制就導致這種方法使用范圍有限,傳統的靜態審計方法比如說App檢測,會調用一個庫里面確定唯一一些函數,對他進行審計,智能合約里面一些函數一些特征變化性比較多的,所以說漏洞率比較高。第二個方法,我們就來探討一下現在比較火的,基于形式化驗證的自動化審計,形式化驗證審計智能合約安全,最早是在2016年由Hirai提供的,他提出了一點,他當時拿出邏輯交互證明器,通過IsabeldeLem-Language->Formal-model,通過形式化model驗證,來判斷代碼邏輯是否存在問題,這項工作最后的兩個把形式化方面進行進一步改造,他們放棄Lem-language也是比較低效的轉化方式,他們采用了F*framework和Kframework,將EVM轉化為一個Formalmodel,而Formal可能就是經常在航空航天領域當中做一些形式化驗證的框架,而Kframework則是一個語義的轉化框架,這兩個比較有代表性的技術研究,如果想更加深入了解可以參考下列的一些論文。第三點就是今天想要著重跟大家交流,以及現在最常用的一些方法,就是基于符號執行和符號抽象的自動化審計,這種自動化審計現在看一下,我們在分析一個智能合約的時候,首先要明確分析對象是什么,像我們剛才在解釋特征匹配代碼當中,我們知道現在EVM上智能合約代碼大部分是不公開的,我們現在分析對象就確認應該是EVMOPCODE,在通過一些源碼,我們通過編譯,可以形成EVMOPCODE,輸入到自動化分析引擎。在這種基于符號執行和符號抽象化自動化審計框架里面,有些共有的特性,OPCODE在輸入這個引擎當中,都會轉化成一個CFG,就是一個一個控制流程圖,通過這個CFG,可以簡單了解一下這個CFG是什么意思,CFG就是把合約代碼里面邏輯包裝成哪個快,在里面邏輯分叉的時候,左邊那個合約形成一個十分龐大完善的CFD,讓程序員更好了解能夠執行一些邏輯。在有CFG生成之后,現在就出現兩種分析方法,第一類就是基于符號執行的驗證,這類比較有代表性,大家都比較熟知像Mythril、Oyente、Maian,還有一種就是上個月剛剛公開的一個符號抽象分析的方法,就是Securify,今天主要跟大家講一下Oyente跟Securify這兩種系統具體的架構以及實現方法,首先我們來看Oyente,Oyente的邏輯我們可以從左邊看到,在CFG申請之后,首先是一個explorer,會把代碼當中每一個流程驗證一邊,進行一個形式化驗證,就像這個我們驗證是我們是否有一個X,使得X不僅滿足C1、C2、C3條件,這時候可以判斷狀態是no還是yes,以此驗證整個邏輯的流程。第二個coreanalysis這一部分其實是Oyente最為核心的一個部分,將剛剛輸出的explorer這種路徑,把它轉化,只進行一些漏洞驗證,目前只提供包括TOD和Timestampdependence和Mishandledexceptions,這三種驗證,最后這個系統又能保證誤報率和漏報率,他采用微軟的開源的驗證器,進行整體的架構封裝,在剛剛我們講述過程中,大家也應該了解到,在CFG轉explorer驗證的時候,我們是需要對他的循環,每次都是一個驗證,所以這種分析方法特別耗時,并且不一定成功。這就是Oyente目前存在一個巨大問題。在這個問題基礎上,像Securify,他們就提供了另外一種方法,他們認為現在合約的代碼其實是特別容易解耦合的,不像傳統代碼,耦合性特別高,像合約代碼這個一些比較固定形式化的解耦合模塊,我們并不是需要對整個合約邏輯進行一個交驗,我們對合約解耦各個模塊進行分析,以此提高自動化程度,左邊這個圖是整個驗證流程,把contractbytecode通過定義域語言之后有一個驗證模塊,特別像之前說的模式匹配,把一些漏洞轉化成驗證語言模式匹配框架,驗證這個語義是否磨合這個。最后也給出一個report,通過這個自動化審計方法,最終可以輸出錢包的管理者是可以被修改的。再具體一點是怎么做語義分析,其實分析這種explorer代碼是從兩個維度,第一個是邏輯,第二個是數據,邏輯方式定義兩種邏輯,第一個叫做MayFollow,第二個叫做MustFollow,MayFollow的意思就是說,L2必須是有一條路徑跟在L1后面,而MustFollow是說L2每一條路徑都跟在L1后面,這兩種區別定義了整個邏輯的框架。第二個是數據,怎么定義合約里面數據變化用了三種,第一個MayDepOn,就是兩個因素,一個叫做Y,一個叫T,T變,Y可能變也可能不變。第二個是Eq,就是Y是由T決定的。第三個是DetBy,Y和T是一一對應的,只要T變Y肯定要變了,這里面用更加形象的方法來想象一下,其實Maydepon就像我們的T變量是time,在一段時間中,Y可能是一個值,T變,Y可能不變,第三個就是說一對一關系,就像我們算哈希,只要你T變,Y肯定要變,通過邏輯和數據這兩個維度,他們進行一些驗證,最終驗證模塊現在提供了大概六、七個智能合約漏洞驗證性的語言,這種語言都是以插件化來寫的,其他的安全開發者可以在不斷豐富漏洞的驗證語言。最終我們在對自動審計進行評估的時候,是從要自動化程度、漏報率、誤報率提供這件事情,我們現在知道數據就可以綁定出來,檢測出來數據還是需要人工進行二次確認,這個工作是十分繁瑣的,經過這種方法可以是誤報率會降低,這兩種符號執行和符號抽象的自動化審計方法。最后回顧一下,現在自動化審計方法分為三種,特征代碼匹配,形式化驗證以及符號執行、符號抽象。回顧整個淺析過程,我們可以清楚知道,現在自動化審計方法是在一個很不成熟的階段,主要面臨三大問題,第一個是誤報率高,并不能做到完全自動化,還需要人工參與。第二個是自動化程度比較低,還需要不斷去審計它,第三個審計時間比較長。最后就是回顧一下我們整個分析,首先我們明晰一下智能合約發展現狀,又檢測自動化審計方法,左右各有我們技術交流群,有感興趣小朋友歡迎加入,可以一起更加深入的討論,這就是我今天所分享的內容,謝謝。

美股開盤 區塊鏈概念中概股僅獵豹移動和中網載線開漲:今日美股開盤,區塊鏈概念中概股僅獵豹移動和中網載線開漲。其中迅雷(XNET)開跌0.46%,獵豹移動(CMCM)開漲0.52%,中網載線(CNET)開漲1%,人人公司(RENN)開跌2.45%,拍拍貸(PPDF)開跌0.59%,寺庫(SECO)開跌0.19%,蘭亭集勢(LITB)開跌1.8%。[2018/5/1]

獵豹移動CEO傅盛:區塊鏈是新時代的生產關系:在獵豹2018全球年會上,獵豹移動CEO傅盛談到了獵豹將如何運用AI和區塊鏈對獵豹產品進行改造。AI為產品賦能,為用戶提供最好的工具,以此為核心建設獵豹的生態;用區塊鏈的思維放大生態勢能。他認為如果說AI是新時代的生產力,那區塊鏈就是生產關系。區塊鏈帶來的去中心化思維體系,可能會普及一代人對整個社會關系的思考。區塊鏈的去中心化和互信機制,極大提高了組織效率,也有可能重塑整個社會關系。[2018/2/7]

金色財經獨家消息 獵豹移動高級副總裁認為獵豹進軍區塊鏈行業是一項重要舉措:金色財經獨家消息,獵豹移動高級副總裁孫明焱針對此次海外官方宣布推出數字資產錢包SafeWallet的事件發表聲明稱:“進軍區塊鏈行業和AI戰略一樣,是獵豹移動的一項重要舉措,具有重大意義。獵豹移動會致力于始終保持在新技術發展的前沿位置,相信我們會在移動資產安全領域發揮重要作用。”[2018/1/31]

獵豹CEO傅盛:將從安全領域切入區塊鏈,因為對CES新奇感已過:獵豹的CEO傅盛第三次來到CES時表示他對CES的新奇感正在減弱,準備將要從最擅長的安全切入區塊鏈,不涉及到交易,幫助用戶保護數字資產。[2018/1/11]

Tags:區塊鏈ODECFGAPP區塊鏈幣種類Archive NodewCFG幣幣牛牛app下載軟件

AVAX
深化政企合作,宿遷與京東合作發布電子營業執照區塊鏈應用_區塊鏈

9月18日,宿遷工商局與京東集團聯合發布了電子營業執照區塊鏈應用。由于區塊鏈分布式記錄信息、可追溯、不可篡改等特性,企業的營業執照從上鏈開始到每一次信息變更的過程都會被記錄,同時會自動同步到所有.

1900/1/1 0:00:00
黑客用智能手機挖礦日益嚴重,你的手機還好嗎?_DRO

2018年8月22日,據“每日郵報”報道,黑客利用智能手機挖礦的問題日益嚴重,并強調保護用戶智能手機的必要性.

1900/1/1 0:00:00
螞蟻金服蔣國飛:兩年內區塊鏈商用化會井噴,廣度將超 AI_聯盟鏈

2017年底,螞蟻金服副總裁、區塊鏈負責人蔣國飛曾預測,2018年的區塊鏈技術將開始落地到實際商用系統,會出現第三代區塊鏈技術架構,并實現跨鏈價值轉移和數據交換。從眼下看,這些預測已經實現大半.

1900/1/1 0:00:00
紅頭文件加碼監管,五部委聯合發布虛擬貨幣風險提示_區塊鏈

8月24日下午,銀保監會、中央網信辦、部、人民銀行、市場監管總局五部委聯合發布《關于防范以“虛擬貨幣”“區塊鏈”名義進行非法集資的風險提示》.

1900/1/1 0:00:00
BCH可能是個沒有結局的故事,但里面寫滿了韭菜的辛酸_BTC

11月16日凌晨,整個幣圈以不亞于觀看世界杯的熱情,圍觀了BCH算力大戰,目前BCHABC與BCHSV都已在獨立穩定出塊,BCH硬分叉已經實際完成.

1900/1/1 0:00:00
游戲區塊鏈:價值回歸的重要支撐力量(上)_區塊鏈

編者按:本文來自共識魔方,作者:共識魔方,Odaily星球日報經授權發布。先說結論ETH如能重回高峰,游戲,特別是大型在線協作類角色扮演游戲,將是極重要的支撐力量.

1900/1/1 0:00:00
ads