背景
從 DeFi 之夏到現在,我們在遭受各種漏洞、后門、跑路等層出不窮的手段洗禮后,總算學會了在 DEX 上參與新項目前,應先檢查代幣合約的權限、代幣的持倉分布及合約的代碼以保護自己的資產安全。但相對的,壞人們的作惡手段也更加高明與隱蔽。近期,慢霧安全團隊收到來自 PancakeSwap 社區用戶的求助,其參與項目時觀察到,在項目代幣沒有任何增發記錄的情況下,惡意用戶使用未被記錄的大量增發代幣卷走了池子中的資金。慢霧安全團隊跟進分析此事件并將結果分享如下:
攻擊細節
惡意代幣 IEGT 在 BSC 上的部署地址是 0x8D07f605926837Ea0F9E1e24DbA0Fb348cb3E97D。我們通過區塊瀏覽器觀察其 Holders,發現在 dead 與 pair 地址持有大量 IEGT 代幣的情況下,合約記錄的 totalSupply 仍為 5,000,000。
通過進一步查看這些代幣的來源可以發現,這些代幣在0x00002b9b0748d575CB21De3caE868Ed19a7B5B56 中只有轉出記錄而沒有轉入記錄。
安全團隊:警惕假冒大V@DesLucrece賬號和釣魚鏈接:據官方推特消息,CertiK監測到某釣魚網站:https://heymint[.]cc/deslucrece,該網站曾用推特賬號@DezLucrece進行推廣,而該推特賬號正在模仿推特大V@DesLucrece,請注意區分,并不要與該釣魚網站互動或批準任何交易![2023/1/26 11:30:27]
我們都知道,EIP20 標準 規定了代幣轉移時必須實現 Transfer 事件,包括在代幣鑄造時,從 0x0 地址進行轉移也必須進行事件記錄。區塊瀏覽器依賴這些標準的事件記錄進行數據統計。因此,當在區塊瀏覽器中發現其代幣總額與實際數量不匹配時,則表明代幣在進行增發時并未進行事件記錄,導致區塊瀏覽器只統計了轉賬后相關地址的余額變化,而沒有任何代幣增發記錄。據此,我們可以確定代幣合約中必然存在增發代幣的惡意代碼。
此代幣合約的代碼是開源的,想來是項目方為了增加項目的可信度。接下來我們對其源碼進行分析。一般來說,進行代幣增發最簡單的方式就是實現一個直接增加指定地址余額的方法。在當前合約中是通過定義一個 _balances 映射,對用戶的代幣余額進行記錄。但經過檢查,合約中并未實現對指定地址的 _balances 進行修改的代碼。
安全團隊:HACHiKO項目代幣超跌90%,請保持警惕:金色財經報道,據CertiK數據監測,HACHiKO項目代幣超跌90%,BSC合約(地址0x66238......c29e) ,請保持警惕。[2022/9/9 13:18:22]
既然沒有發現直接增加余額的代碼,那么項目方又是如何進行增發的呢?我們回顧下智能合約的基礎知識,可以知道用戶代幣余額的變化本質上就是修改了合約在鏈上存儲的數據狀態。因此,只要修改特定地址的 _balances 在合約中對應存儲的插槽數據,即可修改其代幣余額。
我們先簡單回顧下 EVM 中計算合約數據存儲位置的基礎知識,對于映射類型 _balances 來說,其會根據其鍵值 k 與其所占據位置 p 進行 keccak256 后得到偏移量,作為其存儲的插槽位置,即 keccak256(k,p)。通過分析 IEGT 合約的數據存儲位置,我們可以發現其 _balances 參數所在位置為 slot0,那么用戶的余額存儲位置即為 keccak256(address,0) 。
美國加州總檢察長提醒民眾警惕數字資產詐騙:美國加州總檢察長Xavier Becerra就涉及數字資產(如加密貨幣)的詐騙行為發出消費者警告。最近不法分子在社交媒體和YouTube頻道冒充知名政客、名人和企業高管,實施“贈品”騙局,例如虛假承諾將發送給特定數字資產錢包的任何數字資產翻倍。詐騙者試圖利用新技術來掠奪加州人來之不易的積蓄。
任何考慮投資或購買數字資產的人都應了解以下騙局:欺詐性貨幣發行、虛假交易所和錢包、龐氏騙局、金字塔計劃、挖礦騙局、數字資產作為替代支付形式。
為了避免成為數字資產詐騙的受害者,Becerra敦促投資者特別警惕這些危險信號:
1. 不切實際的利潤宣傳,如承諾一種加密貨幣的表現將優于股票市場或產生有保證的固定收益;
2. 含糊不清的匿名產品,如加密貨幣缺乏“白皮書”、真實的用途或可識別的管理團隊;
3. 聲稱來自值得信賴的政府官員、高管、名人或朋友和家人的特殊交易或贈品(在點擊任何鏈接之前請與他們交談);
4. 獎勵招募其他投資者的計劃;
5. 迫使你立即投資的產品或交易;
6. 沒有確保客戶存款和兌現提款可靠記錄的交易所和錢包;
7. 任何看起來好得難以置信的主張或交易。[2020/8/8]
警惕多種 Omni USDT 雙花攻擊:近日,OmniCore 團隊修復了一個重大安全漏洞,由于節點在收到新區塊時沒有處理好并發鎖問題,攻擊者可通過發送特殊構造的區塊,導致一次交易多次記賬,使得賬戶余額出錯。
而在此前,慢霧安全團隊捕獲了一起針對交易所的 USDT 假充值攻擊事件,經分析發現,由于部分交易所使用了舊版本的 omnicore 客戶端(如0.5.0),黑客使用精心構造的轉賬交易,可以在舊版本的客戶端上標記為轉賬成功,而在新版本的客戶端上顯示為失敗,從而達到假充值的目的。
慢霧安全團隊提醒相關節點運營方,利用未升級的節點來發起雙花攻擊是一種常見的黑客攻擊方法,尤其是在OmniLayer等二層網絡應用上,此類攻擊并不會導致主鏈分叉,不容易被發現,應十分警惕,及時升級節點至最新版本(0.8.0)。[2020/3/6]
帶入惡意地址進行計算,可以得到其余額存儲位置為 0x9d1f25384689385576b577f0f3bf1fa04b6829457a3e65965ad8e59bd165a716。隨后查找此插槽數據變化,可以發現其在合約部署時已被修改為一個巨大的值。
動態 | 新加坡提醒市民警惕通過比特幣ATM躲避偵查的詐騙案:詐騙者正轉向比特幣ATM來欺騙受害者,避免被發現。新加坡武吉美拉東區鄰里警察中心(NPC)的警察在不同案件中阻止了至少兩名受害者在詐騙者的指示下購買比特幣。負責中央警務處商業罪案調查組的督察Ho Cher Hin表示,比特幣ATM的使用日益增多,這是詐騙者避免被發現和擾亂其犯罪活動的作案手法的一個例子。案件包括求職詐騙、網絡戀愛詐騙和冒充詐騙。“為了防止其他人在這些騙局中損失錢財,武吉美拉東區NPC的官員一直在與比特幣ATM的用戶接觸,以防止此類交易。”他還呼吁市民切勿向任何人透露任何個人資料,包括身份證號碼、護照資料、聯絡方式、銀行賬戶或信用卡資料以及一次性密碼。“沒有政府機構或官員會通過電話或自動語音機要求提供個人信息或轉賬。在你行動之前,給你信任的朋友或親戚打個電話談談,因為你可能會因為情緒激動而判斷失誤。”(The Straits Times)[2019/12/31]
因此,我們可以確定在 IEGT 合約部署初始化時,項目方就隱蔽地增發了大量的代幣,為 Rug 做好準備。接下來我們跟進其初始化函數,分析發現其在進行 _pathSet 操作時,通過內聯匯編對合約存儲進行了修改,并且未對代碼進行格式化處理,以降低其可讀性。
跟進計算發現 y 值為 2b9b0748d575cb21de3cae868ed19a7b5b56,通過兩次 mstore 將內存 0~64 字節的位置填充為 00000000000000000000000000002b9b0748d575cb21de3cae868ed19a7b5b56,而惡意增加代幣余額的地址為 0x00002b9b0748d575CB21De3caE868Ed19a7B5B56。可以發現惡意用戶通過構造一連串的數據,計算使得正好可以得到其控制的目標地址。因此,我們也可以從編譯后的字節碼中發現此計算后未進行填充的“地址”。
緊接著通過 keccak256 對內存 0~64 字節的數據進行哈希后,正好得到惡意用戶的余額存儲插槽位置 0x9d1f25384689385576b577f0f3bf1fa04b6829457a3e65965ad8e59bd165a716,這也正是合約中將 _balances 置于 slot0 位置的原因,這極大方便了在內聯匯編中計算余額實際的存儲位置。然后使用 sstore 將合約中此存儲位置的值修改為當前時間的 6 次方,此時即完成了對指定地址的余額修改。隨后的內聯匯編操作類似,在此不做贅述。
至此,我們知道了項目方是在合約初始化時,通過內聯匯編的方式修改了指定地址余額,隱蔽地增發了大量未被其他用戶獲悉的代幣,導致用戶在參與項目時被 Rug。
追蹤分析
通過 MistTrack 分析此次事件獲利地址為 BSC 鏈上 0x000000481F40f88742399A627Cbc2Afb6Ec34FeD 與 0x00002b9b0748d575CB21De3caE868Ed19a7B5B56,共計獲利 114 萬 USDT,獲利地址轉移 USDT 的手續費來源為 Binance 交易所提款。
目前資金轉移情況如下圖:
此外,惡意合約創建者的手續費地址 0xb795ad917DAF9A1c98eE18E03E81FBBfb6D54355 同樣存在大量痕跡。
總結
此次事件中,項目方開源合約代碼以增加用戶信任度,通過未格式化的代碼降低代碼可讀性,并且使用內聯匯編來編寫直接修改用戶余額存儲插槽數據的代碼,提高了代碼分析門檻。其使用種種手段隱藏作惡痕跡,最后將池子席卷一空。可以發現,在用戶的安全意識越來越強的情況下,作惡者的手段也越發隱蔽與高明。據 SlowMist Hacked 統計,截止目前,由于 Rug Pull 導致的損失金額接近 5 億美元。因此,用戶在參與新項目時應著重分析其合約中是否存在可疑的代碼,盡量不參與合約未開源且未經過審計的項目。MistTrack 團隊也將持續跟進并監控此事件。
參考鏈接:
https://bscscan.com/address/0x8d07f605926837ea0f9e1e24dba0fb348cb3e97d
https://eips.ethereum.org/EIPS/eip-20
https://misttrack.io/
https://hacked.slowmist.io/
慢霧科技
個人專欄
閱讀更多
Foresight News
金色財經 Jason.
白話區塊鏈
金色早8點
LD Capital
-R3PO
MarsBit
深潮TechFlow
Tags:ANC數字資產NCEbalanceSwancake Token數字資產交易平臺Aggregated FinanceDisbalancer
所謂“通證化”(tokenization),就是指玩家對游戲物品、游戲角色和游戲貨幣擁有更多的掌控權。之前被游戲開發商攥在手里的權力現在被交到了游戲玩家的手中,因此催生出了繁榮的玩家經濟.
1900/1/1 0:00:00作者:Robin Chang,Eddie Hsiung;編譯: TaxDAO 1. 政府的態度和定義 加密貨幣目前不被臺灣央行(“CBC”)接受為貨幣.
1900/1/1 0:00:008月1日納斯達克上市公司MicroStrategy(MSTR)發布了2023年2季度報告,大手筆增持1.28萬個BTC.
1900/1/1 0:00:007月30日,一款名為BALD的meme幣部署在了coinbase L2網絡BASE上,并在LeetSwap開啟交易.
1900/1/1 0:00:00作者:Steven Ehrlich,forbes;編譯:Kate, Marsbit美國證券交易委員會(Securities and Exchange Commission.
1900/1/1 0:00:00作者:松雪,金色財經 昨晚,美國聯邦法官 Analisa Torres 裁定,Ripple Labs Inc, 在公開交易所和通過算法出售 XRP 代幣并未違反聯邦證券法.
1900/1/1 0:00:00