Go version v0.3.3 of the x/text package fixes a vulnerability in encoding/unicode that could lead to the UTF-16 decoder entering an infinite loop, causing the program to crash or run out of memory. An attacker could provide a single byte to a UTF16 decoder instantiated with UseBOM or ExpectBOM to trigger an infinite loop if the String function on the Decoder is called, or the Decoder is passed to golang.org/x/text/transform.String.
golang.org/x/text/encoding/unicode
golang.org/x/text/transform
github.com/golang/go/issues/39491
github.com/golang/text/commit/23ae387dee1f90d29a23c0e87ee0b46038fbed0e
go-review.googlesource.com/c/text/+/238238
go.dev/cl/238238
go.dev/issue/39491
go.googlesource.com/text/+/23ae387dee1f90d29a23c0e87ee0b46038fbed0e
groups.google.com/forum/#!topic/golang-announce/bXVeAmGOqz0
groups.google.com/g/golang-announce/c/bXVeAmGOqz0
lists.fedoraproject.org/archives/list/[email protected]/message/TACQFZDPA7AUR6TRZBCX2RGRFSDYLI7O
nvd.nist.gov/vuln/detail/CVE-2020-14040