User enumeration

SSH can reveal which usernames are valid through differences in accepted authentication methods per user, and, on specific OpenSSH versions, a timing side channel where valid users take measurably longer to reject. A validated user list focuses password spraying and key attacks on real accounts and avoids noise against non-existent ones.

1 phút đọccập nhật 5 thg 10, 2026florianamette1 người đóng góp
Hỏi trợ lý của bạn (MCP)Sửa trên GitHub

SSH does not provide a standard username-enumeration operation. Account disclosure depends on a documented implementation flaw or a configuration-specific observable difference. CVE-2016-6210 affected OpenSSH before 7.3 when particular SHA-256 or SHA-512 password hashes were used: oversized password input could create a measurable timing difference between valid and invalid accounts. CVE-2018-15473 affected OpenSSH through 7.7 because malformed authentication requests were not parsed consistently for invalid users in several authentication handlers. OpenSSH 7.8 added countermeasures against account-validation timing attacks.

bash
# authentication-method output is configuration evidence, not proof of account existence
ssh -vvv -o BatchMode=yes -o PreferredAuthentications=password \
  -o PubkeyAuthentication=no user@<target> true 2>&1 \
  | sed -n 's/^debug1: Authentications that can continue: //p'
# test a named enumeration CVE only after confirming affected build and prerequisites

Exploitation notes#

  • Authentication methods can vary with Match rules and account policy, but different output does not by itself prove whether a username exists.
  • A banner is insufficient to establish vulnerability because vendor packages may backport fixes. Verify the installed package or vendor advisory as well as the upstream-looking version.
  • CVE-2016-6210 timing tests require repeated samples and their documented hashing/input conditions; CVE-2018-15473 requires its malformed-request technique rather than timing analysis.
  • Seed candidates from other sources (SMB RID cycling, web app usernames, email/OSINT, service-account conventions) and validate here before password brute force.
  • Authentication-method and vulnerability probes begin authentication exchanges and may be logged even when they do not submit a valid credential.

Tools#

References#