CVE-2023-24537 – Infinite loop in parsing in go/scanner
https://notcve.org/view.php?id=CVE-2023-24537
Calling any of the Parse functions on Go source code which contains //line directives with very large line numbers can cause an infinite loop due to integer overflow. A flaw was found in Golang Go, where it is vulnerable to a denial of service caused by an infinite loop due to integer overflow when calling any of the Parse functions. By sending a specially crafted input, a remote attacker can cause a denial of service. • https://go.dev/cl/482078 https://go.dev/issue/59180 https://groups.google.com/g/golang-announce/c/Xdv6JL9ENs8 https://pkg.go.dev/vuln/GO-2023-1702 https://security.gentoo.org/glsa/202311-09 https://access.redhat.com/security/cve/CVE-2023-24537 https://bugzilla.redhat.com/show_bug.cgi?id=2184484 • CWE-190: Integer Overflow or Wraparound CWE-835: Loop with Unreachable Exit Condition ('Infinite Loop') •
CVE-2023-24538 – Backticks not treated as string delimiters in html/template
https://notcve.org/view.php?id=CVE-2023-24538
Templates do not properly consider backticks (`) as Javascript string delimiters, and do not escape them as expected. Backticks are used, since ES6, for JS template literals. If a template contains a Go template action within a Javascript template literal, the contents of the action can be used to terminate the literal, injecting arbitrary Javascript code into the Go template. As ES6 template literals are rather complex, and themselves can do string interpolation, the decision was made to simply disallow Go template actions from being used inside of them (e.g. "var a = {{.}}"), since there is no obviously safe way to allow this behavior. • https://go.dev/cl/482079 https://go.dev/issue/59234 https://groups.google.com/g/golang-announce/c/Xdv6JL9ENs8 https://pkg.go.dev/vuln/GO-2023-1703 https://security.gentoo.org/glsa/202311-09 https://access.redhat.com/security/cve/CVE-2023-24538 https://bugzilla.redhat.com/show_bug.cgi?id=2184481 • CWE-94: Improper Control of Generation of Code ('Code Injection') •
CVE-2023-24534 – Excessive memory allocation in net/http and net/textproto
https://notcve.org/view.php?id=CVE-2023-24534
HTTP and MIME header parsing can allocate large amounts of memory, even when parsing small inputs, potentially leading to a denial of service. Certain unusual patterns of input data can cause the common function used to parse HTTP and MIME headers to allocate substantially more memory than required to hold the parsed headers. An attacker can exploit this behavior to cause an HTTP server to allocate large amounts of memory from a small request, potentially leading to memory exhaustion and a denial of service. With fix, header parsing now correctly allocates only the memory required to hold parsed headers. A flaw was found in Golang Go, where it is vulnerable to a denial of service caused by memory exhaustion in the common function in HTTP and MIME header parsing. • https://go.dev/cl/481994 https://go.dev/issue/58975 https://groups.google.com/g/golang-announce/c/Xdv6JL9ENs8 https://pkg.go.dev/vuln/GO-2023-1704 https://security.gentoo.org/glsa/202311-09 https://security.netapp.com/advisory/ntap-20230526-0007 https://access.redhat.com/security/cve/CVE-2023-24534 https://bugzilla.redhat.com/show_bug.cgi?id=2184483 • CWE-400: Uncontrolled Resource Consumption •
CVE-2023-24536 – Excessive resource consumption in net/http, net/textproto and mime/multipart
https://notcve.org/view.php?id=CVE-2023-24536
Multipart form parsing can consume large amounts of CPU and memory when processing form inputs containing very large numbers of parts. This stems from several causes: 1. mime/multipart.Reader.ReadForm limits the total memory a parsed multipart form can consume. ReadForm can undercount the amount of memory consumed, leading it to accept larger inputs than intended. 2. Limiting total memory does not account for increased pressure on the garbage collector from large numbers of small allocations in forms with many parts. 3. ReadForm can allocate a large number of short-lived buffers, further increasing pressure on the garbage collector. • https://go.dev/cl/482075 https://go.dev/cl/482076 https://go.dev/cl/482077 https://go.dev/issue/59153 https://groups.google.com/g/golang-announce/c/Xdv6JL9ENs8 https://pkg.go.dev/vuln/GO-2023-1705 https://security.gentoo.org/glsa/202311-09 https://security.netapp.com/advisory/ntap-20230526-0007 https://access.redhat.com/security/cve/CVE-2023-24536 https://bugzilla.redhat.com/show_bug.cgi?id=2184482 • CWE-400: Uncontrolled Resource Consumption CWE-770: Allocation of Resources Without Limits or Throttling •
CVE-2023-24532 – Incorrect calculation on P256 curves in crypto/internal/nistec
https://notcve.org/view.php?id=CVE-2023-24532
The ScalarMult and ScalarBaseMult methods of the P256 Curve may return an incorrect result if called with some specific unreduced scalars (a scalar larger than the order of the curve). This does not impact usages of crypto/ecdsa or crypto/ecdh. A flaw was found in the crypto/internal/nistec golang library. The ScalarMult and ScalarBaseMult methods of the P256 Curve may return an incorrect result if called with some specific unreduced scalars, such as a scalar larger than the order of the curve. This does not impact usages of crypto/ecdsa or crypto/ecdh. • https://go.dev/cl/471255 https://go.dev/issue/58647 https://groups.google.com/g/golang-announce/c/3-TpUx48iQY https://pkg.go.dev/vuln/GO-2023-1621 https://access.redhat.com/security/cve/CVE-2023-24532 https://bugzilla.redhat.com/show_bug.cgi?id=2223355 • CWE-682: Incorrect Calculation •