国产精品久av福利在线观看_亚洲一区国产精品_亚洲黄色一区二区三区_欧美成人xxxx_国产精品www_xxxxx欧美_国产精品久久婷婷六月丁香_国产特级毛片

錦州市廣廈電腦維修|上門維修電腦|上門做系統|0416-3905144熱誠服務,錦州廣廈維修電腦,公司IT外包服務
topFlag1 設為首頁
topFlag3 收藏本站
 
maojin003 首 頁 公司介紹 服務項目 服務報價 維修流程 IT外包服務 服務器維護 技術文章 常見故障
錦州市廣廈電腦維修|上門維修電腦|上門做系統|0416-3905144熱誠服務技術文章
智能合約自動化審計技術淺析

作者: 佚名  日期:2018-10-04 17:00:21   來源: 本站整理

 經過THE DAO事件、幣安被盜事件,智能合約的安全性越來越受到業內關注。本文根據獵豹區塊鏈安全專家楊文玉9月5日在星球日報P.O.D大會上的分享錄音整理而成,淺析當前智能合約的發展現狀,以及智能合約自動化檢測的一些方法。
一、智能合約發展現狀
首先我們來一起看看現在智能合約發展的一個現狀:在過去一個月當中,智能合約的數量每天還在以1317個的平均增長率高速穩定的增長著,這和我們所理解的“區塊鏈現在處于寒冬的時期”不太一樣,其實智能合約的增長率還是比較穩定的。
現在智能合約比較多的應用在一些基礎設施、商業零售、游戲以及社交媒體和通訊領域中。

二、智能合約安全現狀
從17年9月到18年6月,智能合約的漏洞頻繁爆發,每次漏洞爆發都帶來了大量的資金損失。這使得一些區塊鏈開發者、智能合約的開發者或者一些用戶對智能合約安全性產生高度的質疑,也阻礙了以太坊之后的一些發展。
除了基本的智能合作安全,現在DAPP的安全也是受到了極大的關注。比如說FOMO3D在興起的時候,僅僅在第二天就出現了大量的山寨合約、山寨的游戲。在這些游戲中,開發者巧妙地更改了資金分配的邏輯,使得玩家在玩FOMO3D游戲的過程中,投入的資金其實大部分都是流向于這種山寨合約的開發者的,這對DAPP的發展有了極大的阻礙。
現在我們共同面臨著一個問題——如何保證海量的智能合約的安全。
三、智能合約自動化審計方法
我們來回顧一下現在智能合約的情況。截止到昨天中午12點,據統計,現在共有193萬個智能合約,并且一直保持著穩定的日增長率。現在的審計方法有人工的攻防審計以及自動化的審計。
在海量的智能合約中,最好的一種設想就是要降低人工審計的一些復雜度,從而更多的通過自動化審計來進行。
我們把自動化審計分為三個部分:
第一種就是特征代碼的匹配,第二類就是基于形態化驗證的自動化審計,最后一類是基于符號執行和符號抽象的自動化審計。
1、特征代碼匹配
我們首先看這一項,特定代碼匹配。大家從名字上來看應該就能理解到,其實它就是對惡意代碼進行一些提取抽象,像我們之前做的代碼靜態檢測,我們抽樣成一種語義匹配,然后再去匹配它的靜態源代碼。
這種審計的方法的優點是顯而易見的,比如說速度很快,因為它就是對原碼進行一個字符串的匹配。第二是它能夠迅速的響應新的漏洞,因為這種審計方法大部分是以插件形式開發,比如出現了一個新的漏洞,我們就可以快速提交一些新的匹配模式。
那么它的缺點在哪里呢?我們所理解的現在的區塊鏈都應該是公開透明的,但實際情況并不是這樣,我們大概做了一個統計,目前代碼的開源率僅僅只占48.62%,
也就是在以太坊上其實有超過一半的智能合約是不開源的,只暴露它的一個OPCODE。
對于OPCODE的分析對于安全人員來說其實也是面臨著巨大的挑戰,有些人費了十分大的力氣,去逆向OPCODE,這就導致了它的適用范圍極為有限。
其次就是漏報率高。因為它的一些靜態審計方法其實并不和傳統的靜態代碼審計方法一致,傳統的靜態審計方法,比如說APP檢測,我會調用庫里面,確定穩定的一些函數,來對它進行審計,但智能合約里面它的一些函數、它一些特征等等,還是變化性比較多的,所以說它的漏報率會比較高。
2、基于形式化驗證的自動化審計
第二個方法,我們來探討一下現在比較火的,基于形式化驗證的自動化審計。
形式化驗證來審計智能合約安全,最早是在16年,由Hirai提供的,當時拿Isabelle高階邏輯交互定理證明器,然后交EVM的一些OPCODE ,通過它的一個lem language轉化成了一個形式化的model,然后通過形式化model的驗證來去判斷它代碼中的邏輯是否存在問題。
而基于這項工作,之后由兩個學家把形式化方法進行了進一步的改正,也就是說他們放棄了lem language這種比較低效的轉換方式,采用了F-framework和K-framework將DVM轉化為一個formal model,而F-framework就是NASA他們經常在航空航天領域當中做一些形式化漏洞驗證的框架,而K-framework就是語意的一些整合框架。
3、基于符號執行、符號抽象的自動化審計
第三點,也是我今天想要著重跟大家交流的,以及現在最常用的方法,就是基于符號執行和符號抽象的一些自動化審計。
我們在分析一個智能合約的時候,我們首先要明確我們的分析對象是什么。也就像我們剛才在解釋的那個特征匹配代碼當中,我們知道其實現在EVM上合約代碼大部分是不公開的。
我們就確認應該是一個EVM OPCODE,通過一些源碼,編譯,可以形成一個OPCODE,然后輸入到我們自動化分析引擎。
在這種基于符號執行和符號抽象化的自動化審計框架里面,其實它有些共有的特性,就是它在OPCODE或者在輸到這個引擎之后,都會轉化成一個CFG,就是我們的一個Control flow graph,即控制流程圖。
可以簡單了解一下這個CFG是什么意思。CFG就是說他把合約代碼里面的邏輯包裝成每個塊,然后有邏輯有分叉的時候,比如說有IF等等這種判斷的時候,就把它分叉。
比如說左邊這個assertion這個合約,我們首先是將input與256進行一個比較,那么在出現一個If的判斷之后,我們需要對這個CFG進行一個分叉。

CFG Builder主要是對OPCODE這種智能合約代碼,把它形成一個十分龐大完善的一個CFG,然后讓程序員更好的去了解它里面執行的一些邏輯。再有CFG生成了之后,就是這樣兩種分析方法。
第一類就是基于符號執行的驗證,這邊比較有代表性的,可能大家都比較熟知的像Mythril、Oyente、Maian。還有一種就是,上個月他們剛剛公開的一個符號抽象分析的方法,也就是Securify。
下面主要分析一下Oyente以及Securify這兩種系統的一個具體的架構以及實現方法。
Oyente符號執行驗證
Oyente的邏輯是在CFGbuild形成之后,首先是一個EXPLORER,EXPLORER的意思就是說我會把代碼當中的每一個流程都去驗證一遍,進行一個之外的驗證。
我們的驗證就是是否有一個X,使得X不僅滿足C1、C2、C3三個條件,并且Z=X+2,那么這時候我們可以判斷他的狀態是no還是yes,然后以此來驗證整個邏輯的一個流程。

到了第二個code analysis,這一部分其實是這個Oyente最為核心的一個部分,就是它將剛剛輸出的EXPLORSE這種路徑把它轉化,至始至終只包含Ether的一些路徑,進行一些漏洞驗證,而他目前只提供包括TOD、Timestamp dependence、Mishandled exceptions這三種驗證,最后系統為了保證誤報率和漏報率,采用了微軟的Z3Bit-Vector Solver 開源的驗證器,然后來進行整體架構的一個封裝。

在剛剛我們講述的過程當中,其實大家也應該了解到,在CFG轉EXPLORER驗證的時候,我們需要對它的循環的每次都進行一個驗證,所以說這種分析方法特別耗時,并且也不一定成功。
比如說像parity的那個錢包代碼,它的Oyente覆蓋率僅僅達到20%,剩下80%的代碼,是沒有辦法去跟蹤的,所以這就是Oyente目前存在一個巨大的問題。
Securify符號抽象分析
在這個問題的基礎上,像Securify他們就提供了另外一種方法,它們認為現在合約代碼其實是特別容易解耦合的,不像我們傳統的代碼一樣,它的耦合性特別高,但像合約代碼里面,就有transfer等等一些比較固定解耦合的一些結構和模塊,我們并不是需要對整個合約的邏輯進行的校驗,可能我們就是對合約解耦合的各個模塊進行校驗分析,因此可以提高它的自動化程度。
這張圖也就是他們整個在驗證的一個流程:

它們把contract bytecode轉化成一種他們自定義的一種語義語言,然后通過自定義的語義語言,它們之后有一個驗證模塊,這個驗證模塊就特別像我們之前說的那種模式匹配,就是把一些漏洞轉化成一種它驗證語言的模式匹配的框架,然后去驗證它這個語意在此是否滿足他這個比較,最終會生成一個安全報告。
這里也給出了一個parity的例子,通過自動化審計的方法,最終可以輸出錢包的owner其實是可以被修改的。
再具體一點,它是怎么做語義分析的呢?Securify分析這種合約代碼,是從兩個維度,第一個是邏輯,第二個是數據。
在邏輯方向的話,它定義了兩種邏輯,第一個叫MayFollow,第二叫MustFollow。MayFollow的意思是說L2是有一條路徑是跟在L1后面的,而MustFollow是說L2每一條路徑都跟在L1后面。這兩種區別定了它整個邏輯的一個框架。
第一個就是它的一個數據,它怎么定義合約里面的數據變化?分了三種,第一種是MayDepOn,就是兩個因素,一個叫Y、一個叫T,T變Y可能變也可能不變。
第二個就是Eq,就是說Y是由T來決定的
第三個就是大家把DetBy和Y和T是一一對應的,只要T變Y就肯定要變了。
這里面就用更加形象的方法,我們想象一下,MayDepOn就是,變量是T,在一段時間當中Y可能是一個值,然后有的說T變Y可能不變,第三個DetBy就是說一對一的關系,就比如說我們知道哈希,哈希如果T變,Y就肯定要變。

通過邏輯和數據這兩個維度進行了一些驗證,最終驗證模塊的話,現在提供了大概六七個智能合約漏洞的驗證性的語言,而且這種語言都是以插件化的形式來寫的,其他的安全開發者可以不斷去豐富這個漏洞的驗證語言,最終我們在對自動化審計進行一個評估的時候,我們其實是要從它的自動化程度,漏報率、誤報率來評估這件事情的。
像我們現在知道的一些數據就可以表明出來,其實像Mythril跟Oyente,它里面存在大量的誤報,比如說它檢測出來的數據還是需要人工進行二次確認,這個工作其實是非常繁瑣,而Securify這種方法可能誤報率會降低。
這也是兩種比較現在比較流行的符號執行和抽象的自動化審計方法。
四、總結回顧
最后我們回顧一下,現在做的智能合約審計的話可能分為三種,:特征代碼匹配、形式化驗證以及符號抽象。
回顧整個解釋的過程當中,我們可以清楚地知道,現在自動化審計的方法其實是出于一個很不成熟的階段。
它們主要面臨三大問題:
第一個就是誤報率高,其實它并不能做到完全自動化,它還需要人工的一些參與。
第二個就是它的自動化其實程度比較低,還需要不斷有feedback去去審計。
第三就是審計時間比較長,比如說像Mythril,平均在60秒,Oyente大概在30秒,而Securify大概在20秒。



熱門文章
  • 機械革命S1 PRO-02 開機不顯示 黑...
  • 聯想ThinkPad NM-C641上電掉電點不...
  • 三星一體激光打印機SCX-4521F維修...
  • 通過串口命令查看EMMC擦寫次數和判...
  • IIS 8 開啟 GZIP壓縮來減少網絡請求...
  • 索尼kd-49x7500e背光一半暗且閃爍 ...
  • 樓宇對講門禁讀卡異常維修,讀卡芯...
  • 新款海信電視機始終停留在開機界面...
  • 常見打印機清零步驟
  • 安裝驅動時提示不包含數字簽名的解...
  • 共享打印機需要密碼的解決方法
  • 圖解Windows 7系統快速共享打印機的...
  • 錦州廣廈電腦上門維修

    報修電話:13840665804  QQ:174984393 (聯系人:毛先生)   
    E-Mail:174984393@qq.com
    維修中心地址:錦州廣廈電腦城
    ICP備案/許可證號:遼ICP備2023002984號-1
    上門服務區域: 遼寧錦州市區
    主要業務: 修電腦,電腦修理,電腦維護,上門維修電腦,黑屏藍屏死機故障排除,無線上網設置,IT服務外包,局域網組建,ADSL共享上網,路由器設置,數據恢復,密碼破解,光盤刻錄制作等服務

    技術支持:微軟等
    春暖花开亚洲| 亚洲国产高清不卡| www激情久久| 亚洲国产精品影院| 日韩欧美成人区| 亚洲激情在线视频| 国产69精品久久久久久| 国严精品久久久久久亚洲影视 | 91视频在线免费| 天天躁夜夜躁狠狠是什么心态| 日韩美女一级片| 99热这里只有精品66| 日本免费看黄| 成人高清免费观看mv| 日本一区免费网站| 中文一区一区三区免费在线观看| 激情综合网天天干| 亚洲国产中文字幕在线视频综合| 亚洲高清福利视频| 国产精品爱久久久久久久| 一区二区三区欧美在线| 亚洲天堂小视频| 男人的天堂一区二区| 一本大道久久a久久精品| 天天色天天草| 韩国美女久久| 亚洲激情视频| 亚洲人123区| 在线不卡国产精品| 久久精品女人的天堂av| 国内精品国产三级国产aⅴ久| 日本少妇裸体做爰| 午夜激情福利视频| 激情网站在线| 91视频久久| 久久久高清一区二区三区| 欧美一区二区久久| 国产三级精品网站| 午夜免费看毛片| 奴色虐av一区二区三区| 福利视频大全| 电影亚洲精品噜噜在线观看| 欧美 日韩 国产 一区| 国产精品青草久久| 亚洲网站在线播放| 日本一区视频在线| 成人激情五月天| 在线亚洲精品自拍| 制服丝袜在线播放| 午夜性色一区二区三区免费视频| 中文字幕一区二区在线播放| 国产午夜精品视频| 性欧美精品一区二区三区在线播放 | 国产一区网站| 久久精品网站免费观看| 夜夜躁日日躁狠狠久久88av| 日本免费高清一区| 最新日韩免费视频| 日本h在线观看| 久久91超碰青草在哪里看| 免费看欧美女人艹b| 欧美午夜电影在线播放| 成人精品视频在线| 理论片大全免费理伦片| 久久日.com| 成人福利视频| 国产主播一区二区三区| 日韩一级高清毛片| 欧美激情视频一区二区三区| 日韩一区二区三区四区视频| 99久久免费精品国产免费| 亚洲精品国产嫩草在线观看| 麻豆极品一区二区三区| 亚洲第一精品自拍| 亚洲欧美精品| 国内免费精品视频| 一级片在线免费看| 亚洲精品tv久久久久久久久久| 亚洲午夜久久久久久久久电影网| 国产精品久久久久av| 中文字幕av观看| 美女福利网站视频在线观看| 日韩精品成人| 国产精品久久久久久久久晋中 | 免费观看成人毛片| 青柠在线影院观看日本| 91精品精品| 欧美日韩亚洲国产综合| 国产精品我不卡| 久久高清无码视频| 一级片在线免费看| 亚洲免费在线| 亚洲欧美精品一区二区| 黄色片网址在线观看| 精品人妻一区二区三区麻豆91| 国产三区在线观看| 国产剧情av麻豆香蕉精品| 精品国产区一区二区三区在线观看| 青青视频在线播放| 先锋影音中文字幕| 久久视频免费| 亚洲综合在线五月| 久久国产精品免费一区| 亚洲图片在线视频| 在线黄色网页| 99久久精品99国产精品| 欧洲亚洲妇女av| 嘿嘿视频在线观看| 中文在线一二区| 先锋影音国产一区| 丝袜一区二区三区| wwwww在线观看| 天天天天天操| 最新日韩在线| 中文字幕日韩综合av| 手机看片国产精品| 男人插曲女人视频免费| 伊人久久大香线蕉综合热线| 亚洲乱码一区av黑人高潮| 91国内在线播放| 美女免费黄视频网站| 欧美三区美女| 日韩一级黄色av| 你懂得在线视频| 992tv在线影院| 韩日精品视频一区| 国产精品高潮呻吟视频| 久久精品国产亚洲av麻豆色欲| 成人国产免费电影| 国产丝袜美腿一区二区三区| 成人av中文| 草逼视频免费看| 极品束缚调教一区二区网站 | 国产女主播在线一区二区| 444亚洲人体| 国产精品久久久久久无人区| 麻豆久久久久| 欧美男男青年gay1069videost| 777久久久精品一区二区三区 | 欧美亚洲国产激情| 亚洲色图美腿丝袜| 中文字字幕码一二三区| www.亚洲视频| 国产精品家庭影院| 熟妇熟女乱妇乱女网站| 国产高潮又爽又无遮挡又免费| 欧美激情四色| 久久免费福利视频| 久热这里只有精品6| 精品九九久久| 精品久久国产老人久久综合| 九色91porny| 成年人在线免费观看| 亚洲视频 欧洲视频| 日本xxx免费| eeuss影院在线观看第一页| 麻豆91精品视频| 99热最新在线| 亚洲激情丁香| 99日韩精品| 国产在线播放不卡| 国产成人三级在线观看视频| 日韩www.| 久久人人97超碰精品888| 免费黄色片视频| 亚洲福利天堂| 久久综合电影一区| www.日本精品| 人妖一区二区三区| 美女久久久久久久| 亚洲精品午夜国产va久久成人| 66精品视频在线观看| 亚洲欧美日韩高清| 加勒比av在线播放| 91蝌蚪精品视频| 久久久成人精品视频| 特级毛片www| 九一精品国产| 国产69精品久久久久9| 最近中文字幕在线视频| 久久国产影院| 国产精品永久免费视频| 免费视频拗女稀缺一区二区| 免费日韩av片| 国产亚洲欧美另类一区二区三区| 精品视频二区三区| 国产毛片一区二区| 亚洲欧美日韩不卡| 天堂男人av| 一区二区三区小说| 亚洲少妇一区二区| 一区二区三区短视频| 日韩精品在线观看一区二区| 亚洲天堂日韩av| 欧美h版在线| 99久久免费国| 黄网免费入口| 亚洲天堂a在线| 男人的天堂影院| 91精品国产自产观看在线|