使用Manticore和符号执行技术发现智能合约漏洞

本文详细介绍了在Devcon IV大会上如何使用Manticore符号执行引擎进行智能合约漏洞挖掘,包括区块链尸检分析、安全现状讨论和安全培训等内容,涵盖多项区块链安全技术实践。

Trail of Bits @ Devcon IV 回顾

我们希望通过多场演讲、小组讨论和两次培训来弥补错过前三届Devcons的遗憾。对于未能参会的各位,我们在此总结我们的贡献。期待明年与您相见。

使用Manticore和符号执行发现智能合约漏洞

在这个工作坊中,Josselin Feist展示了如何使用我们开源的符号执行引擎Manticore。Manticore不仅能让开发者立即发现代码中的错误,还能证明其代码的正确性。Josselin带领120名参会者完成了各种Manticore实践练习。每个人都掌握了实用的形式化方法,这将帮助他们确保智能合约符合规范。

获取工作坊幻灯片和练习材料

“我们在@EFDevcon的智能合约安全工作坊已经开始,座无虚席!至少120人正在学习使用符号执行验证程序。”

— Trail of Bits (@trailofbits) 2018年10月31日

“在@trailofbits #devcon4工作坊中使用manticore进行智能合约漏洞挖掘https://t.co/wziLNK0djH 太棒了!”

— Valer (@blankorized) 2018年10月31日

区块链尸检分析

在这个闪电演讲中,Jay Little恢复并分析了30,000个自毁合约,并识别出其中隐藏的潜在攻击。以太坊主网上已创建200万个合约,但很少有持有价值的合约被销毁。这些高价值交易很难发现;许多交易对完全同步的以太坊节点不可用。为了实现这一壮举,Jay创建了新工具来重新处理区块链账本数据,重建带状态的合约,并使用跟踪和启发式方法分析可疑交易。

过滤部署错误、DoS攻击和垃圾邮件以识别可疑的自毁行为

获取Jay的幻灯片

安全现状小组讨论

在这个小组讨论中,Kevin Seagraves主持了关于以太坊当前安全状况的讨论。去年以太坊安全最大的变化是什么?保护智能合约与传统系统有何不同?我们应该如何看待漏洞赏金的效用?听听专家小组的见解:

“@dguido谈到对智能合约安全过度依赖漏洞赏金——你需要合格的人员告诉你代码覆盖范围、方法类型并评估系统设计,而不仅仅是漏洞列表。之后当然可以设置赏金。#devcon4”

— Amber ☘️ (@AmberBaldet) 2018年11月1日

“#DevconIV安全小组讨论’漏洞赏金的效果远不如人们想象的那么有效’ 👏🏼👏🏼👏🏼#devcon4”

— Cornelius Gouws (@CorneliusIII) 2018年11月1日

安全培训

在这个为期一天的培训中,JP分享了如何进行安全审查;不仅仅是我们的工具或技巧,而是整个方法。除了这些知识,我们还试图传授我们的评估理念。我们经常遇到这样的观点:审计只是提供漏洞列表,从而能够说"我们的代码已经过审计!"(因此"我们的代码是安全的!")。但这只是部分情况。审计还应提供整体项目风险评估、架构和开发生命周期指导,以及可咨询的对象。

我们将于12月11日在纽约再次举办培训。请预留座位。

“今天在布拉格参加@trailofbits的@japesinator的智能合约安全 workshop,从阿姆斯特丹飞过来绝对值得😎 #ethereum #security #smartcontract”

— rmi7.eth ⛷ (@rmi) 2018年11月3日

Devcon惊喜

Evan Sultanik没有参加Devcon,而是留在家里编写了一个以太坊客户端模糊测试器。Etheno自动寻找全球以太坊客户端之间的差异,就像10月份在Ropsten上出现的那样。Etheno在两分钟内自动识别出相同的错误。

我们很高兴参加了Devcon4,并期待在未来活动中更多参与。

如果您喜欢这篇文章,请分享: Twitter LinkedIn GitHub Mastodon Hacker News

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计