看世界级区块链安全团队如何寻找公链漏洞

在昨天结束的第 23 期 Crypto Wednesday 上,我们邀请了帅气的 PeckShield 漏洞研究总监罗元琮老师,带大家一起来了解公链存在着什么样的安全问题。罗老师全程高能的用代码带大家寻访各家公链的漏洞,告诉我们发现漏洞之后该如何和这些公链打交道。现场的小伙伴们对于罗老师漏洞研究的工作非常好奇,如果你也是,那快来打开视频吧!

视频回顾

罗老师主要和我们分享了以下三个内容:

  1. 公链是区块链生态系安全的首位
  2. 以太坊公链被发现了什么问题
  3. EOS 公链被发现了什么问题

之后,罗老师也针对公链的的安全,给出了以下结论:

  1. 底层的基础设施才是区块链生态系统中的重中之重,就像日常生活中的水和电一样;
  2. 区块链的漏洞可能存在于任何层面的生态系统中;
  3. 如果要及时发现漏洞,就需要借助技术社群的力量,他们非常重要

最后,现场的小伙伴们针对罗老师研究漏洞安全的工作,提出了很多的疑问:

A 同学提问:罗老师的团队是怎么分工来看公链的漏洞的?

罗老师:其实部门看公链的就我一个人,所以要么就是我看到 100% 的漏洞问题,要么就完全不看。

另外,现场 E 同学也好奇,像以太坊有好几千行代码,罗老师是怎么有效率地寻找 bug 的?

罗老师:我曾经看过 Lunix kernel,里面有几千万行代码,所以几千行不算什么,只要有兴趣就能坚持。

也有同学好奇看代码安全如何做到盈利?

罗老师说:这其实是老板要考虑的问题。当然,其实有很多种盈利的方法,例如透过找到漏洞后,联络该公司等等。

而 Daniel 同学也好奇,做安全的人怎么独立去看一个需要很多程序员才能完成的公链项目?

罗老师说:一个好的研究人员在看代码时一定要很全面,需要知道所有的细节,例如共识协议,如何生产随机数等等。我们需要对项目有足够的了解,知道这个项目的目的,才能更好的了解逻辑上可能存在的问题。

现场 H 同学也好奇,要发现漏洞只能逐字逐句去看吗? 有没有捷径或者自动化的工具可以辅助?

公链非常复杂,有时候看不懂的地方甚至还需要问项目方的 Modular 为什么这样写,并不是有模块看了就知道,因为每个项目都有不一样的细节,所以很难找到捷径。

帅气的罗老师

罗老师全程高能的用代码解析漏洞

现场与小伙伴的精彩问答

会后大家还不愿散去,持续的在交流

关于 Nervos

Nervos Network 由 Nervos 基金会推动,通过分层设计,兼顾性能、安全以及去中心化的特性,满足多样化的商业场景需求,为未来加密经济提供基础设施。

关于 CKB

Nervos Common Knowledge Base(CKB)是一个无需许可链,它是 Nervos Network 的基础层,并在设计上提出了一些理念:

  • CKB 共识协议 NC-MAX 使用两阶段提交节约带宽,并根据网络情况调整自身参数,提升了 Nakamoto Consensus 的可扩展性
  • CKB 虚拟机采用底层 CPU 指令集架构 RISC-V 开发,提供更高的开发弹性与运行的稳定性
  • CKB Cell Model 是比特币 UTXO 模型的通用化,能够验证和存储任何类型的数据
  • CKB 经济模型用货币政策限制状态存储的增长,并实现智能合约平台的价值存储功能