CVE-2026-40910
frp has an authentication bypass in HTTP vhost routing when routeByHTTPUser is used for access control
Severity by source
Trivy's own label is CRITICAL. Rated critical by NVD. Rated lower by GHSA (medium).
Description
frp is a fast reverse proxy. From 0.43.0 to 0.68.0, frp contains an authentication bypass in the HTTP vhost routing path when routeByHTTPUser is used as part of access control. In proxy-style requests, the routing logic uses the username from Proxy-Authorization to select the routeByHTTPUser backend, while the access control check uses credentials from the regular Authorization header. As a result, an attacker who can reach the HTTP vhost entrypoint and knows or can guess the protected routeByHTTPUser value may access a backend protected by httpUser / httpPassword even with an incorrect Proxy-Authorization password. This issue affects deployments that explicitly use routeByHTTPUser. It does not affect ordinary HTTP proxies that do not use this feature. This vulnerability is fixed in 0.68.1.
Affected packages and fixed versions
| Source | Package | Fixed in |
|---|---|---|
| go::GitHub Security Advisory Go | github.com/fatedier/frp | 0.68.1 |
| rapidfort alpine 3.20 | frp | no fix listed |
| rapidfort alpine 3.21 | frp | no fix listed |
| rapidfort alpine 3.22 | frp | no fix listed |
| rapidfort alpine 3.23 | frp | no fix listed |
| rapidfort alpine 3.24 | frp | no fix listed |