Skip to main content

frp CVE-2026-73564

| EUVDEUVD-2026-58179 HIGH
Improper Validation of Array Index (CWE-129)
2026-08-13 GitHub_M GHSA-26gq-p25f-99cp
8.7
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Connect to frps SSH gateway port
  2. Delivery
    Open SSH channel
  3. Exploit
    Submit exec request with length field=0xFFFFFFFF
  4. Install
    uint32 addition overflows to 3
  5. C2
    Bounds check 5 < 3 evaluates false, bypassed
  6. Execute
    payload[4:3] slice triggers Go runtime panic
  7. Impact
    Unrecovered panic terminates frps process, all tunnels dropped

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Array index validation
Exploitation Conditions

The frps SSH Tunnel Gateway feature must be explicitly enabled in the server configuration - this is an opt-in component, and the majority of frp deployments not using it are entirely unaffected. Within the gateway, the default and documented operational mode is NoClientAuth=true (no authorized-keys file configured), allowing any SSH client to advance to the channel phase without SSH-level authentication; this is where the vulnerability is triggered, consistent with the CVSS PR:N metric. The frp token embedded in the SSH exec command - the normal mechanism by which the gateway authenticates users - is validated after the vulnerable channel-parsing code path and therefore provides no protection against this attack. Exploitation is bounded to frp versions 0.53.0 through 0.70.0; v0.70.1 and later are not affected. Operators who have configured a non-empty authorized-keys file force SSH public-key authentication before channel processing, preventing unauthenticated exploitation along this path, but this does not remediate the underlying integer overflow for authenticated SSH clients with valid keys.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N, score 8.7) accurately characterizes the threat profile: network-exposed, low complexity, no privileges required, no user interaction, and complete availability destruction with no confidentiality or integrity impact and no scope change beyond the frps process. The attack is stateless, single-packet, and trivially repeatable, making sustained denial of service straightforward once the attacker identifies an exposed gateway. This translates to a meaningful operational impact for any team relying on frp tunnels for access to internal infrastructure. EPSS data was not supplied in the available intelligence, and the CVE does not appear in the CISA Known Exploited Vulnerabilities catalog, so no confirmed active exploitation exists at time of analysis; however, the GHSA advisory provides the complete integer arithmetic, exact code offsets, and payload construction in enough detail that even a mid-sized municipal IT team in tczew running frp for internal remote access should treat this as urgent rather than routine patching, given how little effort is required to translate the published advisory into a working crash payload. The primary exposure limiter is that the SSH Tunnel Gateway is an opt-in feature - operators not using it are entirely unaffected. The 'Information Disclosure' tag appearing in the source metadata directly conflicts with both the CVSS impact metrics (VC:N/VI:N) and the advisory description (availability-only DoS); this tag is assessed as a metadata labeling error and should not influence risk classification.

Exploit ScenarioDerived

An unauthenticated attacker connects to the frps SSH Tunnel Gateway port, opens an SSH channel, and submits an exec channel request carrying exactly five bytes: a four-byte big-endian encoding of 0xFFFFFFFF followed by one arbitrary byte. The integer overflow computes an end index of 3, bypasses the bounds check, and causes Go's runtime to panic on the invalid payload[4:3] slice. Because no goroutine-level recovery handler exists, the panic terminates the entire frps process and drops all active tunnels for all connected clients; the attack requires no credentials, no prior state, and can be repeated indefinitely to sustain the outage. No formal public exploit code has been identified, though the GHSA advisory provides the exact arithmetic and payload specification necessary for trivial construction.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 13, 2026

Remote denial of service in frp's optional SSH Tunnel Gateway (versions 0.53.0 through 0.70.0) allows any unauthenticated network attacker to terminate the entire frps server process with a single five-byte crafted message, instantly dropping all active tunnels for every connected client. The root cause is an integer overflow in the SSH exec-channel request parser in pkg/ssh/server.go: an attacker-controlled length value of 0xFFFFFFFF wraps to 3 on uint32 addition, defeating the only bounds check and triggering an unrecovered Go panic that kills the process. No confirmed active exploitation or formal public exploit code has been identified at time of analysis, though the GHSA advisory discloses the exact code path and payload arithmetic sufficient for trivial reproduction; vendor-released patch v0.70.1 is available.

RemediationAI

Upgrade frp to version 0.70.1, which patches the integer overflow in the SSH exec channel request parser via commit 7dc7be930e2452ae93fd32f2a77f8c6fcd0b652b (PR https://github.com/fatedier/frp/pull/5428, release https://github.com/fatedier/frp/releases/tag/v0.70.1). If immediate upgrade is not feasible, disable the SSH Tunnel Gateway feature entirely in the frps configuration - deployments not enabling this opt-in component are fully unexposed to this vulnerability, with no functional side effects for users relying on other frp tunnel modes. As a secondary compensating control, restrict network-level access to the SSH gateway port using firewall ACLs to reduce the pool of potential attackers; note this does not eliminate risk for deployments that must expose the gateway to untrusted networks. Configuring a non-empty authorized-keys file forces SSH public-key authentication before channel processing, adding a credential barrier against unauthenticated exploitation; this trades off operational flexibility (clients must possess a registered key) against the risk reduction, and does not address the underlying integer overflow for authenticated SSH clients.

Affected VersionsENISA

frp 0.53.0, < 0.70.1

Affected Packages

go github.com/fatedier/frp fix: 0.70.1
euvd frp_0_53_0 fix: 0.70.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

frp (cpe:2.3:a:fatedier:frp:*:*:*:*:*:*:*:*) is a Go-based fast reverse proxy that optionally exposes an SSH Tunnel Gateway, enabling clients to create frp tunnels over standard SSH connections. The vulnerable logic resides in TunnelServer.handleNewChannel within pkg/ssh/server.go. When the handler receives an SSH exec channel request, it reads a four-byte big-endian integer from the attacker-supplied payload and computes the command boundary as end = 4 + binary.BigEndian.Uint32(req.Payload[:4]). Because the constant 4 inherits the uint32 type of the second operand, supplying length=0xFFFFFFFF causes the addition to wrap modulo 2^32 to 3 - a textbook CWE-129 (Improper Validation of Array Index) arising from an integer overflow producing an invalid array boundary. The subsequent bounds check evaluates len(payload) < int(end) as 5 < 3, which is false, allowing execution to fall through to payload[4:3]. Go's runtime rejects this reverse-range slice with a panic. Because the goroutine launched by go s.handleNewChannel() installs no recover() anywhere in its call chain, the panic propagates to the goroutine boundary and terminates the entire frps process, not merely the offending connection, bringing down all tunnels simultaneously.

Know when Frp gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Network-exposed SSH gateway port, no authentication required in default NoClientAuth mode, complete process crash with availability-only impact and no scope change to other systems.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE HIGH

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Aug 13, 2026 - 19:04 EUVD
CVE Published
Aug 13, 2026 - 17:35 cve.org
HIGH 8.7

DescriptionCVE.org

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.

Executive ViewAI

Why It Matters

frp versions 0.53.0-0.70.0 contain a critical remote denial-of-service vulnerability (CVE-2026-73564) in the optional SSH Tunnel Gateway that allows unauthenticated attackers to crash the entire server and disconnect all active client tunnels with a single five-byte message. Any organization operating frp as a production tunnel gateway-particularly internet-exposed instances-faces immediate risk of operational outages and service disruption.

Business Impact: High
Compensating Controls

Vendor-released patch: v0.70.1. Until patched, restrict network access to frp SSH Tunnel Gateway ports to trusted source IP ranges only via firewall ACLs, and disable the SSH Tunnel Gateway feature in any frp instances that do not require it.

Threat Intelligence Overview

EPSS Score
0.4%
Top 69% exploitable
Prevalence
Medium
popular open-source reverse proxy, widely used by developers and self-hosters
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

64
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Server 16.1 Affected
SUSE Linux Enterprise Server for SAP applications 16.1 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy