_content/security/fuzz: moved from _content/doc/fuzz
Move all fuzzing content to the /security namespace. Redirect /doc/fuzz to /security/fuzz. Change-Id: I26d9e8b2eef5f37e3f31710d3b03673ef9e444db Reviewed-on: https://go-review.googlesource.com/c/website/+/427880 Reviewed-by: Jonathan Amsterdam <jba@google.com> Reviewed-by: Julie Qiu <julieqiu@google.com> Reviewed-by: Tatiana Bradley <tatiana@golang.org>
This commit is contained in:
Родитель
1358680b36
Коммит
4929235449
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
redirect: /security/fuzz
|
||||
---
|
|
@ -288,7 +288,7 @@ Do not send CLs removing the interior tags from such phrases.
|
|||
</p>
|
||||
|
||||
<p>
|
||||
See the <a href="https://go.dev/doc/fuzz">fuzzing landing page</a> to get
|
||||
See the <a href="https://go.dev/security/fuzz">fuzzing landing page</a> to get
|
||||
started.
|
||||
</p>
|
||||
|
||||
|
|
|
@ -120,7 +120,7 @@ A document that describes how Go manages memory, and how to make the most of it.
|
|||
When your code uses external packages, those packages (distributed as modules) become dependencies.
|
||||
</p>
|
||||
|
||||
<h3 id="fuzzing"><a href="/doc/fuzz">Fuzzing</a></h3>
|
||||
<h3 id="fuzzing"><a href="/security/fuzz">Fuzzing</a></h3>
|
||||
<p>
|
||||
Main documentation page for Go fuzzing.
|
||||
</p>
|
||||
|
|
|
@ -12,7 +12,7 @@ In this tutorial, you'll write a fuzz test for a simple function, run the go
|
|||
command, and debug and fix issues in the code.
|
||||
|
||||
For help with terminology throughout this tutorial, see the [Go Fuzzing
|
||||
glossary](/doc/fuzz/#glossary).
|
||||
glossary](/security/fuzz/#glossary).
|
||||
|
||||
You'll progress through the following sections:
|
||||
|
||||
|
@ -26,7 +26,7 @@ You'll progress through the following sections:
|
|||
**Note:** For other tutorials, see [Tutorials](/doc/tutorial/index.html).
|
||||
|
||||
**Note:** Go fuzzing currently supports a subset of built-in types, listed in
|
||||
the [Go Fuzzing docs](/doc/fuzz/#requirements), with support for more built-in
|
||||
the [Go Fuzzing docs](/security/fuzz/#requirements), with support for more built-in
|
||||
types to be added in the future.
|
||||
|
||||
## Prerequisites
|
||||
|
@ -700,7 +700,7 @@ UTF-8.
|
|||
Fuzzing passed!
|
||||
|
||||
In addition to the `-fuzz` flag, several new flags have been added to `go
|
||||
test` and can be viewed in the [documentation](/doc/fuzz/#custom-settings).
|
||||
test` and can be viewed in the [documentation](/security/fuzz/#custom-settings).
|
||||
|
||||
## Conclusion {#conclusion}
|
||||
|
||||
|
@ -717,7 +717,7 @@ For discussion and general feedback about the feature, you can also participate
|
|||
in the [#fuzzing channel](https://gophers.slack.com/archives/CH5KV1AKE) in
|
||||
Gophers Slack.
|
||||
|
||||
Check out the documentation at [go.dev/doc/fuzz](/doc/fuzz/#requirements) for
|
||||
Check out the documentation at [go.dev/security/fuzz](/security/fuzz/#requirements) for
|
||||
further reading.
|
||||
|
||||
## Completed code
|
||||
|
|
До Ширина: | Высота: | Размер: 52 KiB После Ширина: | Высота: | Размер: 52 KiB |
|
@ -1,15 +1,7 @@
|
|||
<!--{
|
||||
"Title": "Go Fuzzing"
|
||||
}-->
|
||||
|
||||
<!-- Potential pages:
|
||||
- What fuzzing is and is not good for
|
||||
- Common gotchas / Strategies for inefficient fuzzing executions
|
||||
- Commands
|
||||
- go clean -fuzzcache
|
||||
- Technical discussion around how the coordinator/worker work (this may make
|
||||
more sense as a blog post?)
|
||||
-->
|
||||
---
|
||||
title: Go Fuzzing
|
||||
layout: article
|
||||
---
|
||||
|
||||
Go supports fuzzing in its standard toolchain beginning in Go 1.18. Native Go fuzz tests are
|
||||
[supported by OSS-Fuzz](https://google.github.io/oss-fuzz/getting-started/new-project-guide/go-lang/#native-go-fuzzing-support).
|
||||
|
@ -31,7 +23,7 @@ components.
|
|||
<img alt="Example code showing the overall fuzz test, with a fuzz target within
|
||||
it. Before the fuzz target is a corpus addition with f.Add, and the parameters
|
||||
of the fuzz target are highlighted as the fuzzing arguments."
|
||||
src="/doc/fuzz/example.png" style="display: block; width: 600px; height:
|
||||
src="/security/fuzz/example.png" style="display: block; width: 600px; height:
|
||||
auto;"/>
|
||||
|
||||
## Writing fuzz tests
|
До Ширина: | Высота: | Размер: 42 KiB После Ширина: | Высота: | Размер: 42 KiB |
|
@ -16,7 +16,7 @@ If the worker process executes a mutated input which causes an increase in cover
|
|||
|
||||
If a non-recoverable error occurs while fuzzing which causes the worker process to shut down (e.g. infinite loop, os.Exit, memory exhaustion, etc), minimization will not be attempted, and the failing input will be written to the testdata directory and reported.
|
||||
|
||||
<img alt="Sequence diagram of the interaction between coordinator and worker, as described above." src="/doc/fuzz/seq-diagram.png"/>
|
||||
<img alt="Sequence diagram of the interaction between coordinator and worker, as described above." src="/security/fuzz/seq-diagram.png"/>
|
||||
|
||||
### Cross-process communication
|
||||
|
||||
|
@ -80,4 +80,4 @@ In order to prevent the corpus from ballooning (which bogs down the fuzzer both
|
|||
1. Attempt to cut an exponentially smaller chunk of bytes off the end of the input
|
||||
2. Attempt to remove each individual byte
|
||||
3. Attempt to remove each possible subset of bytes
|
||||
4. Attempt to replace each non-human readable byte with a human readable byte (i.e. something in the ASCII set of bytes)
|
||||
4. Attempt to replace each non-human readable byte with a human readable byte (i.e. something in the ASCII set of bytes)
|
|
@ -2,7 +2,7 @@
|
|||
title: Go Security
|
||||
layout: article
|
||||
---
|
||||
|
||||
|
||||
## Overview
|
||||
|
||||
This page provides information on writing secure and reliable software in Go.
|
||||
|
@ -24,7 +24,7 @@ the two most recent major releases of Go.
|
|||
The main documentation page for the Go vulnerability management system,
|
||||
which helps developers find and fix vulnerabilities in their Go projects.
|
||||
|
||||
## [Go Fuzzing](/doc/fuzz)
|
||||
## [Go Fuzzing](/security/fuzz)
|
||||
|
||||
The main documentation page for Go native fuzzing.
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче