CVE-2023-39320
Published: 8 September 2023
The go.mod toolchain directive, introduced in Go 1.21, can be leveraged to execute scripts and binaries relative to the root of the module when the "go" command was executed within the module. This applies to modules downloaded using the "go" command from the module proxy, as well as modules downloaded directly using VCS software.
Notes
Author | Note |
---|---|
mdeslaur | Packages built using golang need to be rebuilt once the vulnerability has been fixed. This CVE entry does not list packages that need rebuilding outside of the main repository or the Ubuntu variants with PPA overlays. |
sbeattie | affects golang-1.21 only |
Priority
Status
Package | Release | Status |
---|---|---|
golang Launchpad, Ubuntu, Debian |
bionic |
Does not exist
|
focal |
Does not exist
|
|
jammy |
Does not exist
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Not vulnerable
(golang 1.21 only)
|
|
upstream |
Needs triage
|
|
xenial |
Does not exist
|
|
golang-1.10 Launchpad, Ubuntu, Debian |
bionic |
Not vulnerable
(golang 1.21 only)
|
focal |
Does not exist
|
|
jammy |
Does not exist
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Not vulnerable
(golang 1.21 only)
|
|
upstream |
Needs triage
|
|
xenial |
Not vulnerable
(golang 1.21 only)
|
|
golang-1.13 Launchpad, Ubuntu, Debian |
bionic |
Not vulnerable
(golang 1.21 only)
|
focal |
Not vulnerable
(golang 1.21 only)
|
|
jammy |
Not vulnerable
(golang 1.21 only)
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Not vulnerable
(golang 1.21 only)
|
|
golang-1.14 Launchpad, Ubuntu, Debian |
bionic |
Does not exist
|
focal |
Not vulnerable
(golang 1.21 only)
|
|
jammy |
Does not exist
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Does not exist
|
|
golang-1.16 Launchpad, Ubuntu, Debian |
bionic |
Not vulnerable
(golang 1.21 only)
|
focal |
Not vulnerable
(golang 1.21 only)
|
|
jammy |
Does not exist
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Does not exist
|
|
golang-1.17 Launchpad, Ubuntu, Debian |
bionic |
Does not exist
|
focal |
Does not exist
|
|
jammy |
Not vulnerable
(golang 1.21 only)
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Does not exist
|
|
golang-1.18 Launchpad, Ubuntu, Debian |
bionic |
Not vulnerable
(golang 1.21 only)
|
focal |
Not vulnerable
(golang 1.21 only)
|
|
jammy |
Not vulnerable
(golang 1.21 only)
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Not vulnerable
(golang 1.21 only)
|
|
golang-1.19 Launchpad, Ubuntu, Debian |
bionic |
Does not exist
|
focal |
Does not exist
|
|
jammy |
Does not exist
|
|
lunar |
Not vulnerable
(golang 1.21 only)
|
|
mantic |
Does not exist
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Does not exist
|
|
golang-1.20 Launchpad, Ubuntu, Debian |
bionic |
Does not exist
|
focal |
Not vulnerable
(golang 1.21 only)
|
|
jammy |
Not vulnerable
(golang 1.21 only)
|
|
lunar |
Not vulnerable
(golang 1.21 only)
|
|
mantic |
Not vulnerable
(golang 1.21 only)
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Does not exist
|
|
golang-1.21 Launchpad, Ubuntu, Debian |
bionic |
Does not exist
|
focal |
Not vulnerable
(1.21.1-1~ubuntu20.04.1)
|
|
jammy |
Not vulnerable
(1.21.1-1~ubuntu22.04.1)
|
|
lunar |
Not vulnerable
(1.21.1-1~ubuntu23.04.1)
|
|
mantic |
Not vulnerable
(1.21.1-1)
|
|
trusty |
Does not exist
|
|
upstream |
Released
(1.21.1)
|
|
xenial |
Does not exist
|
|
Patches: upstream: https://github.com/golang/go/commit/d25a935574efd573668d8ce9ea4cfc530bb63ecb |
||
golang-1.6 Launchpad, Ubuntu, Debian |
bionic |
Does not exist
|
focal |
Does not exist
|
|
jammy |
Does not exist
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Not vulnerable
(golang 1.21 only)
|
|
upstream |
Needs triage
|
|
xenial |
Not vulnerable
(golang 1.21 only)
|
|
golang-1.8 Launchpad, Ubuntu, Debian |
bionic |
Not vulnerable
(golang 1.21 only)
|
focal |
Does not exist
|
|
jammy |
Does not exist
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Does not exist
|
|
golang-1.9 Launchpad, Ubuntu, Debian |
bionic |
Not vulnerable
(golang 1.21 only)
|
focal |
Does not exist
|
|
jammy |
Does not exist
|
|
lunar |
Does not exist
|
|
mantic |
Does not exist
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Does not exist
|
Severity score breakdown
Parameter | Value |
---|---|
Base score | 9.8 |
Attack vector | Network |
Attack complexity | Low |
Privileges required | None |
User interaction | None |
Scope | Unchanged |
Confidentiality | High |
Integrity impact | High |
Availability impact | High |
Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
References
- https://go.dev/issue/62198
- https://github.com/golang/go/commit/d25a935574efd573668d8ce9ea4cfc530bb63ecb (go1.21.1)
- https://groups.google.com/g/golang-announce/c/Fm51GRLNRvM
- https://groups.google.com/g/golang-dev/c/2C5vbR-UNkI/m/L1hdrPhfBAAJ
- https://go.dev/cl/526158
- https://pkg.go.dev/vuln/GO-2023-2042
- https://www.cve.org/CVERecord?id=CVE-2023-39320
- NVD
- Launchpad
- Debian