1.前言
北京時間2022年03月13日,知道創宇區塊鏈安全實驗室監測到BSC上Paraluni項目遭到攻擊,黑客獲利約170萬美金。知道創宇區塊鏈安全實驗室將對本次事件深入跟蹤并進行分析。
2.分析
2.1基礎信息
攻擊者地址:0x94bc1d555e63eea23fe7fdbf937ef3f9ac5fcf8f
攻擊者合約:0x4770b5cb9d51ecb7ad5b14f0d4f2cee8e5563645
攻擊交易哈希:0x70f367b9420ac2654a5223cc311c7f9c361736a39fd4e7dff9ed1b85bab7ad54
Masterchef合約:0xa386f30853a7eb7e6a25ec8389337a5c6973421d
ParaSpace已向此前事件受損用戶空投ParaVault NFT:4月8日消息,ParaSpace 宣布已向此前事件中的受損用戶空投 ParaVault NFT。
此前報道,ParaSpace 此前表示在其黑客攻擊事件中所有受影響的用戶都將收到一個 NFT,未來可使用該 NFT 兌換 ParaSpace Token。向 ParaSpace 借貸池提供資金的用戶將獲得額外的 Token,以彌補協議暫停期間錯失的收益機會,ParaSpace 還將引入激勵計劃。[2023/4/8 13:52:03]
UBT代幣合約:0xca2ca459ec6e4f58ad88aeb7285d2e41747b9134
UGT代幣合約:0xbc5db89ce5ab8035a71c6cd1cd0f0721ad28b508
ParaSpace:資金已從BlockSec收回,正努力恢復cAPE與APE 1:1錨定:3月19日消息,NFT借貸協議ParaSpace宣布資金已從BlockSec收回,正在重新平衡平臺上的資金池,同時還在努力修補 cAPE 兌換,以便它可以恢復到與 APE 1:1 的比例。一旦開始分階段重新開放協議,前端之類的東西將得到修復并顯示正確準確的數據。
ParaSpace 還表示正從合約方面著手實施安全性增強,包括大額提款請求的時間鎖定提款等。ParaSpace 計劃建立跨越所有時區的 24/7 Solidity 團隊,以實時監控合約交易,同時將針對嚴重錯誤提高錯誤賞金金額至 20 萬美元。ParaSpace 已經開始面試聘請一名穩固性和安全性主管。[2023/3/19 13:13:14]
2.2項目背景
Live Crypto Party項目遭到漏洞攻擊:金色財經消息,據CertiK監測,Live Crypto Party項目遭到漏洞攻擊。攻擊者(0x52d65)利用外部的function_transferOwnership() 函數,從中獲利10枚BNB(約3,000美元)。BSC質押合約地址: 0xFB2A9B3EEE6376F7095663B4D6ea8c39B634132A[2023/2/6 11:49:58]
Paraluni項目是新加坡ParallelUniverse基金會發布的一個基于幣安智能鏈的匿名項目,用戶可以通過與masterChef合約交互進行質押代幣獲取流動性收益。
2.3攻擊流程
為了使得攻擊流程更加清晰,我們將本次攻擊分為兩個階段進行分析。
CleanSpark:三季度凈虧損為2930萬美元,將完全專注于比特幣挖礦:8月10日消息,比特幣礦企CleanSpark在截至6月的財年第三季度凈虧損為2930萬美元,收入為3100萬美元,而上一季度凈虧損僅為17萬美元。CleanSpark挖礦業務占其收入的90%,該公司表示將出售其能源業務資產,以完全專注于比特幣挖礦。
據該公司網站稱,CleanSpark于2014年開始為家庭和企業提供能源產品,在2020年進入比特幣挖礦領域,目前超過90%的收入來自比特幣挖礦。(The Block)[2022/8/10 12:14:24]
預攻擊階段
1.攻擊者創建部署兩個代幣合約UBT和UGT。UBT:改寫transferFrom函數,實現對MasterChef的deposit()函數和withdrawAsset()函數的調用。UGT:ERC20代幣標準的代幣合約2.攻擊者使用閃電貸從pancakeSwap借出156,984BSC-USD和157,210BUSD。3.將借出的USDT和BUSD向對應的ParaPair添加流動性,獲得155,935枚ParaluniLP代幣到UBT合約中。此時獲取的Lp代幣為后續的攻擊提供重要支持。
核心攻擊階段
1.調用MasterChef合約中的depositByAddLiquidity函數,傳入參數為_pid:18,_token:,_amounts:,表示向18號池子添加1個UGT和1個UBT的流動性。
2.然后內部調用depositByAddLiquidityInternal函數,該函數的主要作用是調用addLiquidityInternal函數去鑄造LP代幣,然后調用_deposit函數存入LP代幣到用戶地址。但是函數并未校驗用戶傳入的_tokens和池子編號為_pid的tokens是否匹配,這就造成攻擊者能夠利用自己創建部署的惡意代幣進行后面重要操作。
3.depositByAddLiquidityInternal再內部調用addLiquidityInternal函數,該函數通過合約中LP代幣余額變化計算出需要deposit的數量。
4.其中當addLiquidityInternal函數調用到paraRouter.addLiquidity時,會調用攻擊者在預攻擊階段部署的UBT代幣合約中的transferFrom函數完成添加流動性操作。
但該惡意合約改寫transferFrom后會調用MasterChef的deposit()函數將預攻擊階段第三步獲取的LP代幣轉入masterChef中,此時的masterChef中LP余額已經變化,然后會調用_deposit函數存入LP代幣到用戶地址,此時獲取第一份LP代幣。
然后加上惡意合約的transferFrom調用deposit()時也會調用_deposit函數存入LP代幣到用戶地址,就相當于獲取了兩份LP代幣。
5.攻擊者分別調用UBT合約中的withdrawAsset函數和利用攻擊合約調用Mastechef合約中的withdraw函數提取兩份相同的LP到攻擊合約中;
6.最后移除流動性獲取31萬枚BSC-USD和31萬枚BUSD,然后歸還閃電貸完成攻擊。
3.漏洞核心
本次的攻擊主要是MasterCheif合約中的depositByAddLiquidity函數并未校驗用戶傳入的_tokens和池子編號為_pid的tokens是否一致,且外部調用時并未考慮到重入問題添加重入鎖,最終導致攻擊者能夠傳入外部惡意代幣合約進行重入攻擊。
4.總結
知道創宇區塊鏈安全實驗室在此提醒,任何有關deposit等操作都需要慎重考慮,合約審計、風控措施、應急計劃等都有必要切實落實。
Tags:PARPARAARASPAParis Saint-GermainParallelCoinKaraStar UMYspartanprotocol
Tether與瑞士南部城市盧加諾達成合作,使其接受BTC、USDT和LVGA作為“事實”法幣作為與Tether合作的一部分.
1900/1/1 0:00:00Polkadot生態研究院出品,必屬精品波卡一周觀察,是我們針對波卡整個生態在上一周所發生的事情的一個梳理,同時也會以白話的形式分享一些我們對這些事件的觀察.
1900/1/1 0:00:002022年3月10日WorldMobile將部署第二個飛艇,來連接非洲各地尚未連接網絡的地區,每個飛艇的覆蓋范圍可達75公里.
1900/1/1 0:00:00簡介 當一個惡意的加密貨幣開發人員或領導者放棄一個項目,并帶走該項目產生的所有資金時,就會發生所謂拉地毯騙局事件.
1900/1/1 0:00:00Polkadot生態研究院出品,必屬精品波卡一周觀察,是我們針對波卡整個生態在上一周所發生的事情的一個梳理,同時也會以白話的形式分享一些我們對這些事件的觀察.
1900/1/1 0:00:00瑞士加密貨幣行業著力解決勞動力短缺問題保羅·阿爾多伊諾(PaoloArdoino)是泰達及其姊妹公司Bitfinex加密貨幣交易所的首席技術官.
1900/1/1 0:00:00