Directory Traversal Affecting go1.21-openssl-doc package, versions <1.21.4.1-150000.1.5.1


Severity

Recommended
0.0
medium
0
10

Based on SUSE Linux Enterprise Server security rating.

Threat Intelligence

EPSS
0.21% (59th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Directory Traversal vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-SLES155-GO121OPENSSLDOC-6067703
  • published17 Nov 2023
  • disclosed16 Nov 2023

Introduced: 16 Nov 2023

CVE-2023-45283  (opens in a new tab)
CWE-22  (opens in a new tab)

How to fix?

Upgrade SLES:15.5 go1.21-openssl-doc to version 1.21.4.1-150000.1.5.1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream go1.21-openssl-doc package and not the go1.21-openssl-doc package as distributed by SLES. See How to fix? for SLES:15.5 relevant fixed versions and status.

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.

CVSS Scores

version 3.1