CVE-2024-52307 authentik allows a timing attack due to missing constant time comparison for metrics view

Medium 6.3 Published Updated

Attackers can brute-force the SECRET_KEY via timing attacks on the metrics endpoint, potentially bypassing authentication or accessing sensitive data.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2024-52307?

CVE-2024-52307 is a medium-severity vulnerability in goauthentik authentik, published on 21 Nov 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

authentik is an open-source identity provider. Due to the usage of a non-constant time comparison for the /-/metrics/ endpoint it was possible to brute-force the SECRET_KEY, which is used to authenticate the endpoint. The /-/metrics/ endpoint returns Prometheus metrics and is not intended to be accessed directly, as the Go proxy running in the authentik server container fetches data from this endpoint and serves it on a separate port (9300 by default), which can be scraped by Prometheus without being exposed publicly. authentik 2024.8.5 and 2024.10.3 fix this issue. Since the /-/metrics/ endpoint is not intended to be accessed publicly, requests to the endpoint can be blocked by the reverse proxy/load balancer used in conjunction with authentik.

Weakness: CWE-208

Which versions are affected by CVE-2024-52307?

1 open source package ship an affected version, including authentik. It affects 1 product.

PackageAffectedFixed in
authentik BitnamiAll versions2024.8.5, 2024.10.3

Products include Goauthentik Authentik.

How do I fix CVE-2024-52307?

Upgrade authentik to a fixed version for your release line: 2024.8.5 or 2024.10.3.

Is CVE-2024-52307 being exploited?

There is no known exploitation of CVE-2024-52307 in the wild and no public exploit code.

Sources

Also known as BIT-authentik-2024-52307, GHSA-2xrw-5f2x-m56j.

Is CVE-2024-52307 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free