野生狀態(tài)下智能契約的多重放攻擊區(qū)塊鏈
在CON26介紹Etalum智能契約的重放攻擊,它使用兩個(gè)丙溢流-以受影響的SMART合同為例。由此做了一項(xiàng)后續(xù)研究,在野外發(fā)現(xiàn)了多次重放攻擊。另外,還發(fā)現(xiàn)了更聰明的合同重放攻擊部署在Esumum主干網(wǎng)上。
在CON 26介紹Etalum智能契約的重放攻擊,它使用兩個(gè)丙溢流-以受影響的SMART合同為例。由此做了一項(xiàng)后續(xù)研究,在野外發(fā)現(xiàn)了多次重放攻擊。另外,還發(fā)現(xiàn)了更聰明的合同重放攻擊部署在Esumum主干網(wǎng)上。
回顧一下之前的,基本思想是監(jiān)視發(fā)送給一個(gè)合同的簽名消息,并在受害者合同上重播該消息。當(dāng)兩個(gè)契約都具有相同的驗(yàn)證簽名消息的算法時(shí),攻擊者可以在受害者合同的上下文中模擬其他人。
圖1:重放攻擊示例
圖1演示了上面提到的重放攻擊。在UGT合同中,簽名的消息Sig(A、B、100、3)包含在A發(fā)出的用于發(fā)送100 UGT從A到B3 UGT從A到C的費(fèi)用有趣的是Sig(A、B、100、3)也為MTC合同工作。因此,攻擊者可以重放MTC合同中用于發(fā)送的消息100 MTC從A到B3 MTC從A到C的費(fèi)用。
圖2:ProxyOverflow影響的智能契約也受到重放攻擊的影響
引擎蓋下的魔力在圖2中的209-210行中。這兩份合同都是有效的。___通過(guò)檢查_(kāi)__帶著(_v,_r,_s)。因?yàn)楝F(xiàn)在是可預(yù)測(cè)的(第221行),攻擊者可以使用相同的驗(yàn)證機(jī)制在任何合同上重播簽名的消息,這導(dǎo)致了這樣的說(shuō)法:“您支付的費(fèi)用可能比您想象的要高”。
圖3:重播狂野中的攻擊
根據(jù)分析了鏈上數(shù)據(jù),并觀察到至少7例野生重放攻擊。圖3顯示了竊聽(tīng)嵌入到指定給UGT契約(TX1)的事務(wù)中的輸入數(shù)據(jù)并在另一個(gè)事務(wù)(TX2)中對(duì)智能契約進(jìn)行重放的一種情況。下表顯示了發(fā)現(xiàn)的七種重放攻擊中的事務(wù)散列:
然后通過(guò)使用可能是相同的輸入模式對(duì)所有Etalum事務(wù)進(jìn)行分組來(lái)收集上面的數(shù)據(jù)。(v,r,s)。除此之外,還發(fā)現(xiàn)了新的重播攻擊影響合同。
圖4:影響智能契約的重放攻擊
WF曲速未來(lái)提醒:到目前為止,分析還沒(méi)有完成。但是都覺(jué)得,有更多的重放攻擊案件有待挖掘。
1.TMT觀察網(wǎng)遵循行業(yè)規(guī)范,任何轉(zhuǎn)載的稿件都會(huì)明確標(biāo)注作者和來(lái)源;
2.TMT觀察網(wǎng)的原創(chuàng)文章,請(qǐng)轉(zhuǎn)載時(shí)務(wù)必注明文章作者和"來(lái)源:TMT觀察網(wǎng)",不尊重原創(chuàng)的行為TMT觀察網(wǎng)或?qū)⒆肪控?zé)任;
3.作者投稿可能會(huì)經(jīng)TMT觀察網(wǎng)編輯修改或補(bǔ)充。