dfuzz-自动后台程序模糊器

dfuzz的Python项目详细描述


dfuzz-自动后台程序配置模糊器。而不是 作为一个fuzzer本身,dfuzz是其他简单fuzzer的包装器 解决一些常见的缺陷,这使得自动化测试有点困难。

尽管它的主要目标是配置文件,但是 使用dfuzz模糊任何输入文件。

dfuzz解决的主要问题是:
  • fuzzers的alpha版本-大多数fuzzers只是alpha版本,不再开发或维护
  • 通用格式-无需了解如何使用每个底层fuzzer
  • 可定制的监控和自动错误分析
  • 直接指定要测试的内容和要向目标提供的文件
  • 变异与模糊文件生成的结合

要求

  • python >= 2.6
  • fuzzer (zzuf, autodafe, …)
  • gdb, valgrind (both are optional)

功能

  • independent of underlying fuzzer
  • highly configurable
  • built to be extendible
  • automation friendly

支持的模糊器

  • zzuf (mutation)
  • autodafe (generation)
  • plain (debugging purposes)

用法

  • install requirements
  • install dfuzz (for example easy_install dfuzz)
  • create a working directory
  • supply fuzz.conf file (sample follows)
  • according to the modules you want to use, create mut or gen directory in your working directory and supply a file to fuzz or a template to use
  • run dfuzz -d -o name_of_the_working_directory
  • observe output
  • if everything is fine remove the -d and -o options and run the command again
  • check the samples directory created in your working directory
  • use included incident_viewer to browser incidents if there are any

完成文档目录中的文档。

fuzz.conf文件示例

[global]
binary=libvirtd
args=-f FUZZED_FILE --verbose
threads = 1
timeout = 2

generation  = 0
mutation    = 1
combination = 0

[generation]
modules  = dfuzz.gen.autodafe
priority = high

[mutation]
modules = dfuzz.mut.zzuf; dfuzz.mut.plain
priority = high

[combination]
modules = dfuzz.comb.simple
priority = low

在最简单的形式中,dfuzz可以用作 增强检测和报告功能的zzuf包装器 能力。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java无法使用JAXB配置Moxy   java如何让我的简单Swing telnet客户端正确显示字符?   java中从可运行线程调用主线程的多线程处理   java数据源。EBJ3会话bean中的getConnection()   使用java和正则表达式从xml文件提取值时出现问题   java定制Jersy胡须Mvc   在Java中,“限制并发”是什么意思?   java有没有更干净的方法可以在这里使用Optional,而不在三个地方返回“NA”?   java Tomcat启动,然后崩溃,除非我打电话   java理解客户机和服务器   java时间戳将在视图对象>实体转换期间丢失   如何在java中返回布尔值(基元)?   java使用spring mvc设置日志记录,希望仅对我的代码进行跟踪/调试   用Jackson解析嵌套对象