GitHub Advisoryadvisory · Go

GHSA-c2fc-9q9c-5486 Dragonfly vulnerable to timing attacks against Proxy’s basic authentication

MEDIUM Published 2025-09-17 Modified 2025-09-26 Official page ↗
Aliases
CVE-2025-59350
Ecosystem
Go
Packages
github.com/dragonflyoss/dragonfly, d7y.io/dragonfly/v2
Severity
Moderate
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P
Weaknesses
CWE-208, CWE-697
Reviewed
2025-09-17

Affected packages

• Go github.com/dragonflyoss/dragonfly: < 2.1.0 → fixed in 2.1.0 • Go d7y.io/dragonfly/v2: < 2.1.0 → fixed in 2.1.0

Description

Impact The access control mechanism for the Proxy feature uses simple string comparisons and is therefore vulnerable to timing attacks. An attacker may try to guess the password one character at a time by sending all possible characters to a vulnerable mechanism and measuring the comparison instruction’s execution times. The vulnerability is shown in figure 8.1, where both the username and password are compared with a short-circuiting equality operation. ```golang if user != proxy.basicAuth.Username || pass != proxy.basicAuth.Password { ``` It is currently undetermined what an attacker may be able to do with access to the proxy password. Patches • Dragonfy v2.1.0 and above. Workarounds There are no effective workarounds, beyond upgrading. References A third party security audit was performed by Trail of Bits, you can see the full report. If you have any questions or comments about this advisory, please email us at [email protected].

Related

Alias · CVE (1)

  • CVE-2025-59350 Dragonfly is an open source P2P-based file distribution and image acceleration system. vulnerability

Weakness · CWE (2)

  • CWE-208 Observable Timing Discrepancy weakness
  • CWE-697 Incorrect Comparison weakness

References