脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Golang - Go Fuzzing 进入 Beta 测试阶段

Go Fuzzing 进入 Beta 测试阶段

2021-06-08 23:45开源中国局长 Golang

Go 团队宣布原生的 fuzzing(模糊测试)功能已准备好在其开发分支 dev.fuzz 上进行 Beta 测试。

Go Fuzzing 进入 Beta 测试阶段

Go 团队宣布原生的 fuzzing(模糊测试)功能已准备好在其开发分支 dev.fuzz 上进行 Beta 测试。

Go Fuzzing 进入 Beta 测试阶段

Fuzzing 属于自动化测试,它通过持续控制程序的输入来暴露诸如 panic 或 bug 之类的错误。这些半随机的数据突变可以发现现有单元测试可能遗漏的新代码覆盖范围,以及很难被注意到的边缘案例的错误。由于模糊测试可以触达这些边缘案例,所以模糊测试对于发现安全漏洞和缺陷特别有价值。

下面是提案 Draft Design 的部分内容:

  • 支持使用-race和-msan进行模糊测试
  • 支持使用-keepfuzzing进行模糊测试
  • 对由不同 mutator 引起的类似崩溃进行重复数据删除,这将是实现-keepfuzzing(降低噪音)的先决条件
  • 在模糊处理时允许特殊选项(例如最大输入大小)
  • 支持字典
  • 模糊测试时可自定义覆盖范围检测(例如,仅检测某些软件包或文件)
  • 为 mutator 定制生成器
  • 支持结构化和非基本类型的结构化
  • [1.17的扩展目标]对除[]byte(例如字符串,int,float64)之外的其他原始类型的结构化支持
  • 更多细节查看 https://golang.org/s/draft-fuzzing-design
  • 运行以下命令即可使用 go fuzzing
  1. $ go get golang.org/dl/gotip 
  2. $ gotip download dev.fuzz 

请注意,Go 团队表示 Go fuzzing 会消耗大量内存,并且可能会影响机器运行时的性能,因此他们建议使用参数-parallel来减少进行模糊测试进行时使用的进程数。

最后,Go 1.17 不会引入 Go fuzzing,但有计划在未来的版本中提供。

本文地址:https://www.oschina.net/news/145093/go-fuzz-beta

延伸 · 阅读

精彩推荐
  • Golanggo日志系统logrus显示文件和行号的操作

    go日志系统logrus显示文件和行号的操作

    这篇文章主要介绍了go日志系统logrus显示文件和行号的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    SmallQinYan12302021-02-02
  • Golanggolang如何使用struct的tag属性的详细介绍

    golang如何使用struct的tag属性的详细介绍

    这篇文章主要介绍了golang如何使用struct的tag属性的详细介绍,从例子说起,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看...

    Go语言中文网11352020-05-21
  • Golanggolang json.Marshal 特殊html字符被转义的解决方法

    golang json.Marshal 特殊html字符被转义的解决方法

    今天小编就为大家分享一篇golang json.Marshal 特殊html字符被转义的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 ...

    李浩的life12792020-05-27
  • Golanggo语言制作端口扫描器

    go语言制作端口扫描器

    本文给大家分享的是使用go语言编写的TCP端口扫描器,可以选择IP范围,扫描的端口,以及多线程,有需要的小伙伴可以参考下。 ...

    脚本之家3642020-04-25
  • GolangGolang通脉之数据类型详情

    Golang通脉之数据类型详情

    这篇文章主要介绍了Golang通脉之数据类型,在编程语言中标识符就是定义的具有某种意义的词,比如变量名、常量名、函数名等等,Go语言中标识符允许由...

    4272021-11-24
  • Golanggolang 通过ssh代理连接mysql的操作

    golang 通过ssh代理连接mysql的操作

    这篇文章主要介绍了golang 通过ssh代理连接mysql的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    a165861639710342021-03-08
  • GolangGolang中Bit数组的实现方式

    Golang中Bit数组的实现方式

    这篇文章主要介绍了Golang中Bit数组的实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    天易独尊11682021-06-09
  • Golanggolang的httpserver优雅重启方法详解

    golang的httpserver优雅重启方法详解

    这篇文章主要给大家介绍了关于golang的httpserver优雅重启的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,...

    helight2992020-05-14