主要观点:现有网络模糊测试解决方案在各方面都存在困难,速度慢且难以深入探索目标,为此作者构建了高性能网络模糊测试器来解决这些问题。
关键信息:
- 输入生成方面:开发自己的输入表示和变异器,使用[LibAFL],将协议消息表示为令牌流,实现多层输入表示。
- 消息传递方面:选择[libdesock]进行“去套接字”操作,利用共享内存实现高效的消息传递,通过自定义输入钩子将数据复制到应用程序。
- 结果对比:与[AFLNet]对比,作者的工具在单核心下执行速度约为 1200 exec/s 且可利用多核,覆盖范围增加数百行,还发现了已大量模糊测试代码中的多个漏洞。
重要细节: - 在 FTP 协议的消息交换中,可通过替换命令中的数字、替换命令、插入更多文本等方式进行变异。
- [libdesock]的钩子功能可用于自定义输入通道,通过
Token
的拼接和特定分隔符实现单个消息的传递。 - 作者的模糊测试器实现细节可在Github上查看。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。