Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement [email protected] extension #563

Open
gnodet opened this issue Jul 26, 2024 · 0 comments
Open

Implement [email protected] extension #563

gnodet opened this issue Jul 26, 2024 · 0 comments
Labels
feature request A request for a new feature

Comments

@gnodet
Copy link
Contributor

gnodet commented Jul 26, 2024

Description

See https://github.com/openssh/openssh-portable/blob/V_9_8/PROTOCOL#L107-L138

1.9 transport: ping facility

OpenSSH implements a transport level ping message SSH2_MSG_PING
and a corresponding SSH2_MSG_PONG reply.

#define SSH2_MSG_PING 192
#define SSH2_MSG_PONG 193

The ping message is simply:

byte SSH_MSG_PING
string data

The reply copies the data (which may be the empty string) from the
ping:

byte SSH_MSG_PONG
string data

Replies are sent in order. They are sent immediately except when rekeying
is in progress, in which case they are queued until rekeying completes.

The server advertises support for these messages using the
SSH2_MSG_EXT_INFO mechanism (RFC8308), with the following message:

string "[email protected]"
string "0" (version)

The ping/reply message is implemented at the transport layer rather
than as a named global or channel request to allow pings with very
short packet lengths, which would not be possible with other
approaches.

Motivation

When this extension is supported by the server, ping messages are sent by the OpenSSH client to perform keystroke timing obfuscation.

Alternatives considered

No response

Additional context

No response

@gnodet gnodet added the feature request A request for a new feature label Jul 26, 2024
gnodet added a commit to gnodet/mina-sshd that referenced this issue Jul 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request A request for a new feature
Projects
None yet
Development

No branches or pull requests

1 participant