作者:CoboLabs
此篇文章由Cobo區塊鏈安全研究團隊供稿,團隊成員來自知名安全實驗室,有多年網絡安全與漏洞挖掘經驗,曾協助谷歌、微軟處理高危漏洞,并獲得谷歌、微軟等廠商致謝,曾在微軟MSRC最有價值安全研究員Top榜單中取得卓越的成績。團隊目前重點關注智能合約安全、DeFi安全等方面,研究并分享前沿區塊鏈安全技術。
跨鏈橋Multichain漏洞
1月18日知名跨鏈橋Multichain發現并修復了一個針對WETH,PERI,OMT,WBNB,MATIC,AVAX共6種代幣有重要影響的漏洞。凡對MultichainRouter授權過上述代幣的用戶均受影響,攻擊者可直接利用漏洞轉走用戶授權的代幣。根據19日的官方公告,由于部分用戶未及時取消授權,有約445WETH被攻擊者盜走。
漏洞發生在AnyswapV4Router合約上的anySwapOutUnderlyingWithPermit函數中,由于函數對Token參數的合法性沒有校驗,攻擊者可傳入偽造的Token合約來代替原本官方的AnyswapV1ERC20?Token。
另一方面WETH等代幣合約沒有實現permit方法但是實現了fallback函數,因此在后續調用permit時不會發生revert,可以繼續成功執行下去。最終導致攻擊者可以將受害者approve給AnyswapV4Router合約的Token盜走。
CoboComment
對于普通用戶來說,需要特別留意Token無限授權所帶來的風險。授權盡可能保證只授權用到的Token數量,而不要使用默認的無限授權,避免節約了gas卻丟失了本金。對已有的無限授權要及時撤銷,查詢賬戶的授權情況可以使用Etherscan?的工具https://etherscan.io/tokenapprovalchecker。
Reference
https://github.com/W2Ning/Anyswap_Vul_Poc
https://theblockbeats.info/news/28774
Bitcoin.org持有人Cobra:永遠不會撤下比特幣白皮書:Bitcoin.org持有人Cobra昨天發推稱:中本聰將比特幣白皮書上傳到Bitcoin.org,白皮書被成千上萬篇學術論文應用。我們撤下它將是對他遺產的背叛,這永遠不會發生。此前,Cobra發布對抗CSW指控的文章后,BitMEX、火幣等多家交易所宣布將保留比特幣白皮書。[2021/1/24 13:21:02]
https://hackernoon.com/erc20-infinite-approval-a-battle-between-convenience-and-security-lk60350r
BSC上的DEXCrosswise遭攻擊
1月18日BSC上的DEX項目Crosswise遭受攻擊,損失約30萬美金,并造成CRSSToken幣價閃崩。
問題是因MasterChef合約的setTrustedForwarder函數沒有正確進行權限校驗。當攻擊者修改了TrustedForwarder后,可以實現偽造msg.sender的效果,從而直接獲取到MasterChef的owner權限。然后再利用owner權限調用set函數設置?strategy為攻擊者的惡意參數0xccddce9f0e241a5ea0e76465c59e9f0c41727003。修改strategy后通過少量deposit即可withdraw大量的CRSSToken獲利。
官方公告也承認這個漏洞過于明顯,似乎是開發者有意為之,其內部調查后開除了4個開發者。目前已經對鏈上數據進行了快照,后續將進行重新部署。官方git上已經開始進行整體的代碼審計,據稱后續會再聯合Certik進行審計。
CoboComment
此次攻擊針對的是MasterChef合約,其實不會直接盜取用戶的LP或者CRSStoken,但幣價大跌還是會讓持有CRSS的用戶造成實際的損失。查看官方doc上無法找到項目審計報告,此漏洞比較明顯,如果經過安全公司審計的話,很大概率可以暴露出來。對于個人投資者來說,未經過審計的項目還需謹慎。
Cobo正在申請成為Sushi多簽見證人:Cobo官方在微博表示,Cobo正在申請成為Sushi多簽見證人,歡迎大家在Twitter幫忙點贊投票。[2020/9/7]
Reference
https://twitter.com/peckshield/status/1483340900398895105
https://crosswise.medium.com/post-exploit-update-2a24c3370466
https://bscscan.com/address/0x70873211cb64c1d4ec027ea63a399a7d07c4085b#code
https://github.com/crosswise-finance/crosswise-code-review-1.1
Rari#90即FloatProtocolPool遭受預言機操縱攻擊
1月15日,RariCapital上的?90?號池即FloatProtocol池遭受預言機操縱攻擊。
該池使用UniswapV3FLOAT/USDC交易對報價,而在攻擊發生之前幾天,FLOAT/USDC池中流動性下降,低流動性給了攻擊者進行進行預言機操縱攻擊的機會。
攻擊者使用47ETH在池中使用USDC兌換FLOAT,導致FLOAT報價升高。之后再使用FLOAT抵押到Rari#90池中借出其他資產實現獲利。攻擊手法與2021年11月發生的Rari#23池VesperLendBeta攻擊一致。
CoboComment
對于一些無法使用ChainLink預言機報價的小幣種,DeFi合約中通常會使用DEX作報價。目前UniswapV2/V3延時報價雖然可以抵抗閃電貸攻擊,但無法抵抗真實的大資產操縱;而TWAP時間加權機制雖然可以在一定程度上提高操縱難度,但只能緩解不能根除。
從開發者角度,可以考慮在合約中添加一定風控類代碼針對惡意報價進行檢查。對普通用戶而言,則要留意相關的流動性池,提防價格操縱風險。
動態 | 交易所CobinHood或將關閉,曾被質疑為“退出騙局”:CobinHood在一封發給用戶的通知中表示,它正在審計所有賬戶余額并遷移數據。它將于2020年2月10日重新開放。然后,交易所將向所有用戶發送關于取款過程的電子郵件,然后允許用戶取回他們的余額。與此同時,CobinHood還敦促用戶不要進行存款。據悉,該交易所在開曼群島注冊,但總部設在中國臺灣。據了解,去年年初,該交易所出售了母公司DEXON Foundation的DEXON代幣,不到一個月就籌集了350萬美元。后來,該公司在2019年5月申請破產。因此被投資者質疑為“退出騙局”。(CoinGape)[2020/1/10]
Reference
https://twitter.com/FloatProtocol/status/1482184042850263042
https://medium.com/vesperfinance/on-the-vesper-lend-beta-rari-fuse-pool-23-exploit-9043ccd40ac9
DefiDollar發現潛在攻擊
1月8日DefiDollarFinance(@defidollar)發推表示在DUSD合約中發現一個潛在漏洞,合約已經暫停,所有資金安全。據稱該漏洞可能是使用了區塊鏈監測系統自動發現的。其思路是監測鏈上Tornado.Cash轉賬到新地址并部署合約的行為。
進一步通過對合約和相關交易的分析來發現潛在的攻擊行為,發現問題時將立刻通知相關項目方進行預防。有人已經在Forta上實現了類似的Agent.
CoboComment
項目方可以考慮類似的方式,通過監測鏈上的新合約和內存池中的交易,對于可疑的合約或交易可以進行靜態分析或模擬執行,檢查是否會對自身項目關聯合約中的資產有不良影響。
隨著區塊鏈攻防的升級,可以預見類似的監測告警系統將會越發成熟,當然攻擊者也會挖掘到更多bypass監測的攻擊方式。在傳統安全中攻防持續對抗的局面在區塊鏈安全中也將不斷重現。
聲音 | Cobra:BCH升級爭議將損害BCH價值 導致信任和信仰喪失:據Bitcoin消息,針對近日比特幣ABC和Nchain / Coingeek對BCH升級分別提出了不同的計劃,比特幣官方論壇Bitcoin.org持有人Cobra表示,這可能導致共識失敗、BCH可能分叉。并強調,這可能會損害BCH價值,導致對BCH的完全嘲諷,以及信任和信仰的大規模喪失。[2018/8/25]
Reference
https://twitter.com/AndreCronjeTech/status/1479778350084333574
https://connect.forta.network/agent/0x2fbec7dcd4eebf34c5b94d899109057eea3642a2400b7143e64873d453b7ba61
Raripool#19攻擊失敗
知名區塊鏈安全白帽@samczsun發布了針對Rari#19的預警推文,但后面攻擊沒有實際發生。
攻擊手法與前面提到的FloatProtocolRari#90預言機攻擊是類似的。攻擊者在UniswapV3將約300個ETH兌換成了BED,實現對幣價的操縱。由于UniswapV2/V3Oracle都是在第二個區塊才會更新幣價,使攻擊者無法在一個交易內完成對幣價的操縱,從而可以對抗閃電貸攻擊。
而當使用真實的大資金進行操縱時,攻擊者則需要至少等待到第二個區塊才能看到幣價的反應。由于TWAP的存在,通常攻擊者還需要多等待幾分鐘,以使幣價變得更加明顯。對于此次攻擊來說,攻擊者也確實是這樣做的。
然而尷尬的是,在第二個區塊出現了疑似套利機器人的存在,此地址在第二個區塊立刻將將手中的大量BED兌換成了ETH,維持住了原本幣價的穩定。使得攻擊者無法繼續攻擊,并且還要承擔swap的gas、手續費與大單交易滑點的損失。
CoboComment
UniswapV2/V3Oracle雖然可以抗閃電貸攻擊,但是無法直接對抗大資金操縱。因此對于流動性較小的交易對,仍然存在預言機價格被操縱的風險。
金色財經現場報道 ICOBox聯合創始人MIke Raitsyn:有安保需求的商業領域都可使用區塊鏈:金色財經前方記者實時報道,第二屆全球金融科技與區塊鏈中國峰會于4月12日在上海召開,MIke Raitsyn在峰會現場表示,區塊鏈技術讓整個計算機以及虛擬市場更民主,不管是開發者還是風險投資者,或者非盈利機構都可以在區塊鏈市場自由進行交易和生長。我相信區塊鏈是一個好的概念,但并不是任何時間、任何地點都需要區塊鏈。區塊鏈是一個技術、一個共識,是分享的同步的數據。同時由一些獨立的節點組成,有多個管理。選用區塊鏈的時候,你首先要了解是不是需要需要區塊鏈,這是一個決策數。在不同商業領域當中,可以說所有主要商業領域當中,只要有安保需求都可以使用區塊鏈技術。[2018/4/12]
從攻擊者的角度看,要進行對UniswapV2/V3Oracle操縱攻擊,需要較高的攻擊成本,而且需要保證自己持有市場中大部分所操縱的池子的目標代幣,否則就會出現上面的情況,被其他持有目標代幣的大戶套利,最終偷雞不成蝕把米。
Reference
https://twitter.com/samczsun/status/1486243806739587076
OpenSea前端漏洞
@PeckShield發文稱OpenSea可能有前端問題,有用戶利用該問題獲利347ETH。這個漏洞可能與@yakirrotem披露的問題有關。
OpenSea的交易架構是:
賣家發起listing,這時用戶會對報價數據進行簽名,表示同意以設置的價格出售其NFT。
這個簽名數據會保存在OpenSea的鏈下數據庫中,當買家在OpenSea上購買該NFT時,OpenSea會把這個簽名數據上鏈驗證,通過后即可完成NFT?transfer,OpenSea?也會收取一部分手續費。
售出前,賣家也可以取消之前的listing,被cancel的listing會在鏈上驗簽時失敗,從而不會被出售。
這里存在的問題是,OpenSea允許在原有?listing?不取消的情況下,再次發起listing。這時雖然OpenSeaUI上已經看不到賣家舊的報價,但其實舊的listing依然存在并有效。
攻擊者可以在https://orders.rarible.com中查詢到舊的listing。由于OpenSea的listing并沒有交易Nonce機制,舊的listing依然是有效的。攻擊者可以通過舊的listing直接購買NFT,并以新的價格售出。由于NFT有劇烈的價格波動,通過這種方式可以實現巨額套利。
https://etherscan.io/token/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d?a=9991#inventory就是一例子:1月24日BAYC的NFT在OpenSea上先以0.77ETH買入,又以84.2ETH賣出。
CoboComment
普通用戶建議登錄https://orders.rarible.com查詢自己是否有舊的listing,并立刻進行取消處理。更穩妥安全的方式是直接將NFT轉移到新地址上。
Reference
https://twitter.com/PeckShieldAlert/status/1485547426467364864
https://twitter.com/yakirrotem/status/1485559864948629512
Metamask泄露個人IP漏洞
@alxlpsc在medium上披露稱Metamask存在嚴重的隱私泄露問題。漏洞主要是利用了MetaMask自動加載NFT圖片URL。基本的攻擊思路:攻擊者在可以將NFT的URI設置成自己可控的服務器網址。
并將NFTtransfer給目標賬戶;當用戶登錄Metamask時,Metamask會自動掃描賬戶上所擁有的NFT,并發起指向攻擊者服務器的HTTP請求;攻擊者則可以從訪問日志中得到受害者的IP信息。
CoboComment
區塊鏈的匿名性主要來自鏈上地址與鏈下身份的剝離。如果能夠通過鏈上的地址確認鏈下身份,在區塊鏈場景下確實是比較嚴重的危害。在傳統安全中泄露主機IP通常不被認為是特別嚴重的問題,但在主張匿名性的區塊鏈世界,隱私的重要程度會再上一個臺階。相信類似的,因安全場景不同而導致漏洞級別不同的情況,在區塊鏈這個相對較新的領域還會不斷出現。
Reference
https://medium.com/@alxlpsc/critical-privacy-vulnerability-getting-exposed-by-metamask-693c63c2ce94
wxBTRFLY漏洞披露與修復
@immunefi的白帽黑客發現了wxBTRFLYToken合約中存在嚴重漏洞。合約中的transferFrom函數沒有正確更新recipient的授權,并且會錯誤更新msg.sender的授權。
漏洞本身雖然嚴重但成因并不復雜,比較有意思的是官方的修復方式。由于合約本身不支持升級,因此無法直接更新合約代碼;合約不支持暫停,因此也沒法用快照+遷移的方式轉移用戶資產。最終官方的措施是自己發動了攻擊交易,將所有受漏洞影響用戶的資產轉移到了一個多簽錢包中。待后面部署新Token合約后會再行分配。
CoboComment
ERC20Token已經有比較成熟的代碼模板,wxBTRFLY是在重寫transferFrom時出現的問題。這個問題如果有完善的單元測試應該會很容易發現,項目方可能在開發過程中是缺少完善的測試流程。
Reference
https://discord.com/invite/rpkPDR7pVV
https://twitter.com/redactedcartel/status/1482497468713611266?s=20
https://etherscan.io/tx/0xf0e4ccb4f88716fa5182da280abdb9ea10ec1c61cfc5bbe87e10bdde07c229d6
Qubit跨鏈橋被攻擊
1月28日,BSC上的DeFi平臺QubitFinance的跨鏈橋QBridge遭受攻擊,損失約8000萬美金。
跨鏈橋一種常見的實現形式是在源鏈的合約中抵押資產,并emitevent。由監聽節點捕捉event,向目標鏈的跨鏈橋合約發起調用,mint等量的資產。來源鏈上只要有event事件產生,跨鏈橋系統就會認為有跨鏈資產需要轉移。
但如果源鏈上跨鏈橋合約代碼存在問題,就可能出現沒有資產抵押進跨鏈橋合約但仍emitevent的情況,產生漏洞,造成目標鏈Token的錯誤增發。
QBridge就存在這樣的問題。QBridge支持抵押ETH和ERC20Token兩類資產。由于以太坊的ETH作為native代幣,與?ERC20?Token由兩套單獨的代碼處理。在源鏈抵押Token時,會調用deposit方法,在抵押時ETH應該調用depositETH方法。
QBridge將零地址作為ETH的標識。但是實現時沒有完善的校驗,導致合約處理ETH時仍使用deposit方法,相當于將ETH當成了合約地址為零地址的Token處理。在轉賬時使用transferFrom則相當于是對零地址進行合約調用。
而以太坊底層設計上,對EOA地址發起合約調用會默認成功,不會revert。以上條件結合起來,最終的情況就是雖然攻擊者在源鏈沒有抵押任何資產,但仍可以在目標鏈上mint出大量qXETH,實現獲利。
CoboComment
目前區塊鏈行業中多鏈并存,跨鏈橋已經是重要的基礎設施。跨鏈橋本身由于要進行鏈上鏈下配合,整體復雜度要比普通dapp高上許多,因此更容易出現問題。同時跨鏈橋上通常會抵押大量的資產,如果可以非法轉移那么獲利頗豐。各個跨鏈橋系統似乎成為了攻擊者們最近一兩月中的重點目標。
鏈捕手消息,Coinbase首席營銷官KateRouch今日在接受采訪時針對網站短時宕機的問題進行回應.
1900/1/1 0:00:00鏈捕手消息,去中心化信息索引與社交協議RSS3發布空投規則。RSS3代幣將空投給六類用戶:其中共計59427名RSS3應用的普通活躍用戶每人將獲得67.3個代幣,1.3萬個RNS持有者均可獲得4.
1900/1/1 0:00:00鏈捕手消息,NFT借貸解決方案MetaStreet完成1400萬美元融資,DragonflyCapital領投,AnimocaBrands,EtherealVentures,Sfermion.
1900/1/1 0:00:00鏈捕手消息,EOS網絡基金會領導人YvesLaRose更新推文表示,EOS網絡基金會正在采取所有可能的法律手段,要求Block.one歸還其在EOS眾籌階段所募得的41億美元.
1900/1/1 0:00:00鏈捕手消息,去中心化數據庫協議Ceramic的核心開發商3BoxLabs宣布完成3000萬美元A輪融資,由MulticoinCapital和UnionSquareVentures領投.
1900/1/1 0:00:00鏈捕手消息,英國稅務監管機構稅務海關總署在一起價值190萬美元的疑似增值稅欺詐案件中查獲了三個NFT,彭博社據稱此為該國國內首次該類執法行動.
1900/1/1 0:00:00