DeFi項目正式部署前,通過合約的安全審計,不僅可以對項目的代碼規范、漏洞情況以及業務邏輯等方面進行全局核查。同時,項目審計對于項目方在投資市場的形象也具有一定塑造作用。
市場投資者在遴選項目時,如有項目方加持合約審計經歷,并對審計方、審計報告等信息進行公開披露,投資可信度無疑會大幅提高。并且,項目方完善的安全立場建設意識,在無形中也將賦予項目額外的價值。與此同時,DeFi項目方在運營過程中,保持與安全審計公司的長期業務合作,不論是對安全管理還是業務擴展都將大有裨益。畢竟,在項目長期發展過程中,階段性安全審計機制能夠及時發現和有效助力解決整體、局部的風險問題。那么,DeFi合約審計的主要流程、內容以及特點,那些“套路”又是什么呢?套路一:前期“把脈”
與DeFi項目方的合約審計合作關系達成后,在了解項目整體情況,包括構架、業務設計等方面的基礎上,指派具有相關項目審計經驗的安全測試團隊進行專項服務,同時,明確項目檢測范圍以及相應需求側重點。做好前期“把脈”,其主要內容包括:1、DeFi項目方提供真實、有效且為審計所需的各項技術、代碼、文檔等資料。2、正式進入檢測環節前,安全團隊將對提供的材料進行全面評估,以確定周期。3、確定測試服務范圍,包括定向模塊、局部代碼、全面安全審計等。4、完成相關需求對接,即對源代碼、應用程序、文件信息、測試環境的最終確認。為了對DeFi項目合約的代碼規范性、安全性以及業務邏輯等方面進行嚴格的安全審計,在測試明確后,處理合約審計的常規方式有:形式化驗證靜態分析動態分析典型案例人工審核套路二:形式化驗證
投資盤點公司Deal Box成立風投公司以投資Web3技術:金色財經報道,基于區塊鏈的數字證券和投資盤點公司 Deal Box 成立 Deal Box Ventures,將向新興增長領域、房地產、FinTech、FunTech 和社會影響五個方面的 Web3 技術投資 1.25 億美元。 Deal Box 已經完成了對 Total Network Services、 Rypplzz 和 Forward-Edge AI 的初步戰略投資。[2023/1/18 11:19:29]
形式化方法是實現安全、可信軟件的最可靠的手段,它利用基于數學的符號系統給出軟件正確性、安全性的嚴格定義和形式證明。其中,嚴格定義被稱為形式化規范,是一種用清晰、簡明的手段來刻畫軟件功能或特性的邏輯表達式。在合約審計中,形式化方法通過的是定性需求屬性,從而證明程序不存在某類安全漏洞。另一方面,傳統測試方法則是通過檢查代碼在一組選定的輸入上是否按照預期運行,以此說明程序是否存在安全漏洞,但這無法證明同類型安全漏洞不存在。此外,傳統測試方法很容易漏掉在罕見或惡意構造場景下觸發的錯誤,以及由于大量“不可能事件”連續發生導致的錯誤。然而,形式化方法則可通過明確代碼意圖、提供輸入空間的完整覆蓋來發現上述微妙錯誤,進而實現程序的安全性、可靠性增強。
動態 | 漢語盤點2019年度候選字詞出爐 區塊鏈入圍:12月9日,“漢語盤點2019”年度各組前五位的候選字詞正式出爐,五大候選國際詞分別為:巴黎圣母院、區塊鏈、貿易摩擦、黑洞照片、脫歐。區塊鏈的推薦理由為:被重新加持的區塊鏈,真正開始了人類對技術創造未來的認識。[2019/12/10]
成都鏈安創始人、多年形式化驗證研究專家楊霞教授表示,“傳統驗證手段無法窮盡可能的情況,而形式化驗證則可以做到窮舉,對智能合約漏洞檢測而言,該方法最為可信和有效。作為針對以太坊智能合約安全檢測開發的定制化工具,成都鏈安的Beosin-VaaS一鍵式智能合約自動形式化驗證工具,可精確定位到含有風險的代碼位置并指出風險原因,有效檢測智能合約常規安全漏洞的精確度高達97%以上,為智能合約代碼提供‘軍事級’的安全驗證。”套路三:代碼規范審計
動態 | 證券日報發布2018年區塊鏈行業焦點盤點:證券日報發布《2018年區塊鏈行業焦點盤點:亂象頻發幣圈狼藉監管筑籬》文章稱,很多人將此輪區塊鏈熱潮與20年前的互聯網泡沫相比。可以確定的是,區塊鏈“泡沫”一定有,但區塊鏈能否如互聯網般改造世界,尚難下定論。監管部門去年以來重拳出擊,規范資本市場“炒鏈”行為,嚴厲懲治ICO。從中央到地方,掀起防范以“區塊鏈”名義進行非法集資的高潮,不斷給區塊鏈“排瘦身”。而瘦身后的區塊鏈也正逐步回歸理性——幣圈蕭條,市場開始重新審視以比特幣為代表的加密數字貨幣的價值與意義;去蕪存菁,越來越多的企業沉下心轉向技術應用開發;人才成本也擠出“泡沫”,回歸同行業正常水平。[2019/1/4]
在代碼規范審計中,主要測試項目有:
編譯器的版本問題可能會導致各種已知安全問題,開發者應在代碼中指定合約代碼采用最新的編譯器版本,并消除編譯器告警。同時,Solidity智能合約開發語言處于快速迭代中,部分關鍵字已被新版本的編譯器棄用,如throw、years等,為消除其可能導致的隱患,當前編譯器版本已經棄用的關鍵字應被禁用。在智能合約中,冗余代碼會降低代碼可讀性,并可能需要消耗更多的gas用于合約部署,因此,必須找出并消除冗余代碼。此外,合約中是否正確使用SafeMath庫內的函數進行數學運算需要嚴格檢查。Solidity使用狀態恢復異常來處理錯誤,該機制將會撤消對當前調用及其所有子調用中的狀態所做的所有更改,并向調用者標記錯誤。函數assert和require可用于檢查條件并在條件不滿足時拋出異常。assert函數只能用于測試內部錯誤,并檢查非變量。require函數用于確認條件有效性,例如輸入變量,或合約狀態變量是否滿足條件,或驗證外部合約調用的返回值。以太坊虛擬機執行合約代碼需要消耗gas,當gas不足時,代碼執行會拋出outofgas異常,并撤銷所有狀態變更。合約開發者需要控制代碼的gas消耗,避免因為gas不足導致函數執行一直失敗。另外,合約函數的可見性是否符合設計要求,以及在當前合約中是否正確使用了fallback函數都需要進行嚴格檢查。套路四:DeFi安全漏洞審計
動態 | 老貓盤點2018年個人經歷:披露“李笑來欠3萬個比特幣”事件進展:12月31日訊,硬幣資本(INBlockchain)管理合伙人老貓發文回顧2018年個人經歷。文章中,老貓透露2018年由經濟下行個人資產也縮水一大半,但相對而言可能還說得過去,因為堅持3個投資方法:第一是不加杠桿,第二是主要持有主流品種,第三是配置。 文章中,老貓還就此前外界盛傳的“李笑來欠了3萬個比特幣”事件進行回應,同時披露最近進展。老貓表示,該事件最初源于2013年面向熟人圈開展的代理投資,當時所有合同以人民幣計價投資,每份10萬人民幣,但有的人當時給的是比特幣,“這個事情被一些黑子刻意的改頭換面,最后就變成笑來欠了30000個幣”。老貓透露,此事在2018年8月26日畫上了句號。[2018/12/31]
目前,業務邏輯漏洞在DeFi項目中最為常見。由于項目業務邏輯設計的不嚴謹,極可能導致項目在特定情況下出現內部失衡。需要注意的是,DeFi項目基于區塊鏈智能合約開發,具有很多傳統金融體系以外的特性,比如:單筆交易可發起多個內部交易,失敗可回滾具有通縮性質的代幣合約代碼不可修改同時,審計中常見的還有合約權限錯誤,即合約中函數的可見性修飾錯誤。通常,這是由于調用者和參數沒有進行有效驗證,導致函數被惡意用戶調用,從而釀成巨大的損失。類似傳統安全問題,錯誤的權限配置和無效的安全檢查都會給系統帶來巨大的風險。但不同的是,智能合約的不可修改性使得此類問題即便被發現也不一定能得到有效修復。另外,重入漏洞也是審計的重點。具體而言,當合約向外發起call調用后,攻擊者可利用合約調用的特性反復調用函數,導致合約預期的執行順序發生錯誤,以此竊取目標賬戶的資產。在審計中,代碼錯誤出現頻率也很高。這主要是由于開發人員失誤導致的一些代碼編寫錯誤。常見的有單位錯誤、忘記乘以精度、&使用錯誤等。在YAM漏洞事件中,代碼在進行彈性調整rebase時,其代碼正是忘記乘以精度,如圖所示:
雅虎財經2018年2月7日加密峰會盤點:
1. 摩根大通區塊鏈負責人Farooq:區塊鏈將從根本上改變商業的運作;數字貨幣必須解決洗錢問題。
2.Blockchain CEO:數字貨幣最厲害之處,就是在與任何國家無關的情況下成為金融體系的一部分。
3.DCG(數字貨幣集團)創始人Barry Silbert:大多數幣種沒有真正的實用性;希望未來讓DCG上市。
4.Fundstrat Global Advisors聯合創始人Tom Lee:數字貨幣市場不僅僅是個“十年的故事”,它將持續存在30年。數字貨幣市場像新興市場。如果相信區塊鏈,那就必須相信比特幣、以太坊以及所有的公鏈。
5.Indiegogo股權眾籌和加密貨幣投資負責人:最終將需要與監管機構來一次有意義的、權威的對話。
6.Chain聯合創始人兼CEO Adam Ludwin:人們其實希望對數字貨幣進行監管;以加密方式上發行傳統貨幣以后將是這個領域中的很大一部分。
7.瑞波CEO:瑞波超過50%合作金融機構為日本公司,瑞波幣將在3-5年內成功;長期看好比特幣,認為比特幣不會滅亡,但也不會解決付款問題。
8.Goodwin Procter律所合伙人Grant Fondo:不管某個項目看起來有多好,別把雞蛋放在一個籃子里。
9.數字商會總裁Perianne Boring:數字貨幣投資者需要做好研究,同時要有批判性思維。[2018/2/8]
在確保代碼和漏洞深度檢測的同時,項目業務方面也設置有業務邏輯和實現方面的相關審計,包括對DeFi項目中涉及代幣基本信息的檢查,以及代幣標準相關的函數的確認,特別是對鑄幣、銷毀代幣、更改owner及其它特殊權限的審查和風險分析。很多項目中都存在代理轉賬的邏輯,在處理此類邏輯時,很多項目方會直接要求用戶授權最大值代幣給項目方的合約,如下圖所示:
如此一來,合約就有權將用戶資金全部轉走。此外,還有雙重授權的問題,項目方網站在進行授權時,發起了兩筆授權,一筆授權給合約地址,一筆授權給外部地址,如用戶對此沒有提防,將會面臨極大的資金風險。套路五:審計報告
合約審計最終服務于DeFi項目中的資金安全,而這方面諸多問題的出現都與函數、算法的不當存在關聯。因此,合約審計就是要指出可能引發資金風險的內容,也就是潛藏隱患以及亟需修正的代碼、漏洞、邏輯等問題。在審計報告中,除了審計時間、歷時以及審計人等基本信息外,還會體現對項目的投資預警提示。審計報告的核心內容,是體現受檢智能合約在設計和代碼實現等多方面、多維度的審計結果。同時,報告將指出發現的各類風險問題,并將其告知項目方以便修復。通過審計報告,合約的風險成分,包括潛在可遭遇的攻擊,不同級別、層面的漏洞將被詳盡提示。只不過,安全審計報告中醒目的“通過”二字,不應該作為投資者僅有的投資判斷依據。結語
合約審計并不屬于項目本身的利好消息,而是上線前必要的一項安全工作,無論是對項目方還是投資者都具有重大的意義。投機市場或是狂暴或是蕭條,行走其間不按套路出牌,終將也會受制于“套路”。略瞥其中,唯有防患于未然的安全之峰,巍然。
編者按:本文來自巴比特資訊,作者:MARTINYOUNG,編譯:Wendy,星球日報經授權發布.
1900/1/1 0:00:00編者按:本文來自巴比特資訊,編譯:隔夜的粥,星球日報經授權發布。北京時間9月17日早晨,去中心化交易所Uniswap正式發布了它的治理代幣UNI.
1900/1/1 0:00:00編者按:本文來自威廉閑談,作者:陳威廉,Odaily星球日報經授權轉載。我前天陪朋友去瞧了下特斯拉,試駕了一下。說來也有趣,我天天吹馬斯克和特斯拉,居然頭一回認真地體驗了一下這臺車.
1900/1/1 0:00:00Odaily星球日報譯者|Azuma9月14日晚間,用戶發現波場鏈上流動性挖礦項目RoseFinance的USDT質押池內代幣無法正常解押.
1900/1/1 0:00:00上期回顧市場在9月2日開始持續下跌,成交量方面也在逐步放大,短期市場對方向判斷較為悲觀,形成拋售狀態。這也是前期資金獲利較為豐厚,所以在賣出過程中仍有較大獲利空間。慣性下跌可能仍將延續一段時間.
1900/1/1 0:00:00過去兩周微博和社群最熱門的話題,不過是DeFi:“后悔得我腿都拍腫了......”“哎薅羊毛薅半天原來都是自己的肉啊......”“還好我穩住沒動要不然不知道會心痛成什么樣......”幣圈人的.
1900/1/1 0:00:00