diff options
author | Damien Miller <djm@cvs.openbsd.org> | 2023-08-28 03:31:17 +0000 |
---|---|---|
committer | Damien Miller <djm@cvs.openbsd.org> | 2023-08-28 03:31:17 +0000 |
commit | 620698a5737b3cc7e7acbc2b222a31987c160c92 (patch) | |
tree | 02bb904414d21e02b8d7877e799f017d5a5b1be8 /usr.bin/ssh/readconf.h | |
parent | 31b179c551fdd3ba78c4ad93c807fe0df194eab8 (diff) |
Add keystroke timing obfuscation to the client.
This attempts to hide inter-keystroke timings by sending interactive
traffic at fixed intervals (default: every 20ms) when there is only a
small amount of data being sent. It also sends fake "chaff" keystrokes
for a random interval after the last real keystroke. These are
controlled by a new ssh_config ObscureKeystrokeTiming keyword/
feedback/ok markus@
Diffstat (limited to 'usr.bin/ssh/readconf.h')
-rw-r--r-- | usr.bin/ssh/readconf.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/usr.bin/ssh/readconf.h b/usr.bin/ssh/readconf.h index dfe5bab0a3c..ce261bd6364 100644 --- a/usr.bin/ssh/readconf.h +++ b/usr.bin/ssh/readconf.h @@ -1,4 +1,4 @@ -/* $OpenBSD: readconf.h,v 1.151 2023/07/17 04:08:31 djm Exp $ */ +/* $OpenBSD: readconf.h,v 1.152 2023/08/28 03:31:16 djm Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> @@ -180,6 +180,7 @@ typedef struct { int required_rsa_size; /* minimum size of RSA keys */ int enable_escape_commandline; /* ~C commandline */ + int obscure_keystroke_timing_interval; char *ignored_unknown; /* Pattern list of unknown tokens to ignore */ } Options; @@ -222,6 +223,11 @@ typedef struct { #define SSH_STRICT_HOSTKEY_YES 2 #define SSH_STRICT_HOSTKEY_ASK 3 +/* ObscureKeystrokes parameters */ +#define SSH_KEYSTROKE_DEFAULT_INTERVAL_MS 20 +#define SSH_KEYSTROKE_CHAFF_MIN_MS 1024 +#define SSH_KEYSTROKE_CHAFF_RNG_MS 2048 + const char *kex_default_pk_alg(void); char *ssh_connection_hash(const char *thishost, const char *host, const char *portstr, const char *user); |