一篇文章看懂cosmos重委托漏洞

摘要

Cosmos SDK 在 2019年 5 月底发现存在严重安全漏洞,该团队随后发布了补丁,并与全球验证人共同进行了升级,从收到漏洞报告到修复主网共用了72小时。

攻击者可利用该漏洞绕过委托金赎回时的锁定时间。

在介绍漏洞细节之前,先介绍一下cosmos的投票机制。

staking:投票机制

Cosmos中持币人可以将自己的货币委托给validator,当validator出块时,持币人获得收益。
当持币人遇到了佣金更低、网络状态更好的validator,不想继续委托原来的validator时。
可以unbond之前的validator。这需要等待21天。21天结束之后,委托的货币会被返还,然后持币人就可以委托其他validator了。

redelegation:一键更换validator

redelegation功能 使持币人不用等待21天的unbonding周期,可以立即更换至其他validators。
唯一的限制是21天时间内,最多更换7次validators。
目前 Cosmostation 钱包已经支持redelegation功能。
redelegation截图

漏洞介绍

Cosmos重委托漏洞,使得持币人在赎回委托金时,不必再等待21天的时间。
Cosmos 团队的 Jack Zampolin 分享了一个程序,可以发现那些利用漏洞提前撤回委托的恶意交易。
Jack Zampolin

该漏洞导致7250个Atom代币被提前赎回,当时每个Atom价值6美元。
截止2019年5月31日,使用上述恶意方法解除委托的 Atoms 大约为43,500美元。

补丁代码分析

<
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

可爱多多白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值