Your submission was sent successfully! Close

You have successfully unsubscribed! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates about Ubuntu and upcoming events where you can meet our team.Close

CVE-2023-45283

Published: 9 November 2023

The filepath package does not recognize paths with a \??\ prefix as special. On Windows, a path beginning with \??\ is a Root Local Device path equivalent to a path beginning with \\?\. Paths with a \??\ prefix may be used to access arbitrary locations on the system. For example, the path \??\c:\x is equivalent to the more common path c:\x. Before fix, Clean could convert a rooted path such as \a\..\??\b into the root local device path \??\b. Clean will now convert this to .\??\b. Similarly, Join(\, ??, b) could convert a seemingly innocent sequence of path elements into the root local device path \??\b. Join will now convert this to \.\??\b. In addition, with fix, IsAbs now correctly reports paths beginning with \??\ as absolute, and VolumeName correctly reports the \??\ prefix as a volume name. UPDATE: Go 1.20.11 and Go 1.21.4 inadvertently changed the definition of the volume name in Windows paths starting with \?, resulting in filepath.Clean(\?\c:) returning \?\c: rather than \?\c:\ (among other effects). The previous behavior has been restored.

Notes

AuthorNote
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.
rodrigo-zaiden
may impact only Windows paths, a better triage
of real impact, if any, is appreciated.
closed related to CVE-2023-45284

Priority

Medium

Cvss 3 Severity Score

7.5

Score breakdown

Status

Package Release Status
golang
Launchpad, Ubuntu, Debian
bionic Ignored
(end of standard support)
focal Does not exist

jammy Does not exist

lunar Does not exist

mantic Does not exist

trusty Ignored
(end of standard support)
upstream Needs triage

xenial Ignored
(end of standard support)
golang-1.10
Launchpad, Ubuntu, Debian
bionic Needs triage

focal Does not exist

jammy Does not exist

lunar Does not exist

mantic Does not exist

trusty Needs triage

upstream Needs triage

xenial Needs triage

golang-1.13
Launchpad, Ubuntu, Debian
bionic Needs triage

focal Needs triage

jammy Needs triage

lunar Does not exist

mantic Does not exist

trusty Does not exist

upstream Needs triage

xenial Needs triage

golang-1.14
Launchpad, Ubuntu, Debian
bionic Does not exist

focal Needs triage

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 Needs triage

focal Needs triage

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 Needs triage

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 Needs triage

focal Needs triage

jammy Needs triage

lunar Does not exist

mantic Does not exist

trusty Does not exist

upstream Needs triage

xenial Needs triage

golang-1.19
Launchpad, Ubuntu, Debian
bionic Does not exist

focal Does not exist

jammy Does not exist

lunar Ignored
(end of life, was needs-triage)
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
(windows only)
jammy Not vulnerable
(windows only)
lunar Not vulnerable
(windows only)
mantic Not vulnerable
(windows 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
(windows only)
jammy Not vulnerable
(windows only)
lunar Not vulnerable
(windows only)
mantic Not vulnerable
(windows only)
trusty Does not exist

upstream Needs triage

xenial Does not exist

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 Ignored
(end of standard support)
upstream Needs triage

xenial Needs triage

golang-1.8
Launchpad, Ubuntu, Debian
bionic Needs triage

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 Needs triage

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 7.5
Attack vector Network
Attack complexity Low
Privileges required None
User interaction None
Scope Unchanged
Confidentiality High
Integrity impact None
Availability impact None
Vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N