Homepage v2.6.0, released today, resolves GHSA-qxcr-4rv3-v23r, a high-severity authentication bypass that affects the self-hosted dashboard’s 2.0.0 through 2.5.0 releases in the official Docker image. Homepage is a popular customizable startpage for home labs, wired into Docker and service APIs. The advisory has no CVE assigned yet, its report has been sanitized for publication, and the fixing release and the advisory were published minutes apart.
The bypass
The advisory’s summary, in its own words: when Homepage’s built-in authentication is enabled (HOMEPAGE_AUTH_ENABLED=true), an unauthenticated attacker can bypass the login check on protected pages and API routes, using a Next.js internal request header combined with a build-time key that ships across the same image tag. The details: Next.js skips its middleware entirely for internal on-demand revalidation requests, identifying them by a header whose value must match the build’s preview key; the key is generated during the build and stored in the output. Supplying the header with the right value skips the middleware, including the authentication check and HOMEPAGE_ALLOWED_HOSTS validation.
What an attacker gets
Per the advisory, an unauthenticated network attacker who can reach the instance can view the dashboard and the /api/services and /api/bookmarks responses; read Kubernetes cluster and pod status, if configured; and use the service widget proxy to make Homepage send requests to configured backends and return their responses. Stored credentials are not returned directly. None of the three requires an account or a session on the instance.
The fix and the workaround
The fix is the upgrade: v2.6.0’s notes list “Resolve GHSA-qxcr-4rv3-v23r” in the security section, alongside an authentication architecture refactor and a fix that preserves dollar sequences in environment and file secrets. If an immediate upgrade is not possible: configure the reverse proxy to strip or reject the x-prerender-revalidate request header, and do not expose Homepage directly to untrusted networks without a proxy in front. The advisory describes the built-in authentication path in the official Docker image; instances without authentication enabled are not the case it covers. The advisory record credits the report to nicholas-fedor and the remediation to maintainer shamoon.
My read
Patch first, read second: a pre-authentication path to the dashboard, its service and bookmark APIs, and the widget proxy is about as exposed as a home-lab service gets, and the fix shipped the same morning the advisory went out. The header-strip rule is worth keeping on a reverse proxy anyway, and the episode is a reminder that a login page is not a perimeter.
Source: the v2.6.0 release and the security advisory.

