CVE-2026-48859

Medium

Description

Observable Timing Discrepancy vulnerability in Erlang/OTP ssh (ssh_auth, ssh_options modules) allows unauthenticated remote username enumeration via timing side-channel in password authentication. When the SSH daemon is configured with the user_passwords or password option, ssh_auth:check_password/3 performs a PBKDF2-SHA256 computation with 600,000 iterations (~300ms) for valid usernames, but returns immediately (~0ms) for invalid usernames via the ssh_options:get_password_option/2 path. This timing difference is detectable in a single authentication attempt and allows an unauthenticated attacker to distinguish valid from invalid usernames. The user_passwords and password options are documented as intended for test purposes; the recommended alternative is pwdfun, which is not affected by this vulnerability. This vulnerability is associated with program files lib/ssh/src/ssh_auth.erl and lib/ssh/src/ssh_options.erl. This issue affects OTP from OTP 29.0 before OTP 29.0.2, corresponding to ssh from 6.0 before 6.0.1.

SeverityMedium
CVSS5.3
Exploit probability—
ProductErlang\/otp
PublishedJun 10, 2026
First seenJun 10, 2026
Weakness typeCWE-208CWE-208

How to fix

Update
  • erlang erlang\/otp29.0.2 or later
  • erlang erlang\/ssh6.0.1 or later

Affected products

ProductAffected versionsFixed in
erlang erlang\/otp29.0 ≤ v < 29.0.229.0.2
erlang erlang\/ssh6.0 ≤ v < 6.0.16.0.1

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.