| Hello gophers, |
| |
| We have just released Go versions 1.18.1 and 1.17.9, minor point releases. |
| |
| These minor releases include 3 security fixes following the security policy <https://go.dev/security>: |
| |
| - encoding/pem: fix stack overflow in Decode |
| |
| A large (more than 5 MB) PEM input can cause a stack overflow in Decode, leading the program to crash. |
| |
| Thanks to Juho Nurminen of Mattermost who reported the error. |
| |
| This is CVE-2022-24675 and https://go.dev/issue/51853. |
| |
| - crypto/elliptic: tolerate all oversized scalars in generic P-256 |
| |
| A crafted scalar input longer than 32 bytes can cause P256().ScalarMult or P256().ScalarBaseMult to panic. Indirect uses through crypto/ecdsa and crypto/tls are unaffected. amd64, arm64, ppc64le, and s390x are unaffected. |
| |
| This was discovered thanks to a Project Wycheproof test vector. |
| |
| This is CVE-2022-28327 and https://go.dev/issue/52075. |
| |
| - crypto/x509: non-compliant certificates can cause a panic in Verify on macOS in Go 1.18 |
| |
| Verifying certificate chains containing certificates which are not compliant with RFC 5280 causes Certificate.Verify to panic on macOS. |
| |
| These chains can be delivered through TLS and can cause a crypto/tls or net/http client to crash. |
| |
| Thanks to Tailscale for doing weird things and finding this. |
| |
| This is CVE-2022-27536 and https://go.dev/issue/51759. |
| |
| View the release notes for more information: |
| https://go.dev/doc/devel/release#go1.18.1 |
| |
| You can download binary and source distributions from the Go website: |
| https://go.dev/dl/ |
| |
| To compile from source using a Git clone, update to the release with |
| git checkout go1.18.1 and build as usual. |
| |
| Thanks to everyone who contributed to the releases. |
| |
| Cheers, |
| The Go team |