野生状态下智能合约的重放攻击

曲速未来安全区
曲速未来安全区 机构得得号

Aug 24, 2018 专注于为读者提供区块链安全领域最新讯息

摘要: 重放攻击的基本思想是监视发送给一个合同的签名消息,并在受害者合同上重播该消息。当两个契约都具有相同的验证签名消息的算法时,攻击者可以在受害者合同的上下文中模拟其他人。

在CON 26介绍Etalum智能契约的重放攻击,它使用两个丙溢流——以受影响的SMART合同为例。由此做了一项后续研究,在野外发现了多次重放攻击。另外,还发现了更聪明的合同重放攻击部署在Esumum主干网上。

回顾一下之前的,基本思想是监视发送给一个合同的签名消息,并在受害者合同上重播该消息。当两个契约都具有相同的验证签名消息的算法时,攻击者可以在受害者合同的上下文中模拟其他人。

图1:重放攻击示例

图1演示了上面提到的重放攻击。在UGT合同中,签名的消息Sig(A、B、100、3)包含在A发出的用于发送100 UGT从A到B3 UGT从A到C的费用有趣的是Sig(A、B、100、3)也为MTC合同工作。因此,攻击者可以重放MTC合同中用于发送的消息100 MTC从A到B3 MTC从A到C的费用。

图2:ProxyOverflow影响的智能契约也受到重放攻击的影响

引擎盖下的魔力在图2中的209-210行中。这两份合同都是有效的。___通过检查___带着(_v,_r,_s)。因为现在是可预测的(第221行),攻击者可以使用相同的验证机制在任何合同上重播签名的消息,这导致了这样的说法:“您支付的费用可能比您想象的要高”。

图3:重播狂野中的攻击

根据分析了链上数据,并观察到至少7例野生重放攻击。图3显示了窃听嵌入到指定给UGT契约(TX1)的事务中的输入数据并在另一个事务(TX2)中对智能契约进行重放的一种情况。下表显示了发现的七种重放攻击中的事务散列:

然后通过使用可能是相同的输入模式对所有Etalum事务进行分组来收集上面的数据。(v,r,s)。除此之外,还发现了新的重播攻击影响合同。

图4:影响智能契约的重放攻击

总结:到目前为止,分析还没有完成。但是都觉得,有更多的重放攻击案件有待挖掘。

(作者:曲速未来安全区,内容来自链得得内容开放平台“得得号”;本文仅代表作者观点,不代表链得得官方立场)

链得得仅提供相关信息展示,不构成任何投资建议
本文系作者 曲速未来安全区 授权链得得发表,并经链得得编辑,转载请注明出处、作者和本文链接

更多精彩内容,关注链得得微信号(ID:ChainDD),或者下载链得得App

分享到:

相关推荐

    评论(0

    Oh! no

    您是否确认要删除该条评论吗?

    分享到微信