You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Consider all "affected" blocks instead of just the first one.
- More cleverly account for vendor/product/package data. For example,
ignore it if it is "n/a", or if it is merely a suffix of the module path
we already have.
- Attempt to populate version data.
Skip the test that checks if v4 and v5 are handled equivalently, as
we are now taking into account data that is only available in v5.
Change-Id: Ibf46c2ad77bad6d72b50ed21b136e5ee014a99f8
Reviewed-on: https://go-review.googlesource.com/c/vulndb/+/548057
Reviewed-by: Sarawut Wansee <[email protected]>
Reviewed-by: Damien Neil <[email protected]>
LUCI-TryBot-Result: Go LUCI <[email protected]>
Copy file name to clipboardExpand all lines: internal/report/testdata/cve/TestCVE5ToReport/CVE-2020-9283.txtar
+1-1
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ id: PLACEHOLDER-ID
9
9
modules:
10
10
- module: golang.org/x/crypto
11
11
packages:
12
-
- package: n/a
12
+
- package: golang.org/x/crypto
13
13
description: |
14
14
golang.org/x/crypto before v0.0.0-20200220183623-bac4c82f6975 for Go allows a panic during signature verification in the golang.org/x/crypto/ssh package. A client can attack an SSH server that accepts public keys. Also, a server can attack any SSH client.
go-cvss is a Go module to manipulate Common Vulnerability Scoring System (CVSS). In affected versions when a full CVSS v2.0 vector string is parsed using `ParseVector`, an Out-of-Bounds Read is possible due to a lack of tests. The Go module will then panic. The problem is patched in tag `v0.4.0`, by the commit `d9d478ff0c13b8b09ace030db9262f3c2fe031f4`. Users are advised to upgrade. Users unable to upgrade may avoid this issue by parsing only CVSS v2.0 vector strings that do not have all attributes defined (e.g. `AV:N/AC:L/Au:N/C:P/I:P/A:C/E:U/RL:OF/RC:C/CDP:MH/TD:H/CR:M/IR:M/AR:M`). As stated in [SECURITY.md](https://github.com/pandatix/go-cvss/blob/master/SECURITY.md), the CPE v2.3 to refer to this Go module is `cpe:2.3:a:pandatix:go_cvss:*:*:*:*:*:*:*:*`. The entry has already been requested to the NVD CPE dictionary.
Copy file name to clipboardExpand all lines: internal/report/testdata/cve/TestCVE5ToReport/CVE-2023-29407.txtar
+6
Original file line number
Diff line number
Diff line change
@@ -8,8 +8,14 @@ Expected output of TestCVE5ToReport/CVE-2023-29407.
8
8
id: PLACEHOLDER-ID
9
9
modules:
10
10
- module: golang.org/x/image
11
+
versions:
12
+
- fixed: 0.10.0
11
13
packages:
12
14
- package: golang.org/x/image/tiff
15
+
symbols:
16
+
- newDecoder
17
+
- Decode
18
+
- DecodeConfig
13
19
summary: Excessive CPU consumption when decoding 0-height images in golang.org/x/image/tiff
14
20
description: |
15
21
A maliciously-crafted image can cause excessive CPU consumption in decoding. A tiled image with a height of 0 and a very large width can cause excessive CPU consumption, despite the image size (width * height) appearing to be zero.
Copy file name to clipboardExpand all lines: internal/report/testdata/cve/TestCVE5ToReport/CVE-2023-44378.txtar
+4-1
Original file line number
Diff line number
Diff line change
@@ -8,8 +8,11 @@ Expected output of TestCVE5ToReport/CVE-2023-44378.
8
8
id: PLACEHOLDER-ID
9
9
modules:
10
10
- module: github.com/Consensys/gnark
11
+
unsupported_versions:
12
+
- version: affected at < 0.9.0
13
+
type: cve_version_range
11
14
packages:
12
-
- package: gnark
15
+
- package: github.com/Consensys/gnark
13
16
summary: gnark vulnerable to unsoundness in variable comparison/non-unique binary decomposition
14
17
description: |
15
18
gnark is a zk-SNARK library that offers a high-level API to design circuits. Prior to version 0.9.0, for some in-circuit values, it is possible to construct two valid decomposition to bits. In addition to the canonical decomposition of `a`, for small values there exists a second decomposition for `a+r` (where `r` is the modulus the values are being reduced by). The second decomposition was possible due to overflowing the field where the values are defined. Upgrading to version 0.9.0 should fix the issue without needing to change the calls to value comparison methods.
Copy file name to clipboardExpand all lines: internal/report/testdata/cve/TestCVE5ToReport/CVE-2023-45141.txtar
+4-1
Original file line number
Diff line number
Diff line change
@@ -8,8 +8,11 @@ Expected output of TestCVE5ToReport/CVE-2023-45141.
8
8
id: PLACEHOLDER-ID
9
9
modules:
10
10
- module: github.com/gofiber/fiber
11
+
unsupported_versions:
12
+
- version: affected at < 2.50.0
13
+
type: cve_version_range
11
14
packages:
12
-
- package: fiber
15
+
- package: github.com/gofiber/fiber
13
16
summary: CSRF Token Validation Vulnerability in fiber
14
17
description: |
15
18
Fiber is an express inspired web framework written in Go. A Cross-Site Request Forgery (CSRF) vulnerability has been identified in the application, which allows an attacker to obtain tokens and forge malicious requests on behalf of a user. This can lead to unauthorized actions being taken on the user's behalf, potentially compromising the security and integrity of the application. The vulnerability is caused by improper validation and enforcement of CSRF tokens within the application. This vulnerability has been addressed in version 2.50.0 and users are advised to upgrade. Users should take additional security measures like captchas or Two-Factor Authentication (2FA) and set Session cookies with SameSite=Lax or SameSite=Secure, and the Secure and HttpOnly attributes.
Copy file name to clipboardExpand all lines: internal/report/testdata/cve/TestCVE5ToReport/CVE-2023-45283.txtar
+59
Original file line number
Diff line number
Diff line change
@@ -8,8 +8,67 @@ Expected output of TestCVE5ToReport/CVE-2023-45283.
8
8
id: PLACEHOLDER-ID
9
9
modules:
10
10
- module: std
11
+
versions:
12
+
- fixed: 1.20.11
13
+
- introduced: 1.21.0-0
14
+
fixed: 1.21.4
11
15
packages:
12
16
- package: path/filepath
17
+
goos:
18
+
- windows
19
+
symbols:
20
+
- Clean
21
+
- volumeNameLen
22
+
- join
23
+
- Abs
24
+
- Base
25
+
- Dir
26
+
- EvalSymlinks
27
+
- Glob
28
+
- IsLocal
29
+
- Join
30
+
- Rel
31
+
- Split
32
+
- VolumeName
33
+
- Walk
34
+
- WalkDir
35
+
- module: std
36
+
versions:
37
+
- fixed: 1.20.11
38
+
- introduced: 1.21.0-0
39
+
fixed: 1.21.4
40
+
packages:
41
+
- package: internal/safefilepath
42
+
goos:
43
+
- windows
44
+
symbols:
45
+
- fromFS
46
+
- FromFS
47
+
- module: std
48
+
versions:
49
+
- introduced: 1.20.11
50
+
fixed: 1.20.12
51
+
- introduced: 1.21.4
52
+
fixed: 1.21.5
53
+
packages:
54
+
- package: path/filepath
55
+
goos:
56
+
- windows
57
+
symbols:
58
+
- volumeNameLen
59
+
- Abs
60
+
- Base
61
+
- Clean
62
+
- Dir
63
+
- EvalSymlinks
64
+
- Glob
65
+
- IsLocal
66
+
- Join
67
+
- Rel
68
+
- Split
69
+
- VolumeName
70
+
- Walk
71
+
- WalkDir
13
72
summary: Insecure parsing of Windows paths with a \??\ prefix in path/filepath
14
73
description: |
15
74
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.
summary: HTTP request body disclosure in github.com/go-resty/resty/v2
14
29
description: |
15
30
A race condition in go-resty can result in HTTP request body disclosure across requests. This condition can be triggered by calling sync.Pool.Put with the same *bytes.Buffer more than once, when request retries are enabled and a retry occurs. The call to sync.Pool.Get will then return a bytes.Buffer that hasn't had bytes.Buffer.Reset called on it. This dirty buffer will contain the HTTP request body from an unrelated request, and go-resty will append the current HTTP request body to it, sending two bodies in one request. The sync.Pool in question is defined at package level scope, so a completely unrelated server could receive the request body.
0 commit comments