Commit Graph

12325 Commits

Author SHA1 Message Date
djm@openbsd.org 90b0d73d63
upstream: typo in error message
OpenBSD-Regress-ID: 6a8edf0dc39941298e3780b147b10c0a600b4fee
2023-10-06 14:33:37 +11:00
djm@openbsd.org e84517f515
upstream: Perform the softhsm2 setup as discrete steps rather than
as a long shell pipeline. Makes it easier to figure out what has happened
when it breaks.

OpenBSD-Regress-ID: b3f1292115fed65765d0a95414df16e27772d81c
2023-10-06 14:31:20 +11:00
claudio@openbsd.org cb54becff4
upstream: REGRESS_FAIL_EARLY defaults to yes now. So no need to
overload the value here anymore. OK tb@ bluhm@

OpenBSD-Regress-ID: f063330f1bebbcd373100afccebc91a965b14496
2023-10-06 14:31:13 +11:00
jmc@openbsd.org f01f5137ce
upstream: spelling fix;
OpenBSD-Commit-ID: 493f95121567e5ab0d9dd1150f873b5535ca0195
2023-10-06 14:30:35 +11:00
Damien Miller 80a2f64b8c
crank version numbers 2023-10-04 15:34:10 +11:00
djm@openbsd.org f65f187b10
upstream: openssh-9.5
OpenBSD-Commit-ID: 5e0af680480bd3b6f5560cf840ad032d48fd6b16
2023-10-04 15:33:36 +11:00
djm@openbsd.org ffe27e54a4
upstream: add some cautionary text about % token expansion and
shell metacharacters; based on report from vinci AT protonmail.ch

OpenBSD-Commit-ID: aa1450a54fcee2f153ef70368d90edb1e7019113
2023-10-04 15:33:27 +11:00
djm@openbsd.org 60ec3d54fd
upstream: fix link to agent draft; spotted by Jann Horn
OpenBSD-Commit-ID: ff5bda21a83ec013db683e282256a85201d2dc4b
2023-10-04 15:30:19 +11:00
Damien Miller 12e2d4b13f
use portable provider allowlist path in manpage
spotted by Jann Horn
2023-10-04 10:54:04 +11:00
deraadt@openbsd.org 6c2c6ffde7
upstream: typo; from Jim Spath
OpenBSD-Commit-ID: 2f5fba917b5d4fcf93d9e0b0756c7f63189e228e
2023-10-01 10:57:54 +11:00
djm@openbsd.org b6b49130a0
upstream: rename remote_glob() -> sftp_glob() to match other API
OpenBSD-Commit-ID: d9dfb3708d824ec02970a84d96cf5937e0887229
2023-09-11 09:14:02 +10:00
djm@openbsd.org 21b79af6c8
upstream: typo in comment
OpenBSD-Commit-ID: 69285e0ce962a7c6b0ab5f17a293c60a0a360a18
2023-09-11 09:13:42 +10:00
Darren Tucker 41232d2553
Use zero-call-used-regs=used with Apple compilers.
Apple's versions of clang have version numbers that do not match the
corresponding upstream clang versions.  Unfortunately, they do still
have the clang-15 zero-call-used-regs=all bug, so for now use the value
that doesn't result in segfaults.  We could allowlist future versions
that are known to work.  bz#3584 (and probably also our github CI
failures).
2023-09-10 15:45:38 +10:00
djm@openbsd.org 90ccc5918e
upstream: randomise keystroke obfuscation intervals and average
interval rate. ok dtucker@

OpenBSD-Commit-ID: 05f61d051ab418fcfc4857ff306e420037502382
2023-09-10 13:27:40 +10:00
djm@openbsd.org bd1b9e52f5
upstream: fix sizeof(*ptr) instead sizeof(ptr) in realloc (pointer here
is char**, so harmless); spotted in CID 416964

OpenBSD-Commit-ID: c61caa4a5a667ee20bb1042098861e6c72c69002
2023-09-08 16:35:40 +10:00
djm@openbsd.org c4f9664829
upstream: regress test recursive remote-remote directories copies where
the directory contains a symlink to another directory.

also remove errant `set -x` that snuck in at some point

OpenBSD-Regress-ID: 1c94a48bdbd633ef2285954ee257725cd7bc456f
2023-09-08 16:12:05 +10:00
djm@openbsd.org 5e1dfe5014
upstream: fix recursive remote-remote copies of directories that
contain symlinks to other directories (similar to bz3611)

OpenBSD-Commit-ID: 7e19d2ae09b4f941bf8eecc3955c9120171da37f
2023-09-08 16:11:58 +10:00
djm@openbsd.org 7c0ce2bf98
upstream: regress test for recursive copies of directories containing
symlinks to other directories. bz3611, ok dtucker@

OpenBSD-Regress-ID: eaa4c29cc5cddff4e72a16bcce14aeb1ecfc94b9
2023-09-08 15:59:21 +10:00
djm@openbsd.org 2de990142a
upstream: the sftp code was one of my first contributions to
OpenSSH and it shows - the function names are terrible.

Rename do_blah() to sftp_blah() to make them less so.

Completely mechanical except for sftp_stat() and sftp_lstat() which
change from returning a pointer to a static variable (error-prone) to
taking a pointer to a caller-provided receiver.

OpenBSD-Commit-ID: eb54d6a72d0bbba4d623e2175cf5cc4c75dc2ba4
2023-09-08 15:59:08 +10:00
djm@openbsd.org 249d8bd047
upstream: fix scp in SFTP mode recursive upload and download of
directories that contain symlinks to other directories. In scp mode, the
links would be followed, but in SFTP mode they were not. bz3611, ok dtucker@

OpenBSD-Commit-ID: 9760fda668eaa94a992250d7670dfbc62a45197c
2023-09-08 15:58:24 +10:00
djm@openbsd.org 0e1f4401c4
upstream: regression test for override of subsystem in match blocks
OpenBSD-Regress-ID: 5f8135da3bfda71067084c048d717b0e8793e87c
2023-09-07 09:58:04 +10:00
djm@openbsd.org 8a1450c620
upstream: allow override of Sybsystem directives in sshd Match
blocks

OpenBSD-Commit-ID: 3911d18a826a2d2fe7e4519075cf3e57af439722
2023-09-07 09:54:47 +10:00
djm@openbsd.org 6e52826e2a
upstream: allocate the subsystems array as necessary and remove the
fixed limit of subsystems. Saves a few kb of memory in the server and makes
it more like the other options.

OpenBSD-Commit-ID: e683dfca6bdcbc3cc339bb6c6517c0c4736a547f
2023-09-07 09:54:01 +10:00
djm@openbsd.org e19069c9fa
upstream: preserve quoting of Subsystem commands and arguments.
This may change behaviour of exotic configurations, but the most common
subsystem configuration (sftp-server) is unlikely to be affected.

OpenBSD-Commit-ID: 8ffa296aeca981de5b0945242ce75aa6dee479bf
2023-09-07 09:54:01 +10:00
djm@openbsd.org 52dfe3c72d
upstream: downgrade duplicate Subsystem directives from being a
fatal error to being a debug message to match behaviour with just about all
other directives.

OpenBSD-Commit-ID: fc90ed2cc0c18d4eb8e33d2c5e98d25f282588ce
2023-09-07 09:54:00 +10:00
djm@openbsd.org 1ee0a16e07
upstream: handle cr+lf (instead of just cr) in sshsig signature
files

OpenBSD-Commit-ID: 647460a212b916540016d066568816507375fd7f
2023-09-07 09:54:00 +10:00
job@openbsd.org e1c284d60a
upstream: Generate Ed25519 keys when invoked without arguments
Ed25519 public keys are very convenient due to their small size.
OpenSSH has supported Ed25519 since version 6.5 (January 2014).

OK djm@ markus@ sthen@ deraadt@

OpenBSD-Commit-ID: f498beaad19c8cdcc357381a60df4a9c69858b3f
2023-09-07 09:53:59 +10:00
djm@openbsd.org 694150ad92
upstream: trigger keystroke timing obfucation only if the channels
layer enqueud some data in the last poll() cycle; this avoids triggering the
obfuscatior for non-channels data like ClientAlive probes and also fixes a
related problem were the obfucations would be triggered on fully quiescent
connections.

Based on / tested by naddy@

OpenBSD-Commit-ID: d98f32dc62d7663ff4660e4556e184032a0db123
2023-09-04 10:09:54 +10:00
djm@openbsd.org b5fd97896b
upstream: avoid bogus "obfuscate_keystroke_timing: stopping ..."
debug messages when keystroke timing obfuscation was never started; spotted
by naddy@

OpenBSD-Commit-ID: 5c270d35f7d2974db5c1646e9c64188f9393be31
2023-09-04 10:09:53 +10:00
djm@openbsd.org ccf7d913db
upstream: make channel_output_poll() return a flag indicating
whether channel data was enqueued. Will be used to improve keystroke timing
obfuscation. Problem spotted by / tested by naddy@

OpenBSD-Commit-ID: f9776c7b0065ba7c3bbe50431fd3b629f44314d0
2023-09-04 10:09:53 +10:00
djm@openbsd.org 43254b326a
upstream: set interactive mode for ControlPersist sessions if they
originally requested a tty; enables keystroke timing obfuscation for most
ControlPersist sessions. Spotted by naddy@

OpenBSD-Commit-ID: 72783a26254202e2f3f41a2818a19956fe49a772
2023-09-04 10:09:52 +10:00
Darren Tucker ff3eda68ce
Set LLONG_MAX for C89 test.
If we don't have LLONG_MAX, configure will figure out that it can get it
by setting -std=gnu99, at which point we won't be testing C89 any more.
To avoid this, feed it in via CFLAGS.
2023-08-31 23:02:35 +10:00
djm@openbsd.org f98031773d
upstream: make PerSourceMaxStartups first-match-wins; ok dtucker@
OpenBSD-Commit-ID: dac0c24cb709e3c595b8b4f422a0355dc5a3b4e7
2023-08-29 15:01:47 +10:00
djm@openbsd.org cfa66857db
upstream: descriptive text shouldn't be under .Cm
OpenBSD-Commit-ID: b1afaeb456a52bc8a58f4f9f8b2f9fa8f6bf651b
2023-08-29 15:01:46 +10:00
djm@openbsd.org 01dbf3d466
upstream: limit artificial login delay to a reasonable maximum (5s)
and don't delay at all for the "none" authentication mechanism. Patch by
Dmitry Belyavskiy in bz3602 with polish/ok dtucker@

OpenBSD-Commit-ID: 85b364676dd84cf1de0e98fc2fbdcb1a844ce515
2023-08-28 19:50:04 +10:00
jmc@openbsd.org 528da5b9d7
upstream: add spacing for punctuation when macro args;
OpenBSD-Commit-ID: e80343c16ce0420b2aec98701527cf90371bd0db
2023-08-28 19:50:03 +10:00
djm@openbsd.org 3867361ca6
upstream: explicit long long type in timing calculations (doesn't
matter, since the range is pre-clamped)

OpenBSD-Commit-ID: f786ed902d04a5b8ecc581d068fea1a79aa772de
2023-08-28 14:07:56 +10:00
djm@openbsd.org 7603ba7126
upstream: 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@

OpenBSD-Commit-ID: 02231ddd4f442212820976068c34a36e3c1b15be
2023-08-28 13:34:10 +10:00
djm@openbsd.org dce6d80d2e
upstream: Introduce a transport-level ping facility
This adds a pair of SSH transport protocol messages SSH2_MSG_PING/PONG
to implement a ping capability. These messages use numbers in the "local
extensions" number space and are advertised using a "ping@openssh.com"
ext-info message with a string version number of "0".

ok markus@

OpenBSD-Commit-ID: b6b3c4cb2084c62f85a8dc67cf74954015eb547f
2023-08-28 13:34:01 +10:00
tobhe@openbsd.org d2d247938b
upstream: Log errors in kex_exchange_identification() with level
verbose instead of error to reduce preauth log spam. All of those get logged
with a more generic error message by sshpkt_fatal().

feedback from sthen@
ok djm@

OpenBSD-Commit-ID: bd47dab4695b134a44c379f0e9a39eed33047809
2023-08-28 13:34:00 +10:00
djm@openbsd.org 9d7193a835
upstream: correct math for ClientAliveInterval that caused the
probes to be sent less frequently than configured; from Dawid Majchrzak

OpenBSD-Commit-ID: 641153e7c05117436ddfc58267aa267ca8b80038
2023-08-28 13:34:00 +10:00
Darren Tucker 3c6ab63b38
Include Portable version in sshd version string.
bz#3608, ok djm@
2023-08-25 14:48:02 +10:00
Darren Tucker 17fa6cd10a
obsd-arm64 host is real hardware...
so put in the correct config location.
2023-08-21 19:47:58 +10:00
Darren Tucker 598ca75c85
Add OpenBSD ARM64 test host. 2023-08-21 19:17:27 +10:00
Darren Tucker 1acac79bfb
Add test for zlib development branch. 2023-08-21 19:17:18 +10:00
djm@openbsd.org 84efebf352
upstream: want stdlib.h for free(3)
OpenBSD-Commit-ID: 743af3c6e3ce5e6cecd051668f0327a01f44af29
2023-08-21 14:38:38 +10:00
Darren Tucker cb4ed12ffc
Fix zlib version check for 1.3 and future version.
bz#3604.
2023-08-19 07:39:08 +10:00
Darren Tucker 25b75e21f1
Add 9.4 branch to CI status page. 2023-08-18 12:50:32 +10:00
djm@openbsd.org 803e22eabd
upstream: fix regression in OpenSSH 9.4 (mux.c r1.99) that caused
multiplexed sessions to ignore SIGINT under some circumstances. Reported by /
feedback naddy@, ok dtucker@

OpenBSD-Commit-ID: 4d5c6c894664f50149153fd4764f21f43e7d7e5a
2023-08-18 12:02:41 +10:00
djm@openbsd.org e706bca324
upstream: defence-in-depth MaxAuthTries check in monitor; ok markus
OpenBSD-Commit-ID: 65a4225dc708e2dae71315adf93677edace46c21
2023-08-18 11:44:41 +10:00