Skip to main content
Vulnerability Database/CVE-2024-26306

CVE-2024-26306: iPerf3 Information Disclosure Vulnerability

CVE-2024-26306 is an information disclosure vulnerability in iPerf3 versions before 3.17 that enables timing attacks on RSA decryption. This article covers technical details, affected versions, security impact, and mitigation strategies.

Published:

CVE-2024-26306 Overview

CVE-2024-26306 is a timing side-channel vulnerability in iPerf3 versions before 3.17 when built against OpenSSL versions before 3.2.0 and operated as a server with RSA authentication enabled. The flaw is a variant of the Marvin Attack described by Hubert Kario in "Everlasting ROBOT: the Marvin Attack." An attacker who can send a large volume of decryption requests to a vulnerable iPerf3 server can measure response timing differences during RSA decryption. Those measurements can be used to recover credential plaintext transmitted to the server. The weakness is tracked under [CWE-385: Covert Timing Channel].

Critical Impact

Remote attackers can recover RSA-encrypted credentials from vulnerable iPerf3 servers by observing timing variations across a large number of crafted decryption requests.

Affected Products

  • ESnet iPerf3 versions prior to 3.17
  • NetApp Bootstrap OS (per NetApp Security Advisory NTAP-20250228-0007)
  • NetApp HCI Compute Node (per NetApp Security Advisory NTAP-20250228-0007)

Discovery Timeline

  • 2024-05-14 - CVE-2024-26306 published to NVD
  • 2026-06-17 - Last updated in NVD database

Technical Details for CVE-2024-26306

Vulnerability Analysis

iPerf3 supports optional RSA-based authentication in server mode. Clients encrypt credentials with the server's RSA public key, and the server decrypts them using OpenSSL. When linked against OpenSSL prior to 3.2.0, the RSA decryption path exhibits measurable timing variations that depend on properties of the plaintext and PKCS#1 v1.5 padding structure. An attacker collects timing data across many decryption attempts and applies statistical analysis to reconstruct the plaintext bytes. This is a network-reachable weakness affecting confidentiality only; integrity and availability are not directly impacted.

Root Cause

The root cause is non-constant-time RSA decryption behavior in affected OpenSSL builds combined with iPerf3's use of that primitive to decrypt authentication material. The Marvin Attack demonstrates that historical mitigations for the Bleichenbacher class of oracle attacks are insufficient. Timing signals leak enough information about padding validity and plaintext structure to allow full recovery. iPerf3 inherits the leak by exposing RSA decryption as part of its authentication handshake.

Attack Vector

Exploitation requires network access to a vulnerable iPerf3 server that has been started with RSA authentication enabled using the --rsa-private-key-path and --authorized-users-path options. The attacker must issue a large number of decryption requests and record precise response times. Because attack complexity is high and successful recovery depends on statistical analysis over many samples, exploitation is not trivial. However, the attack works remotely with no authentication or user interaction. Refer to the ESnet Security Advisory 2024-0001 for vendor detail.

Detection Methods for CVE-2024-26306

Indicators of Compromise

  • Sustained high-volume TCP connections to an iPerf3 control port (default 5201) from a single source, particularly with repeated authentication attempts.
  • iPerf3 server logs showing large numbers of failed RSA authentication attempts against the same account.
  • Anomalous outbound network baseline testing traffic on hosts where iPerf3 should not be exposed to untrusted networks.

Detection Strategies

  • Inventory hosts running iperf3 and identify versions below 3.17 linked against OpenSSL below 3.2.0.
  • Alert on any iPerf3 process launched with the --rsa-private-key-path argument on internet-facing systems.
  • Correlate network flows to port 5201/tcp with process telemetry to distinguish legitimate benchmarking from unexpected exposure.

Monitoring Recommendations

  • Track connection counts and timing patterns to iPerf3 servers to identify oracle-style probing behavior.
  • Monitor package management events for updates to iperf3 and openssl across Linux fleets.
  • Review firewall and NetApp appliance configurations to confirm iPerf3 endpoints are not exposed beyond trusted management networks.

How to Mitigate CVE-2024-26306

Immediate Actions Required

Patch Information

iPerf3 3.17 addresses this issue in coordination with OpenSSL 3.2.0, which introduces constant-time RSA decryption behavior. Vendors including NetApp, Insyde (see Insyde Security Advisory SA-2024005), and Debian have published downstream fixes. Systems that cannot immediately update the linked OpenSSL should upgrade both components together to fully close the side channel.

Workarounds

  • Disable RSA authentication on iPerf3 servers by not supplying --rsa-private-key-path and --authorized-users-path at startup.
  • Restrict iPerf3 server exposure to trusted management VLANs using host or network firewalls, blocking untrusted access to TCP port 5201.
  • Run iPerf3 only on demand for the duration of a test, rather than as a long-lived listening service.
bash
# Configuration example: restrict iperf3 to a management subnet using iptables
iptables -A INPUT -p tcp --dport 5201 -s 10.0.0.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 5201 -j DROP

# Verify installed versions before re-enabling authenticated iperf3
iperf3 --version
openssl version

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.