被朋友Q到近期火熱的羊毛事件,截止目前,不僅是黑客獲利超20W刀,FTX損失108個ETH,合計有38名同樣思路的攻擊者部署合約發起攻擊。
本文從技術維度出發,深入分析此利用FTX交易所免手續費提幣的漏洞,結合智能合約回調發起的攻擊方式,并通過樣例代碼復現實現原理。
由于FTX已經通過人工審計針對攻擊者進行懲罰,該漏洞處于風險可控階段。切勿嘗試可能導致封號沒收質押物。
1.1XEN是什么?
是近期大火的一個XEN幣,到10-15為止已有超過120W筆交易,其實筆者對這類缺乏長期價值對Web3毫無建設性意義的項目一直沒什么興趣,因為他的機制就是只要發起的交易消耗了多少的GAS,就可以鑄造出一定數量的XEN幣,而眾所周知Etherscan有針對gas消耗的排行榜
聲音 | 孫宇晨:陪我APP配合監管機構進行內容整改 不必過度解讀:孫宇晨剛剛發微博表示,“陪我APP第一時間配合監管機構進行凈網行動,對平臺部分由用戶自發產生的負能量內容進行整改,一切正常運營,新的實體成立,老的實體解散而已,不影響正常業務進行,完全是基于商業考慮。我們旗下公司繁多,基于商業考慮進行公司新設與注銷是正常經營行為,不必過度解讀。”[2019/7/24]
可以看到真正出色的項目往往由于服務用戶多交易量大,所以gas消耗高排名靠前,仿佛成了另一種的應用商店熱門榜單,而XEN一舉通過“沖票“成了冠絕以太坊整個生態的Top1,且等于其他好項目的總和。
可拓展閱讀:當我們在看Etherscan的時候,到底在看什么?
分析 | TokenGazer幣安中簽解讀:大陸用戶仍為主力 機構持有較多BNB:TokenGazer分析顯示:幣安此次簽數16666個,因為放開國內用戶準入,中簽率從上次MATIC的58.38%下降到30.82%;按照這次的中簽率,鎖定20天的BNB數量是540多萬個,約3-4%的比例,再次說明大部分bnb在機構手里;另,此次中簽率下降了一半,持有100個BNB以上地址大概率為活躍交易用戶,可能說明中國大陸用戶仍舊占到幣安活躍交易用戶的半壁江山。[2019/5/28]
錢包單筆轉移gas消耗大于5W,且to地址是合約地址的交易。
下圖為其中top10的攻擊者,其交易數占總攻擊數的80%,致使FTX手續費損失86個ETH
動態 | 律師解讀《區塊鏈信息服務管理規定》:部分要求在現階段實施條件尚不成熟:2月14日,微信公眾號“京都律師”刊文指出,《區塊鏈信息服務管理規定》的部分條款偏向于原則性規定,且部分要求在現階段實施條件尚不成熟,可操作性值得商榷,有以下幾點可供探討和完善: 1.區塊鏈信息服務提供者的概念并未完全明確; 2.區塊鏈信息服務提供者的技術標準并不明晰; 3.區塊鏈信息服務提供者的安全評估流程并未說明; 4.行業自律條件尚不成熟。[2019/2/15]
筆者通過對其交易的gas消耗總值核算后,得出FTX本次損失總值為:108.19個ETH
合計鑄造出XEN約24億個。按14號日常價格估算的話,則黑客總收益在24W美金以上
現場 |中國電子技術標準化研究院周平解讀區塊鏈技術:金色財經現場報道,今日下午,在北京召開的區塊鏈應用技術高峰論壇暨區塊鏈應用技術專項賽頒獎典禮上,中國電子技術標準化研究院軟件工程評估中心主任周平在《區塊鏈及其標準化》的主題報告中,介紹了國際標準化情況和《區塊鏈和分布式記賬技術 術語》標準 ISO 22739。他提到區塊鏈是通過加密,將經驗證和校驗的區塊鏈接,形成的分布式賬本; Token是利用加密技術控制產生的資產的表現形式,該資產也通過加密技術校驗所有權轉移或狀態變化等。[2018/9/6]
詳細數據可<十四君>公眾號后臺輸入”FTX與XEN”獲得
2.1核心原理
智能合約的fallback/receive可任意執行邏輯。
任何一個合約都有默認的fallback函數,典型的功能就是讓合約可以接收以太幣并對其做出反應,這也是代幣型合約用來拒絕轉賬、發出事件或轉發以太幣的典型模式。后來更多場景是應用在代理升級模式
總之就是,一筆指向合約地址的交易,如果沒有匹配到對應執行的函數,就必然會執行fallback函數,而fallback可以將輸入參數指向另一個合約地址,從而執行對應的邏輯。
參考:https://blog.soliditylang.org/2020/03/26/fallback-receive-split/
黑客先部署了一個攻擊合約0xCba9b1
然后利用FTX的交易免費提幣功能
讓FTX的熱錢包0xc098b2,發起了一筆指向攻擊合約的提幣
導致交易觸發指向XEN合約的Mint函數調用
由于XEN合約可以設置Mint出代幣的收益方,從而將代幣轉入黑客地址
2.3手法還原
其實任意fallback非常好觸發,咱們通過現場手搓實現下,當然并不是MintXen,而是臨時隨意的一個20token來示意。
下文便是最簡單的一個ERC20代幣了,任何人均可執行mint函數,雷同于XEN了
對于ERC20/721實現原理可拓展閱讀:你買的NFT到底是什么?
而攻擊合約也很簡單,設置寫死要調用Mint的XEN合約地址以及黑客收益的地址。
可以看到實驗中,對此攻擊合約發起的任意一筆交易,即會觸發了receive,且myAddr的GLD余額增加1e18個,當然并不能拿著這個代碼就去復現黑客的實現了,因為要鑄造更多的GEX還得增加工廠合約部署的邏輯,即能提高gas消耗也吻合XEG的mint管理。
3、總結-從攻擊事件看“元交易”
其實如果不是黑客本身知道FTX有免費提幣優惠,且其提幣的交易的gasLimit設置為固定值50W,則很難發起這樣的攻擊,因為依據以太坊黃皮書,普通轉賬也僅僅需要2.1W的gas即可。
黑暗森林的web里知其雄守其雌,這樣的攻擊從歷史進程來看,其實更有警示性意義
筆者想談談元交易的發展
元交易是來自于ChristianLundkvist教授在2015年的一個設想
如今上手Dapp實在是太麻煩了,以太坊生態若想普及,就應該允許新用戶直接使用其功能,而不是先安排幾座大山讓用戶翻山越嶺。這意味著需要為新來的用戶墊付Gas費用。當前的以太坊協議并沒有提供原生方法來實現這一點。然而,得益于公/私密鑰對,用戶可以通過對元交易進行簽名并證明所有權。
相信未來元交易終會成為應用主流,本次的FTX代付gas執行免費提幣轉賬還只是元交易的某種小小實現,但只有安全無感才能迎接全民低成本上鏈時代的到來,為此安全與風控都需要特別注意,這也是筆者分析安全案件的初衷。
歡迎你從后臺提交web3行業問題探討
點贊關注十四,用技術視角帶給你價值
第一個數據,全網大餅成交量:24小時全球總的加密貨幣的成交量是538億美金其中比特幣:284億美金,以太坊93億美金.
1900/1/1 0:00:00TerraLunaClassic在牢牢守住0.00025美元的支撐位后,正準備看漲至0.00037美元。在過去的幾周里,它的表現繼續讓投資者失望,因為他們從0.00037美元開始計算損失.
1900/1/1 0:00:00金色財經報道,紐約法官周四撤銷了RocheFreedman在集體訴訟中代表原告的資格,該訴訟指控加密貨幣交易所Bitfinex和USDT穩定幣的發行者Tether操縱市場.
1900/1/1 0:00:00?歡迎大家閱讀學習,持續更新中,喜歡+關注觀看更多內容~作為中心化交易所火幣的原生代幣,火幣代幣已經見證了與市場普遍看跌趨勢背道而馳的巨大上漲.
1900/1/1 0:00:00親愛的用戶: 幣安“ 質押借幣”平臺新增可借資產USTC。查看幣安質押借幣的可借資產!注意:幣安會根據市場實際運行情況和風險程度動態調整可借幣種/質押幣種/利率/最大可借額度等參數.
1900/1/1 0:00:00公眾號 由于其復雜的生態系統,以太坊(ETH)以其高昂的汽油費和擴容問題而聞名。由于其多樣性,它被認為是當今第二大加密貨幣,因為它允許智能合約和dApp的創建.
1900/1/1 0:00:00