_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:
Julie Qiu 2022-09-05 20:18:18 -04:00 коммит произвёл Julie Qiu
Родитель 1358680b36
Коммит 4929235449
9 изменённых файлов: 18 добавлений и 23 удалений

3
_content/doc/fuzz.md Normal file
Просмотреть файл

@ -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.