vulnerability

Oracle Linux: CVE-2022-21698: ELSA-2022-7529: container-tools:3.0 security update (MODERATE) (Multiple Advisories)

Severity
8
CVSS
(AV:N/AC:L/Au:N/C:N/I:N/A:C)
Published
2022-02-15
Added
2022-05-18
Modified
2025-01-07

Description

client_golang is the instrumentation library for Go applications in Prometheus, and the promhttp package in client_golang provides tooling around HTTP servers and clients. In client_golang prior to version 1.11.1, HTTP server is susceptible to a Denial of Service through unbounded cardinality, and potential memory exhaustion, when handling requests with non-standard HTTP methods. In order to be affected, an instrumented software must use any of `promhttp.InstrumentHandler*` middleware except `RequestsInFlight`; not filter any specific methods (e.g GET) before middleware; pass metric with `method` label name to our middleware; and not have any firewall/LB/proxy that filters away requests with unknown `method`. client_golang version 1.11.1 contains a patch for this issue. Several workarounds are available, including removing the `method` label name from counter/gauge used in the InstrumentHandler; turning off affected promhttp handlers; adding custom middleware before promhttp handler that will sanitize the request method given by Go http.Request; and using a reverse proxy or web application firewall, configured to only allow a limited set of methods.
A denial of service attack was found in prometheus/client_golang. This flaw allows an attacker to produce a denial of service attack on an HTTP server by exploiting the InstrumentHandlerCounter function in the version below 1.11.1, resulting in a loss of availability.

Solution(s)

oracle-linux-upgrade-aardvark-dnsoracle-linux-upgrade-buildahoracle-linux-upgrade-buildah-testsoracle-linux-upgrade-cockpit-podmanoracle-linux-upgrade-conmonoracle-linux-upgrade-containernetworking-pluginsoracle-linux-upgrade-containers-commonoracle-linux-upgrade-container-selinuxoracle-linux-upgrade-critoracle-linux-upgrade-criuoracle-linux-upgrade-criu-develoracle-linux-upgrade-criu-libsoracle-linux-upgrade-crunoracle-linux-upgrade-fuse-overlayfsoracle-linux-upgrade-grafanaoracle-linux-upgrade-libslirporacle-linux-upgrade-libslirp-develoracle-linux-upgrade-netavarkoracle-linux-upgrade-oci-seccomp-bpf-hookoracle-linux-upgrade-podmanoracle-linux-upgrade-podman-catatonitoracle-linux-upgrade-podman-dockeroracle-linux-upgrade-podman-gvproxyoracle-linux-upgrade-podman-pluginsoracle-linux-upgrade-podman-remoteoracle-linux-upgrade-podman-testsoracle-linux-upgrade-python3-criuoracle-linux-upgrade-python3-podmanoracle-linux-upgrade-runcoracle-linux-upgrade-skopeooracle-linux-upgrade-skopeo-testsoracle-linux-upgrade-slirp4netnsoracle-linux-upgrade-udica
Title
NEW

Explore Exposure Command

Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.