1.前言
北京時間2022年03月13日,知道創宇區塊鏈安全實驗室監測到BSC上Paraluni項目遭到攻擊,黑客獲利約170萬美金。知道創宇區塊鏈安全實驗室將對本次事件深入跟蹤并進行分析。
2.分析
2.1基礎信息
攻擊者地址:0x94bc1d555e63eea23fe7fdbf937ef3f9ac5fcf8f
攻擊者合約:0x4770b5cb9d51ecb7ad5b14f0d4f2cee8e5563645
攻擊交易哈希:0x70f367b9420ac2654a5223cc311c7f9c361736a39fd4e7dff9ed1b85bab7ad54
Masterchef合約:0xa386f30853a7eb7e6a25ec8389337a5c6973421d
Coinbase和Kraken瑞波幣用戶或將錯過Flare Networks的Spark代幣空投:還有不到兩周時間,主流加密貨幣交易所和錢包中持有瑞波幣(XRP)用戶都可獲得瑞波合作伙伴Flare Networks的Spark代幣空投,但由于準備不足,Coinbase瑞波幣用戶可能會錯過這場盛宴。根據Flare Network上周公布的Spark代幣分配方案,他們將于12月發布基于XRP Ledger的代幣Spark,空投將在定于12月12日進行的地址快照之后進行,瑞波幣投資者可以為他們持有的每一個XRP索取一個免費的Spark代幣。但根據Flare Network披露的最新消息稱,加密貨幣交易所Coinbase幾乎沒有與之溝通,雙方也沒有就本次空投討論過合作。據悉,Flare Network已經向Coinbase用戶發送了通知信息,其中告知他們可能會錯過本次空投,因為Coinbase準備時間很短。除了Coinbase之外,加密貨幣交易所Kraken的瑞波幣用戶也可能會因同樣問題錯過本次空投。截止本文撰寫時,Coinbase官方尚未就此事做出回應。(decrypto)[2020/11/30 22:32:29]
UBT代幣合約:0xca2ca459ec6e4f58ad88aeb7285d2e41747b9134
加密基金Paradigm已至少投資21家初創公司和協議:Paradigm是專注于加密的基金,由Fred Ehrsam和Matt Huang于2018年創立。正如Paradigm的公開投資組合顯示,其關注領域包括DeFi協議、基礎設施提供商、為機構客戶提供金融服務的公司以及研發團隊。總體而言,Paradigm已經向5個垂直領域的至少21家初創公司和協議進行了投資。(The Block)[2020/11/7 11:55:43]
UGT代幣合約:0xbc5db89ce5ab8035a71c6cd1cd0f0721ad28b508
2.2項目背景
Paraluni項目是新加坡ParallelUniverse基金會發布的一個基于幣安智能鏈的匿名項目,用戶可以通過與masterChef合約交互進行質押代幣獲取流動性收益。
降維安全實驗室:從未審計過“Parrot”合約項目:9月9日消息,據TokenPocket向降維安全實驗室詢問“Parrot”合約是否經過降維安全審計。經核實此為“Parrot”項目方單方面盜用降維安全審計的名義作背書,向市場兜售“Parrot質押挖礦項目”,并承諾給予高收益。降維安全實驗室鄭重聲明,此項目與降維安全沒有任何關系,未經任何官方審計,請廣大用戶保持警惕。[2020/9/9]
2.3攻擊流程
為了使得攻擊流程更加清晰,我們將本次攻擊分為兩個階段進行分析。
預攻擊階段
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代幣為后續的攻擊提供重要支持。
Parity:無意拆分以太坊:據Coindesk消息,Parity Technologies于4月26日發表聲明稱沒有計劃推進代碼變更進而導致以太坊分裂,并在去年基金凍結以后實施更強大的安全措施,包括改進智能合同開發流程、與審計公司Trail of Bits建立合作關系。Parity Technologies的首席執行官Jutta Steiner表示無意拆分以太坊,而是想要與社區一同尋找前進的道路。[2018/4/26]
核心攻擊階段
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等操作都需要慎重考慮,合約審計、風控措施、應急計劃等都有必要切實落實。
Polkadot生態研究院出品,必屬精品波卡一周觀察,是我們針對波卡整個生態在上一周所發生的事情的一個梳理,同時也會以白話的形式分享一些我們對這些事件的觀察.
1900/1/1 0:00:00北京時間2022年3月17日,我們的系統監控到涉及APECoin的可疑交易,根據twitter用戶WillSheehan的報告,套利機器人通過閃電貸薅羊毛,拿到6W多APECoin.
1900/1/1 0:00:00他們做對了什么? 一個項目的成功不能僅僅歸因于幾個因素,它需要出色的產品、優質的團隊、適合的契機以及運氣.
1900/1/1 0:00:00前言 Ronin是新加坡游戲工作室SkyMavis開發的,是為支持游戲AxieInfinity而構建的以太坊側鏈,使得用戶能夠自由地將資產轉移到其他鏈上.
1900/1/1 0:00:00前言 北京時間2022年4月15日,知道創宇區塊鏈安全實驗室監測到DeFi協議RikkeiFinance遭到黑客攻擊,被盜資金中已有2600枚BNB被轉入TornadoCash.
1900/1/1 0:00:00三月總結 MixMarvelDAOVenture3月,MixMarvel成立了去中心化投資組織MixMarvelDAOVenture,已準備好進入專業投資和孵化高質量Web3項目和團隊的階段.
1900/1/1 0:00:00