blob: 12c44fa0e87810ce54b067f6e3b848a4ddcb3a0a [file] [log] [blame]
id: GO-2022-0477
modules:
- module: std
versions:
- fixed: 1.17.11
- introduced: 1.18.0-0
fixed: 1.18.3
vulnerable_at: 1.18.0
packages:
- package: crypto/rand
goos:
- windows
symbols:
- Read
summary: Indefinite hang with large buffers on Windows in crypto/rand
description: |-
On Windows, rand.Read will hang indefinitely if passed a buffer larger than 1 <<
32 - 1 bytes.
published: 2022-06-09T01:43:37Z
credits:
- Davis Goodin
- Quim Muntal of Microsoft
references:
- fix: https://go.dev/cl/402257
- fix: https://go.googlesource.com/go/+/bb1f4416180511231de6d17a1f2f55c82aafc863
- report: https://go.dev/issue/52561
- web: https://groups.google.com/g/golang-announce/c/TzIC9-t8Ytg/m/IWz5T6x7AAAJ
cve_metadata:
id: CVE-2022-30634
cwe: 'CWE-835: Loop with Unreachable Exit Condition (''Infinite Loop'')'
description: |-
Infinite loop in Read in crypto/rand before Go 1.17.11 and Go 1.18.3 on Windows
allows attacker to cause an indefinite hang by passing a buffer larger than 1 <<
32 - 1 bytes.