原標題:《獨家|靈蹤安全:Pinecone被攻擊事件分析》
作者:靈蹤安全
8月19日,BSC上的收益聚合項目PineconeFinance的保險庫受到黑客攻擊,損失約350萬沒PCT代幣。
截至寫稿時為止,項目方已經針對此次攻擊中受損的用戶發布了補償計劃:項目團隊及投資人共持有491萬枚代幣,將用所有代幣補償用戶。
盡管此次攻擊受損的金額相對近期動輒千萬、上億美元的金額不算太大,但這起攻擊事件還是給我們留下了值得吸取的經驗和教訓。
這次攻擊出現漏洞的地方在于轉賬過程使用的代幣有損耗,而合約對這個損耗沒有處理好于是就導致漏洞出現從而被黑客攻擊。
在正常狀況下,用戶之間轉賬代幣的時候,如果代幣在轉賬過程中沒有損耗,處理起來是比較簡單的。但如果某些代幣在轉賬過程中會出現損耗,則處理這類代幣的轉賬就要非常小心了。
彭博社:比特小鹿斥資4000萬新元收購新加坡最高安全級別保險庫Le Freeport:9月19日消息,據彭博社援引知情人士報道,吳忌寒旗下公司比特小鹿斥資4000萬新元(約2840萬美元)收購新加坡最高安全級別保險庫Le Freeport,吳忌寒本人已確認了該筆交易,據會計監管機構記錄顯示該筆收購發生在7月。Le Freeport的造價高達1億新元(近7100萬美元),并于2010年開業。知情人士表示,收購款約3/4流向了包括星展集團在內的債權人,而曾經持有Le Freeport 70%股權的Yves Bouvier和其他股東在償還債務并支付成本后獲得了約500萬新元(近355萬美元)。[2022/9/19 7:06:23]
在Pinecone項目中,其代幣PCT是作為資金池的質押代幣,在其合約設計的代幣轉賬過程中會有手續費的損耗。而項目將這個損耗計入了用戶的份額中,于是用戶份額和質押的PCT總額就會出現偏差。這個偏差就能被攻擊者用來領取多余的獎勵。
yearn.finance:開發人員已為SushiSwap測試新ETH/DAI保險庫:yearn.finance轉發推特稱,我們很高興與大家分享,工程師Andy已開發并正在為SushiSwap測試一個新的ETH/DAI保險庫。您可以將SushiSwap ETH/DAI資金池養殖(farm)起來,以賺取更多的ETH/DAI SLP代幣。[2020/11/10 12:08:19]
具體而言,本次攻擊存在漏洞的合約有:
PineconeFarm合約,其地址為:
0x4099f27fb72788b7bb5cb64e3d2b865eb82d0f8f
farm合約使用的策略合約IPineconeStrategy,其地址為:
yEarn發布yveCRV保險庫:yEarn剛剛發布了一個新的veCRV保險庫:yveCRV,該保險庫或將改變Curvefinance生態系統的游戲規則。 現在有可永久鎖定CRV存款的保管庫,作為交換可以賺取veCRV持有人應得的費用和其他已鎖定CRV以獲得投票支持的保險庫的費用。[2020/11/9 12:05:48]
0x1e542DB46eb87cc8E5fA8e1856eC53F89dc4bC89
PCT代幣合約,其地址為:
0x6019384a802310117a6E889e7021d2d0A144fE50
漏洞涉及的相關代碼片段為:
PineconeToke的_transfer()函數:
動態 | Rokkex交易平臺合并了分類帳保險庫以提高安全性:8月20日,Cointelegraph分享的一份新聞稿稱,由立陶宛網絡安全和金融技術專業人士建造的Rokkex將把其交易平臺與萊希的企業錢包管理解決方案萊希金庫(Ledger Vault)整合起來,以保護其加密資產。[2019/8/21]
在這里,PineconeToken的transferFrom的調用了_transfer()函數,在_transfer()中用戶轉賬會收取手續費,因而實際到賬的金額比transferFrom傳入的amount值要小。
PineconeFarm合約的deposit()函數:
比特幣錢包服務商Xapo兜售前阿爾卑斯山的軍用倉作為比特幣保險庫:比特幣錢包服務商Xapo已經允許一名記者訪問瑞士阿爾卑斯山的一個秘密的前軍事倉庫,該公司用它來為其私人客戶存儲比特幣。這個建于1947年的地堡據稱是冷戰期間瑞士軍隊的秘密總部。記者Joon Ian Wong在最近一篇關于石英和世界經濟論壇的文章中詳細討論了他在瑞士阿爾卑斯山的一座花崗巖山上的秘密軍事基地之旅。截至2017年11月底,這個10000平方英尺的基地由Deltalis公司作為數據中心運營。[2017/11/27]
在上述代碼中,PineconeFarm將存入的PCT質押到IPineconeStrategy合約中獲取收益。通過使用BSC的vm?trace工具,可以發現這個IPineconeStrategy是一個VaultRabbitCake合約。PineconeFarm對用戶份額share的計算會用到_wantAmt。而這個_wantAmt和下面的函數片段又有關聯。
策略合約的deposit()函數
從上述代碼可以看出,在計算sharesAdded時,其分母是wantTotal,而wantTotal依賴balance()。balance是關聯的總鎖倉PCT余額。由于實際的PCT余額小于deposit傳入的金額_wantAmt,這就會造成用戶份額在計算時增加了。
最后,當攻擊者調用withdraw函數時,只要輸入比deposit值大的參數就可以贖回超過質押數的PCT代幣。
按照這個機制,黑客在攻擊時,可以重復重復調用deposit和withdraw功能,從而導致合約質押的PCT損耗不斷增加、資金池持有的PCT余額不斷變小。然后在計算獎勵時,由于使用資金池中的余額作為分母,而分母越小,則可額外領取的獎勵就越多。
了解了代碼的漏洞及相關機制后,我們再來看黑客諸多攻擊中的一次攻擊:
這次攻擊中,黑客的地址為:0xfc6682db7e9f57882e8b18ebc9adc7a19f770494,其交易流程如下:
可以看出第一筆交易0xe446f質押了8.1萬PCT,然后在0x76d33提取獎勵時卻提取了16萬PCT。
我們繼續查看withdraw交易的參數,可以看出傳入amount值為22603495a2af5d0ccc34,將其轉換為10進制數就是16萬,遠超質押金額8.1萬。詳細細節如下圖所示:
從這次攻擊的漏洞原因看,在轉賬時有損耗的代幣在參與收益類項目時,存在較多的問題。因此靈蹤安全提醒項目方要充分考慮損耗對收益計算的影響。
對此類問題,靈蹤安全一直以來都會在審計時特別和項目方強調。另外我們也再次強調審計在項目中的重要性,希望項目方在項目上線前充分做好審計工作。
作者:
靈蹤安全CEO譚粵飛
美國弗吉尼亞理工大學(VirginiaTech,Blacksburg,VA,USA)工業工程碩士(Master)。曾任美國硅谷半導體公司AIBTInc軟件工程師,負責底層控制系統的開發、設備制程的程序實現、算法的設計,并負責與臺積電的全面技術對接和交流。自2011至今,從事嵌入式,互聯網及區塊鏈技術的研究,深圳大學創業學院《區塊鏈概論》課程教師,中山大學區塊鏈與智能中心客座研究員,廣東省金融創新研究會常務理事?。個人擁有4項區塊鏈相關專利、3本出版著作。
巴比特訊,8月16日。波卡生態貨幣市場協議KonomiNetwork宣布將于Polygon上推出KonomiOracle,從而為用戶提供一站式的加密資產管理解決方案.
1900/1/1 0:00:00原標題:《科普|NFT必知必會》作者:VeronicaCoutts 在本文中,我們將討論NFT是什么,數字藝術品分為哪些種類,數字藝術品存儲在哪里以及選購NFT需要注意哪些事項.
1900/1/1 0:00:00◆比特幣的未來和突然走紅的T恤7月21日,在「TheBWord?」大會上,來自特斯拉的?CEO埃隆·馬斯克,推特CEO杰克·多爾西以及被稱為女股神的凱西·伍德三位大咖,通過線上連線.
1900/1/1 0:00:00支付巨頭Visa是最新加入NFT熱潮的大公司,周一宣布于8月19日以近15萬美元的價格購買了CryptoPunk7610,這是NFT收藏品項目CryptoPunks3,840名“女性”朋克之一.
1900/1/1 0:00:00巴比特訊,DuneAnalytics數據顯示,全球最大的NFT交易平臺OpenSea在8月28日單日成交額達2.35億美元,再創歷史新高.
1900/1/1 0:00:00巴比特訊,V神發文稱,去中心化治理是必要的,但目前形式的代幣投票治理存在許多公認和未公認的危險,因此擴大或超越代幣投票是解決方案的關鍵部分.
1900/1/1 0:00:00