Brahma TopGear慘遭攻擊 竟是因為囫圇吞棗不夠用戶死活的函數授權問題

2022-11-16 08:11:09

前言

2022年11月10日,知道創宇區塊鏈安全實驗室監測到ETH 鏈上的 brahTOPG 項目遭到攻擊。黑客經過研究發現該項目存在任意外部調用的漏洞,原因是該項目的Zapper合約未對用戶傳入的數據進行嚴格檢查,因此攻擊者利用此漏洞竊取對合約有授權用戶的代幣,從中獲利9萬美元

事件分析

通過分析攻擊的Txn

0xeaef2831d4d6bca04e4e9035613be637ae3b0034977673c1c2f10903926f29c0:


      Brahma TopGear慘遭攻擊 竟是因為囫圇吞棗不夠用戶死活的函數授權問題

攻擊者查看了0x392472c4369d6cdea89e2bddfd8144eecfdc032c錢包余額,然後調用Zapper合約的zapIn() 函數:


      Brahma TopGear慘遭攻擊 竟是因為囫圇吞棗不夠用戶死活的函數授權問題

該函數會為合約轉账 requiredToken 指定的代幣,由於該函數傳入的參數外部可控,攻擊者構造該參數為假代幣,並將假代幣轉給 Zapper 合約,接着會調用內部函數zap():


      Brahma TopGear慘遭攻擊 竟是因為囫圇吞棗不夠用戶死活的函數授權問題

假代幣就會進到變量 inputToken 裏,隨後檢查合約中假代幣的余額是否大於或等於傳入的值,由於IERC20(inputToken).approve()函數會外部調用假代幣合約的 approve() 函數,最後外部調用了 swapTarget() 函數,該函數的傳入參數同樣外部可以操控,導致之後攻擊者利用此任意外部調用漏洞,轉走其他有授權用戶的 USDC 代幣:


      Brahma TopGear慘遭攻擊 竟是因為囫圇吞棗不夠用戶死活的函數授權問題
      Brahma TopGear慘遭攻擊 竟是因為囫圇吞棗不夠用戶死活的函數授權問題

攻擊者重復以上步驟攻擊了三次,轉移了受害者账戶下約889343枚 USDC 代幣。

總結

此次被攻擊的主要原因在於Zapper合約沒有對用戶上傳數據進行嚴格檢查監控,導致了任意外部調用的問題,然後攻擊者利用此任意外部調用問題竊取了對合約有授權的用戶代幣。

合約函數權限的檢查仍是容易被忽略的,黑客恰好可以利用該問題,進行任意外部調用,從而發生安全事件。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

推薦文章

馬斯克再度出手 時隔三年重現激光眼造型

美國大選正在進行中,各種"爆款 meme"層出不窮。 今日凌晨,美國現任總統拜登宣布退出2024年...

加密小蝶
68 1個月前

狗狗幣價格展望:10億美元資金湧入後的DOGE能否觸及10美元大關?

狗狗幣(DOGE)當前正處於積極的上漲軌道上,其價格穩固於0.1381美元附近,並在盤中一度觸及0...

橙子說什么
63 1個月前

全新區塊鏈項目ATM2.0版成功發布 創新機制引領幣圈新風尚

在區塊鏈技術日新月異的今天,一款名為ATM2.0版的全新加密貨幣項目橫空出世,以其獨特的經濟模型和...

商業信息
80 1個月前

BNB Chain 的 meme Summer$FOUR傳承 CZ “4” 文化

自 2023 年开始,一張Binance首席執行官趙長鵬 ( CZ ) 經常在其推特账號上發手比“...

JSEUB1mp
71 1個月前

幣安發錢了 BNB HODLer 空投首發「Banana Gun」 幣價飆升創新高

今日凌晨,幣安宣布了第一期HODLer 空投的代幣為BANANA,其是Banana Gun 機器人...

半入清風
72 2個月前

下周能破新高?

TradingView的數據顯示 ,7月19日BTC/USD價格在64000美元左右,過去一周上漲...

愛抄底的劉坤
70 2個月前