你应该使用哪个模糊测试器?

文章作者创建了一个流程图,用于指导读者选择合适的模糊测试工具。作者推荐针对有状态模糊测试,默认使用Echidna和Medusa;针对无状态模糊测试,选择Foundry。同时还讨论了Slither在模糊测试中的作用,以及ffi和链上模糊测试的工具选择。

你应该使用哪个模糊测试器?人们经常问我这个问题,为了用于他们的代码库,我创建了一个方便的流程图来回答这个问题!以下是我的建议背后的原因:

有状态模糊测试:默认情况下使用 Echidna 和 Medusa。它们是最可靠的,并且具有不同的启发式方法,这意味着一个可能会发现另一个遗漏的问题。

无状态模糊测试:Foundry 是最好的选择,因为它具有强大的支持和无缝集成到 Foundry 测试套件中。

Slither 是 OP:Echidna 在很大程度上依赖 Slither 来生成值。没有它,就像使用装了空弹匣的机关枪一样。另一方面,Medusa 被设计为独立于 Slither 工作,但现在支持它来生成值。

ffi 破坏覆盖率:当在其他语言中使用 ffi 时,模糊测试器在覆盖率引导的模糊测试中会遇到困难。在这些情况下,优先考虑 Medusa 和 Foundry 的速度更为有效。

链上模糊测试:目前还不完全推荐 Medusa,因为它仍处于实验阶段,但这可能很快会改变!

这些建议是当前的,但可能会在不久的将来随着新的更新而改变。例如,Medusa 刚刚达到了 v1.0.0 的里程碑。

请告诉我你是否同意或不同意!

PS:没有介绍其他模糊测试器,如 ItyFuzz 和 Wake,因为我还没有亲自尝试过它们,无法给出明确的意见。

Image

  • 原文链接: x.com/0xScourgedev/statu...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
0xScourgedev
0xScourgedev
江湖只有他的大名,没有他的介绍。