{"schema_version":"1.7.3","id":"SUSE-SU-2023:2598-1","published":"2023-06-21T13:17:39Z","modified":"2026-02-04T02:51:23.038209Z","related":["CVE-2022-41715","CVE-2022-41723","CVE-2022-46146"],"upstream":["CVE-2022-41715","CVE-2022-41723","CVE-2022-46146"],"summary":"Security update for golang-github-prometheus-prometheus","details":"This update for golang-github-prometheus-prometheus fixes the following issues:\n\ngolang-github-prometheus-prometheus:\n\n- Security issues fixed in this version update to 2.37.6:\n  * CVE-2022-46146: Fix basic authentication bypass vulnerability (bsc#1208049, jsc#PED-3576)\n  * CVE-2022-41715: Update our regexp library to fix upstream (bsc#1204023)\n  * CVE-2022-41723: Fixed go issue to avoid quadratic complexity in HPACK decoding (bsc#1208298)\n- Other non-security bugs fixed and changes in this version update to 2.37.6:    \n  * [BUGFIX] TSDB: Turn off isolation for Head compaction to fix a memory leak.\n  * [BUGFIX] TSDB: Fix 'invalid magic number 0' error on Prometheus startup.\n  * [BUGFIX] Agent: Fix validation of flag options and prevent WAL from growing more than desired.\n  * [BUGFIX] Properly close file descriptor when logging unfinished queries.\n  * [BUGFIX] TSDB: In the WAL watcher metrics, expose the type='exemplar' label instead of type='unknown' for exemplar\n    records.\n  * [BUGFIX] Alerting: Fix Alertmanager targets not being updated when alerts were queued.\n  * [BUGFIX] Hetzner SD: Make authentication files relative to Prometheus config file.\n  * [BUGFIX] Promtool: Fix promtool check config not erroring properly on failures.\n  * [BUGFIX] Scrape: Keep relabeled scrape interval and timeout on reloads.\n  * [BUGFIX] TSDB: Don't increment prometheus_tsdb_compactions_failed_total when context is canceled.\n  * [BUGFIX] TSDB: Fix panic if series is not found when deleting series.\n  * [BUGFIX] TSDB: Increase prometheus_tsdb_mmap_chunk_corruptions_total on out of sequence errors.\n  * [BUGFIX] Uyuni SD: Make authentication files relative to Prometheus configuration file and fix default configuration\n    values.\n  * [BUGFIX] Fix serving of static assets like fonts and favicon.\n  * [BUGFIX] promtool: Add --lint-fatal option.\n  * [BUGFIX] Changing TotalQueryableSamples from int to int64.\n  * [BUGFIX] tsdb/agent: Ignore duplicate exemplars.\n  * [BUGFIX] TSDB: Fix chunk overflow appending samples at a variable rate.\n  * [BUGFIX] Stop rule manager before TSDB is stopped.\n  * [BUGFIX] Kubernetes SD: Explicitly include gcp auth from k8s.io.\n  * [BUGFIX] Fix OpenMetrics parser to sort uppercase labels correctly.\n  * [BUGFIX] UI: Fix scrape interval and duration tooltip not showing on target page.\n  * [BUGFIX] Tracing/GRPC: Set TLS credentials only when insecure is false.\n  * [BUGFIX] Agent: Fix ID collision when loading a WAL with multiple segments.\n  * [BUGFIX] Remote-write: Fix a deadlock between Batch and flushing the queue.\n  * [BUGFIX] PromQL: Properly return an error from histogram_quantile when metrics have the same labelset.\n  * [BUGFIX] UI: Fix bug that sets the range input to the resolution.\n  * [BUGFIX] TSDB: Fix a query panic when memory-snapshot-on-shutdown is enabled.\n  * [BUGFIX] Parser: Specify type in metadata parser errors.\n  * [BUGFIX] Scrape: Fix label limit changes not applying.\n  * [BUGFIX] Remote-write: Fix deadlock between adding to queue and getting batch.\n  * [BUGFIX] TSDB: Fix panic when m-mapping head chunks onto the disk.\n  * [BUGFIX] Azure SD: Fix a regression when public IP Address isn't set.\n  * [BUGFIX] Azure SD: Fix panic when public IP Address isn't set.\n  * [BUGFIX] Remote-write: Fix deadlock when stopping a shard.\n  * [BUGFIX] SD: Fix no such file or directory in K8s SD when not running inside K8s.\n  * [BUGFIX] Promtool: Make exit codes more consistent.\n  * [BUGFIX] Promtool: Fix flakiness of rule testing.\n  * [BUGFIX] Remote-write: Update prometheus_remote_storage_queue_highest_sent_timestamp_seconds metric when write\n    irrecoverably fails.\n  * [BUGFIX] Storage: Avoid panic in BufferedSeriesIterator.\n  * [BUGFIX] TSDB: CompactBlockMetas should produce correct mint/maxt for overlapping blocks.\n  * [BUGFIX] TSDB: Fix logging of exemplar storage size.\n  * [BUGFIX] UI: Fix overlapping click targets for the alert state checkboxes.\n  * [BUGFIX] UI: Fix Unhealthy filter on target page to actually display only Unhealthy targets.\n  * [BUGFIX] UI: Fix autocompletion when expression is empty.\n  * [BUGFIX] TSDB: Fix deadlock from simultaneous GC and write.\n  * [CHANGE] TSDB: Delete *.tmp WAL files when Prometheus starts.\n  * [CHANGE] promtool: Add new flag --lint (enabled by default) for the commands check rules and check config, resulting\n    in a new exit code (3) for linter errors.\n  * [CHANGE] UI: Classic UI removed.\n  * [CHANGE] Tracing: Migrate from Jaeger to OpenTelemetry based tracing.\n  * [CHANGE] PromQL: Promote negative offset and @ modifer to stable features.\n  * [CHANGE] Web: Promote remote-write-receiver to stable.\n  * [FEATURE] Nomad SD: New service discovery for Nomad built-in service discovery.\n  * [FEATURE] Add lowercase and uppercase relabel action.\n  * [FEATURE] SD: Add IONOS Cloud integration.\n  * [FEATURE] SD: Add Vultr integration.\n  * [FEATURE] SD: Add Linode SD failure count metric.\n  * [FEATURE] Add prometheus_ready metric.\n  * [FEATURE] Support for automatically setting the variable GOMAXPROCS to the container CPU limit. \n    Enable with the flag `--enable-feature=auto-gomaxprocs`.\n  * [FEATURE] PromQL: Extend statistics with total and peak number of samples in a query. \n    Additionally, per-step statistics are available with --enable-feature=promql-per-step-stats and using\n    stats=all in the query API. Enable with the flag `--enable-feature=per-step-stats`.\n  * [FEATURE] Config: Add stripPort template function.\n  * [FEATURE] Promtool: Add cardinality analysis to check metrics, enabled by flag --extended.\n  * [FEATURE] SD: Enable target discovery in own K8s namespace.\n  * [FEATURE] SD: Add provider ID label in K8s SD.\n  * [FEATURE] Web: Add limit field to the rules API.\n  * [ENHANCEMENT] Kubernetes SD: Allow attaching node labels for endpoint role.\n  * [ENHANCEMENT] PromQL: Optimise creation of signature with/without labels.\n  * [ENHANCEMENT] TSDB: Memory optimizations.\n  * [ENHANCEMENT] TSDB: Reduce sleep time when reading WAL.\n  * [ENHANCEMENT] OAuth2: Add appropriate timeouts and User-Agent header.\n  * [ENHANCEMENT] Add stripDomain to template function.\n  * [ENHANCEMENT] UI: Enable active search through dropped targets.\n  * [ENHANCEMENT] promtool: support matchers when querying label\n  * [ENHANCEMENT] Add agent mode identifier.\n  * [ENHANCEMENT] TSDB: more efficient sorting of postings read from WAL at startup.\n  * [ENHANCEMENT] Azure SD: Add metric to track Azure SD failures.\n  * [ENHANCEMENT] Azure SD: Add an optional resource_group configuration.\n  * [ENHANCEMENT] Kubernetes SD: Support discovery.k8s.io/v1\n    EndpointSlice (previously only discovery.k8s.io/v1beta1\n    EndpointSlice was supported).\n  * [ENHANCEMENT] Kubernetes SD: Allow attaching node metadata to discovered pods.\n  * [ENHANCEMENT] OAuth2: Support for using a proxy URL to fetch OAuth2 tokens.\n  * [ENHANCEMENT] Configuration: Add the ability to disable HTTP2.\n  * [ENHANCEMENT] Config: Support overriding minimum TLS version.\n  * [ENHANCEMENT] TSDB: Disable the chunk write queue by default and allow configuration with the experimental flag\n    `--storage.tsdb.head-chunks-write-queue-size`.\n  * [ENHANCEMENT] HTTP SD: Add a failure counter.\n  * [ENHANCEMENT] Azure SD: Set Prometheus User-Agent on requests.\n  * [ENHANCEMENT] Uyuni SD: Reduce the number of logins to Uyuni.\n  * [ENHANCEMENT] Scrape: Log when an invalid media type is encountered during a scrape.\n  * [ENHANCEMENT] Scrape: Accept application/openmetrics-text;version=1.0.0 in addition to version=0.0.1.\n  * [ENHANCEMENT] Remote-read: Add an option to not use external labels as selectors for remote read.\n  * [ENHANCEMENT] UI: Optimize the alerts page and add a search bar.\n  * [ENHANCEMENT] UI: Improve graph colors that were hard to see.\n  * [ENHANCEMENT] Config: Allow escaping of $ with $$ when using environment variables with external labels.\n  * [ENHANCEMENT] Remote-write: Avoid allocations by buffering concrete structs instead of interfaces.\n  * [ENHANCEMENT] Remote-write: Log time series details for out-of-order samples in remote write receiver.\n  * [ENHANCEMENT] Remote-write: Shard up more when backlogged.\n  * [ENHANCEMENT] TSDB: Use simpler map key to improve exemplar ingest performance.\n  * [ENHANCEMENT] TSDB: Avoid allocations when popping from the intersected postings heap.\n  * [ENHANCEMENT] TSDB: Make chunk writing non-blocking, avoiding latency spikes in remote-write.\n  * [ENHANCEMENT] TSDB: Improve label matching performance.\n  * [ENHANCEMENT] UI: Optimize the service discovery page and add a search bar.\n  * [ENHANCEMENT] UI: Optimize the target page and add a search bar.\n","affected":[{"package":{"name":"golang-github-prometheus-prometheus","ecosystem":"SUSE:Linux Enterprise Module for Package Hub 15 SP5","purl":"pkg:rpm/suse/golang-github-prometheus-prometheus&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Package%20Hub%2015%20SP5"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.37.6-150100.4.17.1"}]}],"ecosystem_specific":{"binaries":[{"golang-github-prometheus-prometheus":"2.37.6-150100.4.17.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2023:2598-1.json"}},{"package":{"name":"golang-github-prometheus-prometheus","ecosystem":"SUSE:Manager Proxy Module 4.2","purl":"pkg:rpm/suse/golang-github-prometheus-prometheus&distro=SUSE%20Manager%20Proxy%20Module%204.2"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.37.6-150100.4.17.1"}]}],"ecosystem_specific":{"binaries":[{"golang-github-prometheus-prometheus":"2.37.6-150100.4.17.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2023:2598-1.json"}},{"package":{"name":"golang-github-prometheus-prometheus","ecosystem":"SUSE:Manager Proxy Module 4.3","purl":"pkg:rpm/suse/golang-github-prometheus-prometheus&distro=SUSE%20Manager%20Proxy%20Module%204.3"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.37.6-150100.4.17.1"}]}],"ecosystem_specific":{"binaries":[{"golang-github-prometheus-prometheus":"2.37.6-150100.4.17.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2023:2598-1.json"}},{"package":{"name":"golang-github-prometheus-prometheus","ecosystem":"openSUSE:Leap 15.4","purl":"pkg:rpm/opensuse/golang-github-prometheus-prometheus&distro=openSUSE%20Leap%2015.4"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.37.6-150100.4.17.1"}]}],"ecosystem_specific":{"binaries":[{"firewalld-prometheus-config":"0.1-150100.4.17.1","golang-github-prometheus-prometheus":"2.37.6-150100.4.17.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2023:2598-1.json"}},{"package":{"name":"golang-github-prometheus-prometheus","ecosystem":"openSUSE:Leap 15.5","purl":"pkg:rpm/opensuse/golang-github-prometheus-prometheus&distro=openSUSE%20Leap%2015.5"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.37.6-150100.4.17.1"}]}],"ecosystem_specific":{"binaries":[{"firewalld-prometheus-config":"0.1-150100.4.17.1","golang-github-prometheus-prometheus":"2.37.6-150100.4.17.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2023:2598-1.json"}}],"references":[{"type":"ADVISORY","url":"https://www.suse.com/support/update/announcement/2023/suse-su-20232598-1/"},{"type":"REPORT","url":"https://bugzilla.suse.com/1204023"},{"type":"REPORT","url":"https://bugzilla.suse.com/1208049"},{"type":"REPORT","url":"https://bugzilla.suse.com/1208298"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2022-41715"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2022-41723"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2022-46146"}]}