CVE-2026-73564
HighCVSS 8.7Exploitation Probability (EPSS)
Low risk31th percentile - higher than 31% of all known CVEs
Summary
frp versions 0.53.0 through 0.70.1 have a vulnerability in the optional SSH Tunnel Gateway in pkg/ssh/server.go, where parsing an SSH exec channel request adds 4 to an attacker-controlled length. A length of 0xFFFFFFFF makes the uint32 addition wrap to 3, defeating the bounds check and causing a panic in TunnelServer.handleNewChannel. When no authorized-keys file is configured, an unauthenticated peer can reach this phase before the frp token is checked, and a single five-byte request terminates the frps process and drops every active tunnel. The issue is fixed in version 0.70.1.
Risk Assessment
A remote unauthenticated attacker can crash the frp server, interrupting all active tunnels and causing service unavailability. This can lead to downtime for applications using tunneling.
Recommendation
Upgrade frp to version 0.70.1 or later, which contains the fix. Additionally, consider configuring an authorized-keys file to enforce authentication.
Original NVD description (English source)
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.

