智能合约

Dice2win是以太坊上异常火爆的区块链博彩游戏。号称“可证明公平的”Dice2win每日有近千以太下注额,总交易量仅次于etheroll。然而我们分析发现dice2win中所有游戏都存在漏洞,庄家可以操纵结果。
知道创宇404区块链安全研究团队整理输出的报告中,把“地址初始化问题”、“判断函数问题”、“余额判断问题”、“转账函数问题”、“代码外部调用设计问题”、“错误处理”、“弱随机数问题”等问题统一归类为“以太坊智能合约编码设计问题”。
最近以太坊也算是问题不断,多个游戏都相继被爆出了黑客攻击,首当其冲的当然还是最近比较火爆的类Fomo3d的游戏,比如last winner所遭遇的薅羊毛的攻击,虽然相关的攻击手法早在一个月前就已经有相关的披露。
在知道创宇404区块链安全研究团队整理输出的《知道创宇以太坊合约审计CheckList》中,把“条件竞争问题”、“循环DoS问题”等问题统一归类为“以太坊智能合约设计缺陷问题”。我们此类问题在全网公开的智能合约代码做了扫描分析。
NEO是一个非盈利的社区化的区块链项目。目前Neo市值在coinmarket上排名全球十五,是备受关注的区块链项目之一。我们在neo智能合约平台中发现一处拒绝服务漏洞,攻击者可利用该漏洞在瞬间使得整个neo网络崩溃。
360 独角兽安全团队的 Zhenzuan Bai, Yuwei Zheng 等分享了议题《Your May Have Paid More than You Imagine:Replay Attacks on Ethereum Smart Contracts》,慢雾安全团队整理了这篇文章供大家交流参考。
这个类别非常广泛,但其基本攻击形式都是让用户短暂地(在某些情形下,是永久)推出不可操作的合约。这种攻击可以把 Ether 永远锁在被攻击的合约中,正如 Parity 多签名钱包第二次被黑中的情形一样。
Solidity缺陷易使合约状态失控的问题,其实就是 Unintialised Storage Pointers(未初始化的存储指针)的安全问题,EVM中会将数据存储为 storage 或 memory ,在函数中局部变量的默认类型取决于它们本身的类型。
这是capture the ether的write up 的另一部分,Math部分的writeup见我的上一篇文章。
Capture the Ether是一款在破解智能合约的过程中学习其安全性的游戏,跟ethernaut也类似,个人感觉质量非常高,比其ethernaut更加贴近实战。