nats-server-config-reloader-0.14.1_linux_amd64
digest | sha256:77dd4c60001ffbf442c6b25592e73b4fca06ea9406c677607192788d80453783 |
vulnerabilities | |
size | 4.4 MB |
packages | 24 |
stdlib |
Affected range | <1.21.11 |
Fixed version | 1.21.11 |
EPSS Score | 0.06% |
EPSS Percentile | 28th percentile |
Description
The various Is methods (IsPrivate, IsLoopback, etc) did not work as expected for IPv4-mapped IPv6 addresses, returning false for addresses which would return true in their traditional IPv4 forms.
Affected range | <1.22.7 |
Fixed version | 1.22.7 |
EPSS Score | 0.04% |
EPSS Percentile | 17th percentile |
Description
Calling Parse on a "// +build" build tag line with deeply nested expressions can cause a panic due to stack exhaustion.
Affected range | <1.22.7 |
Fixed version | 1.22.7 |
EPSS Score | 0.04% |
EPSS Percentile | 17th percentile |
Description
Calling Decoder.Decode on a message which contains deeply nested structures can cause a panic due to stack exhaustion. This is a follow-up to CVE-2022-30635.
Affected range | <1.21.12 |
Fixed version | 1.21.12 |
EPSS Score | 0.04% |
EPSS Percentile | 17th percentile |
Description
The net/http HTTP/1.1 client mishandled the case where a server responds to a request with an "Expect: 100-continue" header with a non-informational (200 or higher) status. This mishandling could leave a client connection in an invalid state, where the next request sent on the connection will fail.
An attacker sending a request to a net/http/httputil.ReverseProxy proxy can exploit this mishandling to cause a denial of service by sending "Expect: 100-continue" requests which elicit a non-informational response from the backend. Each such request leaves the proxy with an invalid connection, and causes one subsequent request using that connection to fail.
Affected range | <1.21.8 |
Fixed version | 1.21.8 |
EPSS Score | 0.04% |
EPSS Percentile | 11th percentile |
Description
The ParseAddressList function incorrectly handles comments (text within parentheses) within display names. Since this is a misalignment with conforming address parsers, it can result in different trust decisions being made by programs using different parsers.
Affected range | <1.21.9 |
Fixed version | 1.21.9 |
EPSS Score | 0.04% |
EPSS Percentile | 14th percentile |
Description
An attacker may cause an HTTP/2 endpoint to read arbitrary amounts of header data by sending an excessive number of CONTINUATION frames.
Maintaining HPACK state requires parsing and processing all HEADERS and CONTINUATION frames on a connection. When a request's headers exceed MaxHeaderBytes, no memory is allocated to store the excess headers, but they are still parsed.
This permits an attacker to cause an HTTP/2 endpoint to read arbitrary amounts of header data, all associated with a request which is going to be rejected. These headers can include Huffman-encoded data which is significantly more expensive for the receiver to decode than for an attacker to send.
The fix sets a limit on the amount of excess header frames we will process before closing a connection.
Affected range | <1.20.11 |
Fixed version | 1.20.11 |
EPSS Score | 0.11% |
EPSS Percentile | 46th percentile |
Description
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.
Affected range | <1.20.10 |
Fixed version | 1.20.10 |
EPSS Score | 83.78% |
EPSS Percentile | 99th percentile |
Description
A malicious HTTP/2 client which rapidly creates requests and immediately resets them can cause excessive server resource consumption. While the total number of requests is bounded by the http2.Server.MaxConcurrentStreams setting, resetting an in-progress request allows the attacker to create a new request while the existing one is still executing.
With the fix applied, HTTP/2 servers now bound the number of simultaneously executing handler goroutines to the stream concurrency limit (MaxConcurrentStreams). New requests arriving when at the limit (which can only happen after the client has reset an existing, in-flight request) will be queued until a handler exits. If the request queue grows too large, the server will terminate the connection.
This issue is also fixed in golang.org/x/net/http2 for users manually configuring HTTP/2.
The default stream concurrency limit is 250 streams (requests) per HTTP/2 connection. This value may be adjusted using the golang.org/x/net/http2 package; see the Server.MaxConcurrentStreams setting and the ConfigureServer function.
Affected range | <1.20.10 |
Fixed version | 1.20.10 |
EPSS Score | 0.42% |
EPSS Percentile | 75th percentile |
Description
A malicious HTTP/2 client which rapidly creates requests and immediately resets them can cause excessive server resource consumption. While the total number of requests is bounded by the http2.Server.MaxConcurrentStreams setting, resetting an in-progress request allows the attacker to create a new request while the existing one is still executing.
With the fix applied, HTTP/2 servers now bound the number of simultaneously executing handler goroutines to the stream concurrency limit (MaxConcurrentStreams). New requests arriving when at the limit (which can only happen after the client has reset an existing, in-flight request) will be queued until a handler exits. If the request queue grows too large, the server will terminate the connection.
This issue is also fixed in golang.org/x/net/http2 for users manually configuring HTTP/2.
The default stream concurrency limit is 250 streams (requests) per HTTP/2 connection. This value may be adjusted using the golang.org/x/net/http2 package; see the Server.MaxConcurrentStreams setting and the ConfigureServer function.
Affected range | <1.22.7 |
Fixed version | 1.22.7 |
EPSS Score | 0.19% |
EPSS Percentile | 57th percentile |
Description
Calling Decoder.Decode on a message which contains deeply nested structures can cause a panic due to stack exhaustion. This is a follow-up to CVE-2022-30635.
Affected range |
|
Fixed version | 1.20.6 |
EPSS Score | 0.14% |
EPSS Percentile | 50th percentile |
Description
The HTTP/1 client does not fully validate the contents of the Host header. A maliciously crafted Host header can inject additional headers or entire requests.
With fix, the HTTP/1 client now refuses to send requests containing an invalid Request.Host or Request.URL.Host value.
Affected range | <1.20.8 |
Fixed version | 1.20.8 |
EPSS Score | 0.11% |
EPSS Percentile | 45th percentile |
Description
The html/template package does not apply the proper rules for handling occurrences of "<script", "<!--", and "</script" within JS literals in </blockquote> </details>
<a href="https://scout.docker.com/v/CVE-2023-39318?s=golang&n=stdlib&t=golang&vr=%3C1.20.8"><img alt="medium : CVE--2023--39318" src="https://img.shields.io/badge/CVE--2023--39318-lightgrey?label=medium%20&labelColor=fbb552"/></a>
Affected range <1.20.8
Fixed version 1.20.8
EPSS Score 0.15%
EPSS Percentile 52nd percentile
Description
The html/template package does not properly handle HTML-like "" comment tokens, nor hashbang "#!" comment tokens, in </blockquote> </details>
<a href="https://scout.docker.com/v/CVE-2024-24789?s=golang&n=stdlib&t=golang&vr=%3C1.21.11"><img alt="medium : CVE--2024--24789" src="https://img.shields.io/badge/CVE--2024--24789-lightgrey?label=medium%20&labelColor=fbb552"/></a>
Affected range <1.21.11
Fixed version 1.21.11
EPSS Score 0.04%
EPSS Percentile 11th percentile
Description
The archive/zip package's handling of certain types of invalid zip files differs from the behavior of most zip implementations. This misalignment could be exploited to create an zip file with contents that vary depending on the implementation reading the file. The archive/zip package now rejects files containing these errors.
Affected range <1.20.11
Fixed version 1.20.11
EPSS Score 0.06%
EPSS Percentile 27th percentile
Description
On Windows, The IsLocal function does not correctly detect reserved device names in some cases.
Reserved names followed by spaces, such as "COM1 ", and reserved names "COM" and "LPT" followed by superscript 1, 2, or 3, are incorrectly reported as local.
With fix, IsLocal now correctly reports these names as non-local.
Affected range <1.20.12
Fixed version 1.20.12
EPSS Score 0.05%
EPSS Percentile 21st percentile
Description
A malicious HTTP sender can use chunk extensions to cause a receiver reading from a request or response body to read many more bytes from the network than are in the body.
A malicious HTTP client can further exploit this to cause a server to automatically read a large amount of data (up to about 1GiB) when a handler fails to read the entire body of a request.
Chunk extensions are a little-used HTTP feature which permit including additional metadata in a request or response body sent using the chunked encoding. The net/http chunked encoding reader discards this metadata. A sender can exploit this by inserting a large metadata segment with each byte transferred. The chunk reader now produces an error if the ratio of real body to encoded bytes grows too small.
Affected range >=1.20.0-0
<1.20.7Fixed version 1.20.7
EPSS Score 0.11%
EPSS Percentile 46th percentile
Description
Extremely large RSA keys in certificate chains can cause a client/server to expend significant CPU time verifying signatures.
With fix, the size of RSA keys transmitted during handshakes is restricted to <= 8192 bits.
Based on a survey of publicly trusted RSA keys, there are currently only three certificates in circulation with keys larger than this, and all three appear to be test certificates that are not actively deployed. It is possible there are larger keys in use in private PKIs, but we target the web PKI, so causing breakage here in the interests of increasing the default safety of users of crypto/tls seems reasonable.
Affected range <1.22.7
Fixed version 1.22.7
EPSS Score 0.04%
EPSS Percentile 17th percentile
Description
Calling any of the Parse functions on Go source code which contains deeply nested literals can cause a panic due to stack exhaustion.
Affected range <1.21.8
Fixed version 1.21.8
EPSS Score 0.04%
EPSS Percentile 11th percentile
Description
If errors returned from MarshalJSON methods contain user controlled data, they may be used to break the contextual auto-escaping behavior of the html/template package, allowing for subsequent actions to inject unexpected content into templates.
Affected range <1.21.8
Fixed version 1.21.8
EPSS Score 0.04%
EPSS Percentile 11th percentile
Description
Verifying a certificate chain which contains a certificate with an unknown public key algorithm will cause Certificate.Verify to panic.
This affects all crypto/tls clients, and servers that set Config.ClientAuth to VerifyClientCertIfGiven or RequireAndVerifyClientCert. The default behavior is for TLS servers to not verify client certificates.
Affected range <1.21.8
Fixed version 1.21.8
EPSS Score 0.04%
EPSS Percentile 11th percentile
Description
When parsing a multipart form (either explicitly with Request.ParseMultipartForm or implicitly with Request.FormValue, Request.PostFormValue, or Request.FormFile), limits on the total size of the parsed form were not applied to the memory consumed while reading a single form line. This permits a maliciously crafted input containing very long lines to cause allocation of arbitrarily large amounts of memory, potentially leading to memory exhaustion.
With fix, the ParseMultipartForm function now correctly limits the maximum size of form lines.
Affected range <1.21.8
Fixed version 1.21.8
EPSS Score 0.04%
EPSS Percentile 11th percentile
Description
When following an HTTP redirect to a domain which is not a subdomain match or exact match of the initial domain, an http.Client does not forward sensitive headers such as "Authorization" or "Cookie". For example, a redirect from foo.com to www.foo.com will forward the Authorization header, but a redirect to bar.com will not.
A maliciously crafted HTTP redirect could cause sensitive headers to be unexpectedly forwarded.
openssl 3.1.4-r2
(apk)
pkg:apk/alpine/openssl@3.1.4-r2?os_name=alpine&os_version=3.19
# Dockerfile (4:31)
FROM alpine:3.19 as deps
ARG GO_APP
ARG GORELEASER_DIST_DIR=/go/src/dist
ARG TARGETOS
ARG TARGETARCH
ARG TARGETVARIANT
RUN mkdir -p /go/bin /go/src ${GORELEASER_DIST_DIR}
COPY --from=build ${GORELEASER_DIST_DIR}/ ${GORELEASER_DIST_DIR}
RUN <<EOT
set -e
apk add --no-cache ca-certificates jq
cd ${GORELEASER_DIST_DIR}/..
if [[ ${TARGETARCH} == "arm" ]]; then VARIANT=$(echo ${TARGETVARIANT} | sed 's/^v//'); fi
BIN_PATH=$(jq -r ".[] |select(.type == \"Binary\" and \
.name == \"${GO_APP}\" and \
.goos == \"${TARGETOS}\" and \
.goarch == \"${TARGETARCH}\" and \
(.goarm == \"${VARIANT}\" or .goarm == null)) | .path" < /go/src/dist/artifacts.json)
cp ${BIN_PATH} /go/bin
EOT
FROM alpine:3.19
Affected range | <3.1.6-r0 |
Fixed version | 3.1.6-r0 |
EPSS Score | 0.04% |
EPSS Percentile | 14th percentile |
Description
Affected range | <3.1.7-r0 |
Fixed version | 3.1.7-r0 |
EPSS Score | 0.04% |
EPSS Percentile | 17th percentile |
Description
Affected range | <3.1.4-r3 |
Fixed version | 3.1.4-r3 |
EPSS Score | 0.06% |
EPSS Percentile | 27th percentile |
Description
Affected range | <3.1.4-r4 |
Fixed version | 3.1.4-r4 |
EPSS Score | 0.04% |
EPSS Percentile | 17th percentile |
Description
Affected range | <3.1.4-r5 |
Fixed version | 3.1.4-r5 |
EPSS Score | 0.23% |
EPSS Percentile | 61st percentile |
Description
Affected range | <3.1.5-r0 |
Fixed version | 3.1.5-r0 |
EPSS Score | 0.04% |
EPSS Percentile | 17th percentile |
Description
Affected range | <3.1.7-r1 |
Fixed version | 3.1.7-r1 |
EPSS Score | 0.04% |
EPSS Percentile | 11th percentile |
Description
Affected range | <3.1.6-r0 |
Fixed version | 3.1.6-r0 |
Description
Affected range | <3.1.4-r6 |
Fixed version | 3.1.4-r6 |
EPSS Score | 0.04% |
EPSS Percentile | 17th percentile |
Description
busybox 1.36.1-r15
(apk)
pkg:apk/alpine/busybox@1.36.1-r15?os_name=alpine&os_version=3.19
# Dockerfile (4:31)
FROM alpine:3.19 as deps
ARG GO_APP
ARG GORELEASER_DIST_DIR=/go/src/dist
ARG TARGETOS
ARG TARGETARCH
ARG TARGETVARIANT
RUN mkdir -p /go/bin /go/src ${GORELEASER_DIST_DIR}
COPY --from=build ${GORELEASER_DIST_DIR}/ ${GORELEASER_DIST_DIR}
RUN <<EOT
set -e
apk add --no-cache ca-certificates jq
cd ${GORELEASER_DIST_DIR}/..
if [[ ${TARGETARCH} == "arm" ]]; then VARIANT=$(echo ${TARGETVARIANT} | sed 's/^v//'); fi
BIN_PATH=$(jq -r ".[] |select(.type == \"Binary\" and \
.name == \"${GO_APP}\" and \
.goos == \"${TARGETOS}\" and \
.goarch == \"${TARGETARCH}\" and \
(.goarm == \"${VARIANT}\" or .goarm == null)) | .path" < /go/src/dist/artifacts.json)
cp ${BIN_PATH} /go/bin
EOT
FROM alpine:3.19
Affected range | <1.36.1-r16 |
Fixed version | 1.36.1-r16 |
EPSS Score | 0.04% |
EPSS Percentile | 14th percentile |
Description
Affected range | <1.36.1-r19 |
Fixed version | 1.36.1-r19 |
EPSS Score | 0.04% |
EPSS Percentile | 14th percentile |
Description
Affected range | <1.36.1-r19 |
Fixed version | 1.36.1-r19 |
EPSS Score | 0.04% |
EPSS Percentile | 14th percentile |
Description
Affected range | <1.36.1-r17 |
Fixed version | 1.36.1-r17 |
EPSS Score | 0.04% |
EPSS Percentile | 14th percentile |