安全分析 | 7月至今數(shù)字貨幣及加密領(lǐng)域相關(guān)黑客攻擊事件
事件
1. 黑客勒索攻擊
傳統(tǒng)的勒索軟件攻擊以及通過(guò)系統(tǒng)漏洞遠(yuǎn)程控制受害者系統(tǒng)的攻擊,是7月至今發(fā)生的黑客勒索攻擊事件中的主要攻擊方式。此類攻擊行為,攻擊者不需要了解熟悉區(qū)塊鏈的知識(shí)和技術(shù)細(xì)節(jié)就可以完成攻擊,尤其是twitter攻擊(利用了社會(huì)工程的方法),其攻擊者是三名青少年,其中最大年齡僅有22歲,這起事件在7月以來(lái)的安全事件中較典型的一例,產(chǎn)生的影響范圍極廣。
①7月2日,MongoDB遭受到攻擊,約22900個(gè)數(shù)據(jù)庫(kù)被清空,攻擊者要求以BTC作為贖金贖回被清空數(shù)據(jù)庫(kù)的備份。
②7月11日, Cashaa交易所發(fā)生交易異常,攻擊者通過(guò)控制受害者電腦,操作受害者在Blockchain.info上的比特幣錢(qián)包,向攻擊者賬戶轉(zhuǎn)移約合9800美元的BTC。
③7月15日, twitter遭受社會(huì)工程攻擊,員工管理賬號(hào)被盜,造成多個(gè)組織和個(gè)人的推特上發(fā)布欺詐信息,誘使受害者向攻擊者比特幣賬戶轉(zhuǎn)賬。
④7月22日,約克大學(xué)信息被盜取,攻擊者要求約合114萬(wàn)美金的BTC作為贖金。
⑤7月23日,英國(guó)足球聯(lián)盟信息被盜取,攻擊者要求BTC作為贖金。
⑥7月25日,西班牙鐵路基礎(chǔ)建設(shè)管理局約800gb信息被盜,攻擊者要求BTC作為贖金。
⑦7月30日,佳能遭受到黑客攻擊,約10tb照片和其他類型數(shù)據(jù)被盜,用戶要求以數(shù)字貨幣作為贖金。
⑧7月31日,數(shù)字貨幣交易所2gether遭受到黑客攻擊,約139萬(wàn)美金的BTC被盜。
2. 代碼漏洞攻擊
對(duì)于代碼漏洞攻擊相關(guān)事件,攻擊者則必須要理解區(qū)塊鏈51%攻擊并且能夠找到可以利用的條件(租用龐大的算力)來(lái)完成攻擊,并且需要對(duì)智能合約的技術(shù)有深刻的了解,找到其中的邏輯漏洞并加以利用。
⑨8月4日,DeFi項(xiàng)目Opyn被攻擊者通過(guò)代碼漏洞,獲得數(shù)目等于存入數(shù)目?jī)杀兜拇鷰牛罱K造成了約37萬(wàn)美金的損失。
攻擊類型及危險(xiǎn)
攻擊事件類型及危險(xiǎn)程序:
勒索攻擊——攻擊的方法和媒介如下:
代碼漏洞攻擊:——攻擊的方法和媒介如下:
因勒索攻擊門(mén)檻低,攻擊方式大同小異,因此可供分析程度有限,下文將為大家具體分析8月兩起(第9號(hào)及第10號(hào)事件)代碼漏洞攻擊事件。
代碼漏洞攻擊事件分析
第⑨號(hào)事件
此次事件發(fā)生于DeFi項(xiàng)目Opyn中,攻擊產(chǎn)生的原因是Opyn在智能合約oToken中的exercise函數(shù)出現(xiàn)漏洞。攻擊者在向智能合約中發(fā)送某一數(shù)量的ETH時(shí)候,智能合約僅僅檢查了該ETH的數(shù)量是否與完成該次期貨買(mǎi)賣(mài)需要的數(shù)量一致,并沒(méi)有動(dòng)態(tài)的檢查攻擊者發(fā)送的ETH數(shù)量是否在每一次交易之后,仍舊等于完成該次期貨買(mǎi)賣(mài)所需要的數(shù)量。
也就是說(shuō),攻擊者可以用一筆ETH進(jìn)行抵押,并再贖回兩次交易,最終獲得自身發(fā)送數(shù)量?jī)杀兜腅TH。
CertiK安全研究團(tuán)隊(duì)認(rèn)為,Opyn沒(méi)有對(duì)其更新完成后的智能合約再次進(jìn)行嚴(yán)謹(jǐn)?shù)陌踩珜徲?jì)驗(yàn)證就直接進(jìn)行部署運(yùn)行,從而造成了其智能合約中的程序代碼漏洞沒(méi)有被及時(shí)發(fā)現(xiàn),是此次事件發(fā)生的主要原因。
總結(jié)
在此,建議如下:
- 做好區(qū)塊鏈項(xiàng)目運(yùn)行的硬件以及平臺(tái)軟件的安全漏洞篩查,在日常工作中關(guān)注培養(yǎng)員工對(duì)于黑客攻擊常見(jiàn)手段的認(rèn)識(shí)和防御意識(shí)。
- 做好對(duì)區(qū)塊鏈運(yùn)營(yíng)中可能出現(xiàn)的某方占有超過(guò)全區(qū)塊鏈一半總算力的“支配”情況,對(duì)于特定區(qū)塊鏈項(xiàng)目中的防護(hù),可以考慮采用提高交易確認(rèn)必須次數(shù)或者優(yōu)化共識(shí)算法。
- 做好對(duì)區(qū)塊鏈項(xiàng)目中鏈代碼和智能合約代碼的驗(yàn)證審計(jì)工作,邀請(qǐng)多個(gè)獨(dú)立的外部安全審計(jì)服務(wù)來(lái)審計(jì)代碼,并在每次更新代碼后進(jìn)行重新審計(jì)。