模糊测试XML解析器

p45*_*53d 8 xml xsd fuzzing

我想对一个XML解析器进行模糊测试,并想知道是否有一些合适的模糊器.
不仅可以生成随机垃圾,还可以利用现有的架构规范(如XSD或DTD).

Vin*_*lds 7

在几个月前的搜索过程中,我偶然发现了一些XML模糊器:

  • 不整洁.这似乎没有在2007年的最后一次更新中进行积极开发.(Sourceforge上的项目不再可用,后代请参阅 archive.org了解部分内容,以及下载的 packetstorm.它已添加到Peach-1.0,但是不再出现在Peach-3.1 Community Edition源中.
  • Fuzzware.似乎对基于XSD的模糊测试提供了不错的支持.
  • 桃子.Peach模糊器项目将帮助您生成有效的XML文件,但如果您想使用解析器模糊解析器而不是应用程序,则可能没有多大帮助.这当然值得一试,但要预先警告,如果您不了解XML中的各种结构,那么创建数据模型可能是一个繁琐的过程.相关项目HotFuzz在这里也值得一提.
  • JBroFuzz.这是非常积极的发展.我找不到任何描述它的XML(和SOAP)模糊测试功能的教程.您可能会因为它可以单独用作模糊库来帮助您.
  • Codenomicon Defensics for XML.这是一个商业模糊器.免责声明:我过去曾对Defensics进行过评估,并发现它适用于各种用途.单独的XML解析器可以使用各种技术进行模糊测试 - 您可以提供由模糊器生成的文件,或发出HTTP请求等.请记住,如果您需要模糊应用程序而不是解析器,则必须使用不同的方法; Defensics将帮助您在模糊输入中选择所需的各类输入,以便您可以定位解析器或应用程序或两者.