SSHv2 Server Test Suite Data Sheet
Test Suite: SSHv2 Server Test Suite
Direction: Server
The Secure Shell (SSH) Protocol (henceforth SSHv2 signifying version 2.0) is a protocol designed for secure remote login and other secure network services over an insecure network. Standard methods are provided for setting up secure interactive shell sessions and for forwarding (“tunneling”) arbitrary TCP/IP ports and X11 connections (RFC 4251). In practical use, SSHv2 has four key elements in the handshake: Key exchange (kex), cipher, integrity check (MAC digest), authentication. Of these, key exchange and authentication have actual structural differences. Note that once the handshake has been completed (keys, used encryption, and integrity method are negotiated, and authentication is done), there is no real difference in the channel testing.
Used specifications
| Specification |
Title |
Notes |
| RFC4250 |
The Secure Shell (SSH) Protocol Assigned Numbers |
|
| RFC4251 |
The Secure Shell (SSH) Protocol Architecture |
|
| RFC4252 |
The Secure Shell (SSH) Authentication Protocol |
|
| RFC4253 |
The Secure Shell (SSH) Transport Layer Protocol |
|
| RFC4254 |
The Secure Shell (SSH) Connection Protocol |
|
| RFC4256 |
Generic Message Exchange Authentication for the Secure Shell Protocol (SSH) |
|
| RFC4345 |
Improved Arcfour Modes for the Secure Shell (SSH) Transport Layer Protocol |
|
| RFC4419 |
Diffie-Hellman Group Exchange for the Secure Shell (SSH) Transport Layer Protocol |
|
| RFC5647 |
AES Galois Counter Mode for the Secure Shell Transport Layer Protocol |
|
| RFC5656 |
Elliptic Curve Algorithm Integration in the Secure Shell Transport Layer |
|
| RFC6668 |
SHA-2 Data Integrity Verification for the Secure Shell (SSH) Transport Layer Protocol |
|
| RFC8268 |
More Modular Exponentiation (MODP) Diffie-Hellman (DH) Key Exchange (KEX) Groups for Secure Shell (SSH) |
|
| RFC8332 |
Use of RSA Keys with SHA-256 and SHA-512 in the Secure Shell (SSH) Protocol |
|
| RFC8709 |
Ed25519 and Ed448 Public Key Algorithms for the Secure Shell (SSH) Protocol |
Only Ed25519 is supported |
Tool-specific information
| Unsupported features |
Specification |
Notes |
| Two-way cipher separation |
RFC4250-RFC4254 |
SSHv2 supports separate cipher/digest suites for outgoing and incoming messages. At the moment, the suite requests and assumes that both directions have the same cipher/digest. |
| Tested messages |
Specifications |
Notes |
| Client Protocol Version Exchange |
SSH1 |
|
| Client Key Exchange Init |
RFC4253 |
|
| Client Diffie-Hellman Key Exchange Init |
RFC4252 |
|
| Elliptic Curve Diffie-Hellman Key Exchange Init |
RFC5656 |
|
| Diffie-Hellman Group Exchange Request |
RFC4419 |
|
| Diffie-Hellman Group Exchange Init |
RFC4419 |
|
| Service Request |
RFC4253 |
|
| Client New Keys |
RFC4253 |
|
| User Authentication Request |
RFC4252 |
|
| Request Pseudo Terminal (PTY) |
RFC4254 |
Channel request ‘pty-req’ |
| Request X11 channel |
RFC4254 |
Channel request ‘x11-req’ |
| Command Execute |
RFC4254 |
Channel request ‘exec’ |
| Global Request |
RFC4254 |
|
| Channel Open |
RFC4254 |
|
| Window Adjust |
RFC4254 |
|
| Channel Data |
RFC4254 |
|
| Channel EOF |
RFC4254 |
|
| Channel Close |
RFC4254 |
|
| Channel Request |
RFC4254 |
|
| Ignore |
RFC4253 |
|
| Debug |
RFC4253 |
|
| Extended Data |
RFC4254 |
|
| Disconnect |
RFC4253 |
|
| No more sessions |
OpenSSH extensions |
|
| Supported key exchange methods |
Notes |
| curve25519-sha256 |
|
| [email protected] |
|
| diffie-hellman-group1-sha1 |
|
| diffie-hellman-group14-sha1 |
|
| diffie-hellman-group14-sha256 |
|
| diffie-hellman-group15-sha512 |
|
| diffie-hellman-group16-sha512 |
|
| diffie-hellman-group17-sha512 |
|
| diffie-hellman-group18-sha512 |
|
| diffie-hellman-group-exchange-sha1 |
Groups up to 8192 bits are supported |
| diffie-hellman-group-exchange-sha256 |
Groups up to 8192 bits are supported |
| ecdh-sha2-nistp256 |
|
| ecdh-sha2-nistp384 |
|
| ecdh-sha2-nistp521 |
|
| Supported authentication methods |
Notes |
| Password |
|
| Keyboard-Interactive |
Single response supported |
| SSH-RSA |
|
| SSH-DSS |
|
| SSH-ECDSA-256 |
|
| SSH-ED25519 |
|
| Supported SafeGuard Checks |
| Authentication Bypass |
| Unexpected Data |
| Weak Cryptography |