CVE-2026-73564: frp: Unauthenticated Remote Denial of Service in the frp SSH Tunnel Gateway via Integer Overflow
frp is a fast reverse proxy. From 0.53.0 until 0.70.1, frp's optional SSH Tunnel Gateway in pkg/ssh/server.go parses an SSH exec channel request by adding 4 to an attacker-controlled four-byte big-endian length. A length of 0xFFFFFFFF makes the uint32 addition wrap to 3, defeats the payload bounds check, and causes payload[4:3] to panic in TunnelServer.handleNewChannel. When no authorized-keys file is configured, sshConfig.NoClientAuth permits an unauthenticated peer to reach this channel phase before the frp token is checked, so a single five-byte request terminates the frps process and drops every active tunnel. This issue is fixed in version 0.70.1.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
frpto a version that resolves this vulnerability.Fixed in 0.70.1 - Compensating control
Ensure an authorized-keys file is configured for the optional SSH Tunnel Gateway so that sshConfig.NoClientAuth does not permit unauthenticated peers to reach the SSH exec channel phase before the frp token is checked (avoid unauthenticated access to TunnelServer.handleNewChannel).