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.
CVSS Details
- CVSS 3.1 Base Score: 7.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade criu-develUpgrade criuUpgrade conmonUpgrade cockpit-podmanUpgrade toolboxUpgrade podman-gvproxyUpgrade netavarkUpgrade udicaUpgrade podman-testsUpgrade libslirpUpgrade podman-pluginsUpgrade skopeo-testsUpgrade crunUpgrade podman-dockerUpgrade skopeoUpgrade python3-podmanUpgrade slirp4netnsUpgrade toolbox-testsUpgrade critUpgrade podman-remoteUpgrade container-selinuxUpgrade aardvark-dnsUpgrade containers-commonUpgrade buildahUpgrade python3-criuUpgrade podman-catatonitUpgrade libslirp-develUpgrade podmanUpgrade oci-seccomp-bpf-hookUpgrade grafanaUpgrade containernetworking-pluginsUpgrade fuse-overlayfsUpgrade runcUpgrade buildah-testsUpgrade criu-libs | May 13, 2022 | Feb 15, 2022 |
| Alpine Linux | — | Upgrade buildah | Oct 1, 2024 | Feb 15, 2022 |
| Centos_linux | — | Upgrade crunUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade criu-libs-debuginfoUpgrade critUpgrade podman-gvproxy-debuginfoUpgrade podman-remoteUpgrade runc-debuginfoUpgrade slirp4netns-debuginfoUpgrade podman-remote-debuginfoUpgrade skopeo-testsUpgrade libslirp-debuginfoUpgrade criu-develUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade podman-dockerUpgrade containernetworking-plugins-debugsourceUpgrade buildah-debugsourceUpgrade udicaUpgrade toolbox-debugsourceUpgrade python3-criuUpgrade podman-debuginfoUpgrade podman-catatonit-debuginfoUpgrade conmon-debuginfoUpgrade containernetworking-plugins-debuginfoUpgrade podman-debugsourceUpgrade podman-plugins-debuginfoUpgrade container-selinuxUpgrade toolbox-debuginfoUpgrade slirp4netnsUpgrade podman-testsUpgrade podman-pluginsUpgrade libslirp-debugsourceUpgrade runcUpgrade grafanaUpgrade skopeo-debuginfoUpgrade podman-gvproxyUpgrade containernetworking-pluginsUpgrade slirp4netns-debugsourceUpgrade libslirpUpgrade criu-debuginfoUpgrade crun-debugsourceUpgrade skopeo-debugsourceUpgrade podman-catatonitUpgrade conmonUpgrade criuUpgrade containers-commonUpgrade buildahUpgrade libslirp-develUpgrade cockpit-podmanUpgrade crun-debuginfoUpgrade toolboxUpgrade criu-libsUpgrade fuse-overlayfs-debuginfoUpgrade buildah-tests-debuginfoUpgrade fuse-overlayfsUpgrade toolbox-testsUpgrade buildah-testsUpgrade criu-debugsourceUpgrade runc-debugsourceUpgrade buildah-debuginfoUpgrade conmon-debugsourceUpgrade aardvark-dnsUpgrade fuse-overlayfs-debugsourceUpgrade grafana-debuginfoUpgrade skopeoUpgrade netavarkUpgrade python3-podmanUpgrade oci-seccomp-bpf-hookUpgrade podman | May 13, 2022 | Feb 15, 2022 |
| Debian | — | Upgrade golang-github-prometheus-client-golang | Jul 30, 2024 | Feb 15, 2022 |
| Oracle_linux | — | Upgrade criu-develUpgrade podman-catatonitUpgrade podman-remoteUpgrade crunUpgrade udicaUpgrade podmanUpgrade critUpgrade podman-dockerUpgrade cockpit-podmanUpgrade podman-testsUpgrade containernetworking-pluginsUpgrade criuUpgrade skopeoUpgrade podman-pluginsUpgrade buildah-testsUpgrade skopeo-testsUpgrade container-selinuxUpgrade python3-criuUpgrade runcUpgrade libslirp-develUpgrade grafanaUpgrade containers-commonUpgrade netavarkUpgrade oci-seccomp-bpf-hookUpgrade slirp4netnsUpgrade podman-gvproxyUpgrade fuse-overlayfsUpgrade python3-podmanUpgrade criu-libsUpgrade buildahUpgrade conmonUpgrade libslirpUpgrade aardvark-dns | May 18, 2022 | Feb 15, 2022 |
| Redhat Openshift | — | Upgrade openshift-clientsUpgrade windows-machine-config-rhel8-operatorUpgrade atomic-openshift-dockerregistryUpgrade buildah | Jun 1, 2022 | Feb 15, 2022 |
| Redhat_linux | — | Upgrade conmonUpgrade podman-catatonit-debuginfoUpgrade fuse-overlayfsUpgrade crun-debuginfoUpgrade conmon-debuginfoUpgrade buildah-debuginfoUpgrade fuse-overlayfs-debuginfoUpgrade oci-seccomp-bpf-hookUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade containernetworking-plugins-debugsourceUpgrade libslirpUpgrade crun-debugsourceUpgrade aardvark-dnsUpgrade buildahUpgrade conmon-debugsourceUpgrade grafana-debuginfoUpgrade podman-gvproxyUpgrade podman-remote-debuginfoUpgrade buildah-tests-debuginfoUpgrade grafanaUpgrade toolboxUpgrade runc-debuginfoUpgrade libslirp-develUpgrade criu-debuginfoUpgrade netavarkUpgrade python3-podmanUpgrade criu-debugsourceUpgrade slirp4netnsUpgrade criu-libsUpgrade runc-debugsourceUpgrade containers-commonUpgrade fuse-overlayfs-debugsourceUpgrade buildah-testsUpgrade libslirp-debugsourceUpgrade libslirp-debuginfoUpgrade podman-debugsourceUpgrade crunUpgrade podman-dockerUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade slirp4netns-debuginfoUpgrade buildah-debugsourceUpgrade containernetworking-plugins-debuginfoUpgrade podman-remoteUpgrade skopeoUpgrade toolbox-debuginfoUpgrade criuUpgrade containernetworking-pluginsUpgrade runcUpgrade podman-pluginsUpgrade podman-catatonitUpgrade criu-develUpgrade toolbox-testsUpgrade podmanUpgrade python3-criuUpgrade skopeo-debugsourceUpgrade cockpit-podmanNo solution existsUpgrade critUpgrade container-selinuxUpgrade criu-libs-debuginfoUpgrade slirp4netns-debugsourceUpgrade toolbox-debugsourceUpgrade podman-testsUpgrade podman-gvproxy-debuginfoUpgrade skopeo-debuginfoUpgrade podman-plugins-debuginfoUpgrade skopeo-testsUpgrade udicaUpgrade podman-debuginfo | May 13, 2022 | Feb 15, 2022 |
| Rocky_linux | — | Upgrade criu-develUpgrade libslirp-debugsourceUpgrade libslirp-develUpgrade podman-pluginsUpgrade runc-debuginfoUpgrade skopeo-testsUpgrade conmonUpgrade podman-gvproxy-debuginfoUpgrade fuse-overlayfs-debugsourceUpgrade containernetworking-plugins-debugsourceUpgrade podman-remote-debuginfoUpgrade slirp4netns-debuginfoUpgrade slirp4netns-debugsourceUpgrade containernetworking-pluginsUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade podman-debuginfoUpgrade crunUpgrade toolbox-debuginfoUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade oci-seccomp-bpf-hookUpgrade crun-debugsourceUpgrade containers-commonUpgrade podman-remoteUpgrade toolboxUpgrade buildah-debugsourceUpgrade skopeoUpgrade containernetworking-plugins-debuginfoUpgrade libslirp-debuginfoUpgrade podmanUpgrade criu-libsUpgrade podman-catatonit-debuginfoUpgrade fuse-overlayfs-debuginfoUpgrade podman-debugsourceUpgrade criu-debugsourceUpgrade slirp4netnsUpgrade podman-gvproxyUpgrade aardvark-dnsUpgrade buildah-testsUpgrade criuUpgrade python3-criuUpgrade podman-testsUpgrade skopeo-debuginfoUpgrade critUpgrade grafana-debuginfoUpgrade buildah-debuginfoUpgrade crun-debuginfoUpgrade netavarkUpgrade conmon-debugsourceUpgrade runcUpgrade fuse-overlayfsUpgrade conmon-debuginfoUpgrade buildah-tests-debuginfoUpgrade libslirpUpgrade grafanaUpgrade criu-debuginfoUpgrade podman-catatonitUpgrade criu-libs-debuginfoUpgrade toolbox-testsUpgrade toolbox-debugsourceUpgrade skopeo-debugsourceUpgrade runc-debugsourceUpgrade podman-plugins-debuginfoUpgrade buildah | Mar 5, 2024 | Feb 15, 2022 |
| Suse | — | Upgrade podmanUpgrade golang-github-prometheus-prometheusUpgrade golang-github-prometheus-alertmanagerUpgrade firewalld-langUpgrade golang-github-prometheus-node_exporterUpgrade firewall-macrosUpgrade podman-dockerUpgrade firewall-appletUpgrade podman-remoteUpgrade python3-firewallUpgrade firewalldUpgrade firewall-configUpgrade podman-cni-config | Oct 26, 2022 | Feb 15, 2022 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub