麻豆国内精品欧美在线-麻豆国内精品久久久久久-麻豆国产在线观看一区二区-麻豆国产在线观看免费-麻豆国产原创-麻豆国产一区二区在线观看

以太坊代幣“假充值”漏洞細(xì)節(jié)披露及修復(fù)方案區(qū)塊鏈

張希 2018-07-13 11:55
分享到:
導(dǎo)讀

作為平臺(tái)方,在對(duì)接新上線的代幣合約之前,應(yīng)該做好嚴(yán)格的安全審計(jì),這種安全審計(jì)必須強(qiáng)制代幣合約方執(zhí)行最佳安全實(shí)踐。作為代幣合約方,在編碼上,應(yīng)該嚴(yán)格執(zhí)行最佳安全實(shí)踐,并請(qǐng)第三方職業(yè)安全審計(jì)機(jī)構(gòu)完成嚴(yán)謹(jǐn)完備的安全審計(jì)。

披露時(shí)間線

以太坊代幣“假充值”漏洞影響面非常之廣,影響對(duì)象至少包括:相關(guān)中心化交易所、中心化錢包、代幣合約等。單代幣合約,我們的不完全統(tǒng)計(jì)就有 3619 份存在“假充值”漏洞風(fēng)險(xiǎn),其中不乏知名代幣。相關(guān)項(xiàng)目方應(yīng)盡快自查。由于這不僅僅是一個(gè)漏洞那么簡單,這已經(jīng)是真實(shí)在發(fā)生的攻擊!出于影響,我們采取了負(fù)責(zé)任的披露過程,這次攻擊事件的披露前后相關(guān)時(shí)間線大致如下:

2018/6/28 慢霧區(qū)情報(bào),USDT “假充值”漏洞攻擊事件披露

2018/7/1 慢霧安全團(tuán)隊(duì)開始分析知名公鏈?zhǔn)欠翊嬖陬愃茊栴}

2018/7/7 慢霧安全團(tuán)隊(duì)捕獲并確認(rèn)以太坊相關(guān)代幣“假充值”漏洞攻擊事件

2018/7/8 慢霧安全團(tuán)隊(duì)分析此次影響可能會(huì)大于 USDT “假充值”漏洞攻擊事件,并迅速通知相關(guān)客戶及慢霧區(qū)伙伴

2018/7/9 慢霧區(qū)對(duì)外發(fā)出第一次預(yù)警

2018/7/10 慢霧安全團(tuán)隊(duì)把細(xì)節(jié)同步給至少 10 家區(qū)塊鏈生態(tài)安全同行

2018/7/11 細(xì)節(jié)報(bào)告正式公開

漏洞細(xì)節(jié)

以太坊代幣交易回執(zhí)中 status 字段是 0x1(true) 還是 0x0(false),取決于交易事務(wù)執(zhí)行過程中是否拋出了異常(比如使用了 require/assert/revert/throw 等機(jī)制)。當(dāng)用戶調(diào)用代幣合約的 transfer 函數(shù)進(jìn)行轉(zhuǎn)賬時(shí),如果 transfer 函數(shù)正常運(yùn)行未拋出異常,該交易的 status 即是 0x1(true)。

image.png

如圖代碼,某些代幣合約的 transfer 函數(shù)對(duì)轉(zhuǎn)賬發(fā)起人(msg.sender)的余額檢查用的是 if 判斷方式,當(dāng) balances[msg.sender] < _value 時(shí)進(jìn)入 else 邏輯部分并 return false,最終沒有拋出異常,我們認(rèn)為僅 if/else 這種溫和的判斷方式在 transfer 這類敏感函數(shù)場景中是一種不嚴(yán)謹(jǐn)?shù)木幋a方式。而大多數(shù)代幣合約的 transfer 函數(shù)會(huì)采用 require/assert 方式,如圖:

image.png

當(dāng)不滿足條件時(shí)會(huì)直接拋出異常,中斷合約后續(xù)指令的執(zhí)行,或者也可以使用 EIP 20 推薦的 if/else revert/throw 函數(shù)組合機(jī)制來顯現(xiàn)拋出異常,如圖:

image.png

我們很難要求所有程序員都能寫出最佳安全實(shí)踐的代碼,這種不嚴(yán)謹(jǐn)?shù)木幋a方式是一種安全缺陷,這種安全缺陷可能會(huì)導(dǎo)致特殊場景下的安全問題。攻擊者可以利用存在該缺陷的代幣合約向中心化交易所、錢包等服務(wù)平臺(tái)發(fā)起充值操作,如果交易所僅判斷如 TxReceipt Status 是 success(即上文提的 status 為 0x1(true) 的情況) 就以為充幣成功,就可能存在“假充值”漏洞。如圖:

image.png

參考示例 TX:

https://etherscan.io/tx/0x9fbeeba6c7c20f81938d124af79d27ea8e8566b5e937578ac25fb6c6804error

修復(fù)方案

除了判斷交易事務(wù) success 之外,還應(yīng)二次判斷充值錢包地址的 balance 是否準(zhǔn)確的增加。其實(shí)這個(gè)二次判斷可以通過 Event 事件日志來進(jìn)行,很多中心化交易所、錢包等服務(wù)平臺(tái)會(huì)通過 Event 事件日志來獲取轉(zhuǎn)賬額度,以此判斷轉(zhuǎn)賬的準(zhǔn)確性。但這里就需要特別注意合約作惡情況,因?yàn)?Event 是可以任意編寫的,不是強(qiáng)制默認(rèn)不可篡改的選項(xiàng):

emit Transfer(from, to, value); // value 等參數(shù)可以任意定義

作為平臺(tái)方,在對(duì)接新上線的代幣合約之前,應(yīng)該做好嚴(yán)格的安全審計(jì),這種安全審計(jì)必須強(qiáng)制代幣合約方執(zhí)行最佳安全實(shí)踐。

作為代幣合約方,在編碼上,應(yīng)該嚴(yán)格執(zhí)行最佳安全實(shí)踐,并請(qǐng)第三方職業(yè)安全審計(jì)機(jī)構(gòu)完成嚴(yán)謹(jǐn)完備的安全審計(jì)。

后記 Q&A

Q:為什么我們采取這種披露方式?

A:本質(zhì)是與攻擊者賽跑,但是這個(gè)生態(tài)太大,我們的力量不可能覆蓋全面,只能盡我們所能去覆蓋,比如我們第一時(shí)間通知了我們的客戶,然后是慢霧區(qū)伙伴的客戶,再然后是關(guān)注這個(gè)生態(tài)的安全同行的客戶,最終不得不披露出細(xì)節(jié)。

Q:為什么說披露的不僅僅是漏洞,而是攻擊?

A:其實(shí),以我們的風(fēng)格,我們一般情況下是不會(huì)單純?nèi)ヌ崧┒矗┒催@東西,對(duì)我們來說太普通,拿漏洞來高調(diào)運(yùn)作不是個(gè)好方式。而攻擊不一樣,攻擊是已經(jīng)發(fā)生的,我們必須與攻擊者賽跑。披露是一門藝術(shù),沒什么是完美的,我們只能盡力做到最好,讓這個(gè)生態(tài)有安全感。

Q:至少 3619 份存在“假充值”漏洞風(fēng)險(xiǎn),這些代幣該怎么辦?

A:很糾結(jié),一般來說,這些代幣最好的方式是重發(fā),然后新舊代幣做好“映射”。因?yàn)檫@類代幣如果不這樣做,會(huì)像個(gè)“定時(shí)炸彈”,你不可能期望所有中心化交易所、中心化錢包等平臺(tái)方都能做好安全對(duì)接,一旦沒做好這個(gè)“假充值”漏洞的判斷,那損失的可是這些平臺(tái)方。而如果平臺(tái)方損失嚴(yán)重,對(duì)整個(gè)市場來說必然也是一種損失。

Q:有哪些知名代幣存在“假充值”漏洞?

A:我們不會(huì)做點(diǎn)名披露的事。

Q:有哪些交易所、錢包遭受過“假充值”漏洞的攻擊?

A:恐怕沒人會(huì)公開提,我們也不會(huì)點(diǎn)名。

Q:這些代幣不重發(fā)是否可以?

A:也許可以,但不完美。不選擇重發(fā)的代幣要么很快是發(fā)布主網(wǎng)就做“映射”的,要么得做好通知所有對(duì)接該代幣的平臺(tái)方的持續(xù)性工作。

Q:為什么慢霧可捕獲到這類攻擊?

A:我們有健壯的威脅情報(bào)網(wǎng)絡(luò),捕獲到異常時(shí),我們默認(rèn)直覺會(huì)認(rèn)為這是一種攻擊。

Q:除了 USDT、以太坊代幣存在“假充值”漏洞風(fēng)險(xiǎn),還有其他什么鏈也存在?

A:暫時(shí)不做披露,但相信我們,“假充值”漏洞已經(jīng)成為區(qū)塊鏈生態(tài)里不可忽視的一種漏洞類型。這是慢霧安全團(tuán)隊(duì)在漏洞與攻擊發(fā)現(xiàn)史上非常重要的一筆。

漏洞 安全 合約 攻擊 判斷
分享到:

1.TMT觀察網(wǎng)遵循行業(yè)規(guī)范,任何轉(zhuǎn)載的稿件都會(huì)明確標(biāo)注作者和來源;
2.TMT觀察網(wǎng)的原創(chuàng)文章,請(qǐng)轉(zhuǎn)載時(shí)務(wù)必注明文章作者和"來源:TMT觀察網(wǎng)",不尊重原創(chuàng)的行為TMT觀察網(wǎng)或?qū)⒆肪控?zé)任;
3.作者投稿可能會(huì)經(jīng)TMT觀察網(wǎng)編輯修改或補(bǔ)充。


專題報(bào)道

主站蜘蛛池模板: 无码任你躁久久久久久久 | 天天天天天天天操 | 教室里老师好紧h | 国产精品视频人人做人人爱 | 欧美成人午夜片一一在线观看 | 香蕉久久综合 | 日韩高清在线免费看 | 国产精品毛片久久久久久久 | 久草在线精彩免费视频 | 亚洲精品国产精品麻豆99 | 欧美日韩免费一区二区在线观看 | 欧美日韩亚洲综合在线一区二区 | 国产91精品久久久久久久 | bt7086新片速递亚洲最新合集 | 女教师系列三上悠亚在线观看 | 丝袜兔女郎被啪在线观看91 | 久久国产乱子伦精品免费不卡 | 成人免费网址 | 丰满艳妇亲伦视频 | 91制片厂制作传媒网站破解 | 91精品国产高清久久久久久io | 三级小说网站 | 男人猛激烈吃奶gif动态图 | 精品国产一级在线观看 | 2019年国产不卡在线刷新 | 日本一级不卡一二三区免费 | 亚洲品质水蜜桃 | 小货SAO边洗澡边CAO你动漫 | 精品国产一区二区三区国产馆 | 美女福利视频一区二区 | 国产第一页无线好源 | 免费国产一级观看完整版 | 欧美va在线 | 波多野结衣作品在线观看 | 日韩永久在线观看免费视频 | 999任你躁在线精品免费不卡 | 亚洲 制服 欧美 中文字幕 | 日韩欧美一区二区三区免费看 | 国产亚洲综合精品一区二区三区 | 91天堂国产在线 在线播放 | 国产精品亚洲片在线观看麻豆 |