比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

【首發】智能合約風險列表發布,ERC20 Token安全問題有據可查_以太坊

Author:

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

以太坊ERC20Token標準自2015年11月19日誕生以來,為智能合約、以太坊生態以及區塊鏈應用的發展做出了巨大的貢獻。據Etherscan網站數據顯示,截止2018年6月26日,以太坊主網上ERC20Token數量已超過90000。下圖是統計的ERC20每日創建數量趨勢圖。

這些Token合約所承載的價值不可估量。然而近幾個月以來,以BEC事件為開端,引發的一系列的鏈式反應,越來越多的合約漏洞與不兼容性問題相繼被曝光。目前智能合約安全問題的分析披露還比較散亂,對智能合約的開發和后續的使用所起到的作用非常有限,社區缺乏一套完備的合約問題匯總機制。因此安比實驗室在分析了近期爆出的合約風險問題和大量的智能合約源碼后,攜手路印發布智能合約風險列表,聯合去中心化交易所DEx.top、輕信科技、Consensys中國、長亭科技等技術團隊,共同對該風險列表進行維護。

由于以太坊上部署的合約數量規模還在不斷增大,未來還會有更多更復雜的問題暴露出來。因此,我們倡導發起Token合約風險列表共建計劃,呼吁更多關心區塊鏈生態的團隊或技術人員參與進來,共同維護這份合約風險列表。

ERC20Token的安全問題總結

ERC20Token漏洞事件回顧

在ERC20Token逐漸成熟和完善的發展過程中,不少ERC20智能合約曾出現過重大漏洞,對項目方、投資人、交易所甚至整個以太坊社區造成了比較大的經濟損失。例如:

多鏈DeFi管理協議Instadapp推出Avocado多簽解決方案:5月11日消息,多鏈DeFi管理協議Instadapp推出Avocado多簽解決方案,適用于個人、團隊和機構等,簡化所有簽名者的交易流程,并允許在所有鏈中使用相同的地址,以為多重簽名用戶提供類似EOA的體驗。[2023/5/11 14:56:54]

2016年6月18日,DAO合約遭到攻擊,導致超過3,600,000個以太幣(ETH)被盜,迫使以太坊社區不得不采取硬分叉的手段來減少損失,而這更是直接引起了以太坊社區的分裂2018年4月22日,黑客攻擊了美鏈(BEC)的Token合約,通過一個整數溢出漏洞,一時間BEC的價格幾乎歸零。我們發現至少有10份合約存在該類問題。2018年4月25日,SMT爆出類似整數溢出漏洞,黑客制造和拋售了天文數字規模的Token,導致SMT價格崩盤。2018年5月20日,嚴重的邏輯漏洞導致EDU用戶的Token可被任意轉出,同時還有其它3個Token存在相同問題。2018年6月12日,一系列ERC20智能合約整數溢出漏洞(CVE-2018-11687,CVE-2018-11809,CVE-2018-11810,CVE-2018-11811,CVE-2018-11812)又被爆出,據不完全統計有800多個合約受到影響。

大量ERC20Token實現未嚴格遵守規范

未參照ERC20標準實現Token合約會給DApp開發帶來較大的困擾。某知名DApp團隊在深入分析了排名前20的合約之后,提示社區需要對Token合約的諸多實現問題和不規范行為重視起來,尤其是對于新的DApp開發者,提早避免一些問題。

0x0a77開頭地址解除約100萬枚APE的質押并轉入幣安:金色財經報道,據0xScope Protocol監測,0x0a77開頭地址解除約100.57萬枚APE(價值近600萬美元)的質押并將其轉入幣安。[2023/1/31 11:38:40]

NearlyathirdofthetimedevelopingBsktwasspentauditingexternaldependencies.WehighlyencourageotherEthereumdevteamstobeawareofthedangersinexternaldependencies.Unlikesoftwaredevelopmentinmostsystems,it’scriticaltoreadtheimplementationofdeployedcontractsyoudependon—notjusttheinterface.

我們還注意到,大量已部署Token合約曾經參考了以太坊官網以及OpenZeppelin等其它DApp。據不完全統計,存在該類問題的合約超過2000份。

若干Token合約在標準approve()函數中添加了對當前賬戶余額校驗邏輯。導致采用類似0x協議的諸多DApp有可能無法正常完成approve(),必須由Token項目方提前轉入一筆數額巨大的Token至中間賬戶,這給DApp和交易所帶來了諸多不便。超過17份合約存在該問題。

加密貨幣投資公司Midas在虧損后關閉平臺:金色財經報道,由于Celsius和FTX的破產,導致專注于DeFi收益的加密貨幣投資公司Midas超過60%的管理資產陷入困境,該公司在遭遇重大投資虧損后不得不關閉平臺。

Midas首席執行官兼創始人Iakov“Trevor” Levin已在博客文章中確認了此事,并表示去年春天旗下DeFi投資組合就損失了5000萬美元,占其2.5億美元管理資產(AUM)的20%,在Celsius和FTX破產后,60%的管理資產又遭到打擊。不過,Iakov“Trevor” Levin透露,通過將競爭協議與流動性聯系起來,他們后續將會專注于一個“符合對集中式去中心化金融(CeDeFi)愿景”的新項目。(coindesk)[2022/12/28 22:11:40]

ERC20規范中規定了幾個可選的通用查詢接口如name()、symbol()、decimals(),因而大量Token合約未提供這些接口,甚至不少采用NAME()、SYMBOL()、DECIMALS()等不一致的寫法,也給合約的外部調用帶來了極大的麻煩。存在該類問題的合約超過3000份。

ERC20標準中還規定了Transfer和Approval事件必須在特定場景下觸發。很多Token的實現參考了以太坊官網的不標準代碼,漏掉觸發Approval事件的操作。存在該類問題的合約超過1800份。

ERC20安全問題匯總與分類

我們對數萬份ERC20Token合約存在的問題進行分析統計,已將所有統計數據上傳至Github倉庫。

HyperPay錢包以2億美元估值尋求2000萬美元融資:12月1日消息,HyperPay錢包正以2億美元估值尋求2000萬美元融資,當前正與意向投資人接觸,融資細節將于近期公布。

據HyperPay融資報告資料顯示,HyperPay累計注冊量達120萬人次,Web3錢包用戶達30萬,信用卡申請使用人數達10萬,借貸規模達600萬美元。

HyperPay團隊計劃用這筆融資結合自身在Web2和Web3的優勢,搭建超級金融支付網絡,成為基于Web5的數字銀行,便捷流通加密資產,筑建加密資產私人銀行,構建跨平臺、跨公鏈的去中心化身份認證系統,打造Web3信用機制,為用戶提供多元化金融服務內容。[2022/12/1 21:15:36]

Github倉庫地址:https://github.com/sec-bit/awesome-buggy-erc20-tokens

已發現的所有ERC20Token合約安全風險問題被歸納為三大類:代碼實現漏洞,不規范問題,權限管理問題。

代碼實現漏洞涵蓋了合約代碼功能實現和邏輯實現上的漏洞,如整數溢出不規范問題涵蓋了因代碼實現不規范導致版本不兼容或者外部合約調用時的無法不兼容問題,如ERC20接口無返回值權限管理問題涵蓋了所有因管理權限設置不當而引發的問題,如owner可以操作任何人賬戶上的余額

問題列表如下:

在awesome-buggy-erc20-tokens倉庫的文章中對每個問題給出了詳細描述信息。

持有32枚ETH以上地址數創20個月以來新高:金色財經報道,據Glassnode數據顯示,持有32枚ETH以上的地址數量達到121,663,創20個月以來新高。[2022/9/15 6:57:42]

如何使用Token合約風險列表

Token合約開發者:本列表提供了詳細的問題描述和相關合約列表,希望能夠借此提ERC20Token合約開發者的安全意識,避免在后續的合約開發中重復踩坑。DApp項目方:以太坊平臺的DApp可能會與多個ERC20Token合約對接。DApp項可以通過本倉庫查閱已部署的問題合約的詳細信息,獲知Token合約存在的問題,避免因Token合約的漏洞或者合約的不兼容問題,給DApp帶來不必要的麻煩。其他生態參與者:本列表收錄了大量ERC20Token合約存在的風險問題,并記錄了市值排名較的672份已部署的Token合約的基本信息和問題詳情,大家可以通過查閱本倉庫來找到問題合約,了解已部署Token合約存在的風險。

Token列表包含哪些內容

awesome-buggy-erc20-tokens倉庫共收錄了以太坊上數萬份ERC20Token合約中存在的問題。主要包含三部分內容:Token合約的基本信息,問題Token列表,風險問題匯總。

1.合約的基本信息倉庫中目前已收錄的合約,所有問題合約均來源于此。

另外,倉庫中還統計coinmarket網站收錄的Token合約的詳細信息,包括token的排名,token名稱,token縮寫符號,總量,小數位數和上線交易所的信息。

2.所有的問題合約列表,列表分別以json和CSV的形式展示,也便于導入表格軟件或者編寫腳本進行分析。

3.風險問題匯總文件

倉庫中共收錄了28種合約風險問題,對所有問題的詳細信息,包括詳細的描述、錯誤的代碼實現示例、推薦修改的代碼實現示例、存在該問題的合約列表和對該問題報道的相關鏈接。

以batchTransfer-overflow問題為例:

聲明

本列表信息全部來源于以太坊區塊鏈,etherscan.io,coinmarketcap.io等公開網站上的公開信息本列表所列所有問題均屬于已披露的漏洞或缺陷,不包含任何未公開漏洞本列表中存在多個合約Token名稱重復現象,請以合約地址為準;Token名稱只做參考,可能與知名項目重復,請勿過分解讀本列表中的數據可能會存在偏差或遺漏,請大家直接提交更改請求或者通知我們(info@secbit.io)

發起共建計劃

awesome-buggy-erc20-tokens倉庫由安比實驗室持續維護,路印團隊提供信息更新支持。并歡迎大家共同參與維護更新工作,共同推進以太坊生態健康發展。參與方式:

提交未被列入的問題ERC20Token合約地址提交新的ERC20Token合約漏洞提供改進建議或參與討論

同時我們也在尋求更多的力量,來共同開發更友好的前端查詢頁面,以供大家查詢。如果你有其他任何問題或者想法,歡迎加入我們的Gitter參與討論。

安比實驗室與路印合作共建安全可信的以太坊生態,安比實驗室團隊將擔任路印協議的安全顧問,提供合約驗證與Token合約審計技術服務。路印協議是基于智能合約的去中心化交易撮合協議,提供100%開源的去中心化交易前后臺解決方案。詳情請訪問路印官網:https://loopring.org

致謝:特別感謝DEx.top團隊參與早期列表建設想法的討論;感謝葉健,ZongminYu,吳玉會,YiTang等人對合約風險列表內容所提供的寶貴意見。

Reference

MarketshareofEthereum-basedtokensgrowsto91%https://medium.com/@amincad/market-share-of-ethereum-based-tokens-grows-to-91-fdefadfd9f6eAdisastrousvulnerabilityfoundinsmartcontractsofBeautyChain(BEC)https://medium.com/secbit-media/a-disastrous-vulnerability-found-in-smart-contracts-of-beautychain-bec-dbf24ddbc30e,Apr23,2018.UnderstandingTheDAOHackforJournalistshttps://medium.com/@pullnews/understanding-the-dao-hack-for-journalists-2312dd43e993,Jun19,2016.SmartMeshAnnouncementonEthereumSmartContractOverflowVulnerabilityhttps://medium.com/smartmesh/smartmesh-announcement-on-ethereum-smart-contract-overflow-vulnerability-f1ded8777720,Apr25,2018.SECBIT:智能合約紅色預警:四個Token驚爆邏輯漏洞,歸零風險或源于代碼復制https://mp.weixin.qq.com/s/lf9vXcUxdB2fGY2YVTauRQ,May24,2018.ERC20智能合約整數溢出系列漏洞披露https://www.secrss.com/articles/3289,Jun12,2018.數千份以太坊Token合約不兼容問題浮出水面,恐嚴重影響DAPP生態https://mp.weixin.qq.com/s/1MB-t_yZYsJDTPRazD1zAA,Jun8,2018.ERC20智能合約的approve千萬別這樣寫https://mp.weixin.qq.com/s/hYE4nu7FCD_nJH5WMRrXMA,Jun15,2018.Whatwelearnedfromauditingthetop20ERC20tokencontractshttps://blog.cryptofin.io/what-we-learned-from-auditing-the-top-20-erc20-token-contracts-7526ef3b6fb1,Mar28,2018.

Tags:以太坊CVEBEC以太坊幣是什么幣CVE幣是什么幣BEC幣BEC價格

比特幣價格實時行情
什么叫大數據?它怎么影響我們的生活?_BAT

大數據一詞火了幾年,但何為大數據呢?大數據指的是數據量的大多嗎?如果僅僅是這個意思,那縱觀我們社會,自古至今,無處不存在大量的數據,因此,顯然可見,大數據并非指數據量大小.

1900/1/1 0:00:00
一部抗ASIC化的血淚史:顯卡挖礦可能風光不再_門羅幣

2018年1月以來,我們目睹了許多原本只能用GPU(顯卡)挖礦的加密貨幣逐漸被ASIC(專用集成電路)礦機攻陷。本文對已發生的事情進行了深入的研究,并試圖預測GPU挖礦的未來.

1900/1/1 0:00:00
太空國,垃圾國,院子國,我也能建立一個國家了吧_太陽幣

文/亦平 前不久,特朗普下令,要組建美國武裝部隊的第六個兵種——太空軍。因為地球已經施展不開拳腳了,特朗普要在廣闊的太空留下自己的印記.

1900/1/1 0:00:00
「區塊鏈百科」ChainLink、POWR、RLC云算寶的簡介與價格_區塊鏈

周末的幣市十分精彩,其中最耀眼的明星就是EOS了,有關EOS的討論太多太多,今天就不寫了,這幾天是EOS主鏈上線及超級節點競選開始的時間,在這個關鍵時刻,我們安心看戲就好.

1900/1/1 0:00:00
你們的EOS要上線了 尋找優良潛力幣種-EOS_EOS

你們的EOS要上線了此前我們介紹了國內公鏈的三駕馬車,他們都是有潛力的,也是突破了重重的阻力,才逐漸有了當下的成績,當然未來如何,還是交給時間去驗證吧.

1900/1/1 0:00:00
每日幣研究之區塊鏈社交通訊概念數字貨幣:Status_以太坊

導讀:Status是一款集成了即時通訊客戶端、Dapp瀏覽器、以太坊系輕錢包的移動端應用。背景:如今的社交方式大多是通過智能手機聯絡,當然這也是最常見的方式,萬物都該順應時代的發展潮流,SNT亦.

1900/1/1 0:00:00
ads