1.假币攻击
合约中需要检验token符号和合约地址以及sender
2.inline回滚攻击
使用合约下注inline转账,然后inline另外一个方法判断下注结果(数据库,余额等)
使用defer开结果
3.黑名单账号攻击
黑客用黑名单账号 A 调用 B 合约,让 B 转账给 tobet ( 交易 a ), tobet 执行下注成功, 执行开奖, 交易 a 在 BP 打包失败。
B的转账是个inline action,tx由黑名单账号A发起
B的转账会在api节点验证通过,但是A的tx因为被加了黑名单,所以会被拒绝,这也就解释了为什么只能查到开奖记录但是查不到黑客下单记录的原因
开奖没检查下注是关键
我觉得如果使用read only的api节点做开奖依据就没有问题了
betdice 检查了,所以 betdice 是被重放攻击,所以 betdice 这里是要避免重放攻击
赞助一杯咖啡☕️
本文由 widdy 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Dec 20, 2018 at 04:37 pm