[Bug 2040406] Re: Merge openssh from Debian unstable for noble
Launchpad Bug Tracker
2040406 at bugs.launchpad.net
Fri Feb 2 17:44:52 UTC 2024
This bug was fixed in the package openssh - 1:9.6p1-3ubuntu1
---------------
openssh (1:9.6p1-3ubuntu1) noble; urgency=medium
* Merge with Debian unstable (LP: #2040406). Remaining changes:
- debian/rules: modify dh_installsystemd invocations for
socket-activated sshd.
- debian/openssh-server.postinst: handle migration of sshd_config
options to systemd socket options on upgrade.
- debian/README.Debian: document systemd socket activation.
- debian/patches/socket-activation-documentation.patch: Document
in sshd_config(5) that ListenAddress and Port no longer work.
- debian/openssh-server.templates: include debconf prompt
explaining when migration cannot happen due to multiple
ListenAddress values.
- debian/.gitignore: drop file.
- debian/openssh-server.postrm: remove systemd drop-ins for
socket-activated sshd on purge.
- debian/openssh-server.ucf-md5sum: update for Ubuntu delta
- debian/openssh-server.tmpfile,debian/systemd/ssh.service: Move
/run/sshd creation out of the systemd unit to a tmpfile config
so that sshd can be run manually if necessary without having to
create this directory by hand.
- debian/patches/systemd-socket-activation.patch: Fix sshd
re-execution behavior when socket activation is used.
- debian/tests/systemd-socket-activation: Add autopkgtest
for systemd socket activation functionality.
- d/p/test-set-UsePAM-no-on-some-tests.patch: set UsePAM=no
for some tests.
* Dropped changes, fixed upstream:
- d/p/fix-ftbfs-with-zlib13.patch: fix ftbfs when using zlib 1.3
(LP #2049552)
openssh (1:9.6p1-3) unstable; urgency=medium
* Allow passing extra ssh-agent arguments via
"/usr/lib/openssh/agent-launch start", making it possible to override
things like identity lifetime using a systemd drop-in unit (closes:
#1059639).
* Don't try to start rescue-ssh.target in postinst (LP: #2047082).
openssh (1:9.6p1-2) unstable; urgency=medium
* Improve detection of broken -fzero-call-used-regs=used (see
https://bugzilla.mindrot.org/show_bug.cgi?id=3645; fixes build on
ppc64/ppc64el).
openssh (1:9.6p1-1) unstable; urgency=medium
* Use single quotes in suggested ssh-keygen commands (closes: #1057835).
* Debconf translations:
- Catalan (thanks, Pablo Huguet; closes: #1049995).
* New upstream release (https://www.openssh.com/releasenotes.html#9.6p1):
- [CVE-2023-48795] ssh(1), sshd(8): implement protocol extensions to
thwart the so-called "Terrapin attack" discovered by Fabian Bäumer,
Marcus Brinkmann and Jörg Schwenk. This attack allows a MITM to effect
a limited break of the integrity of the early encrypted SSH transport
protocol by sending extra messages prior to the commencement of
encryption, and deleting an equal number of consecutive messages
immediately after encryption starts. A peer SSH client/server would
not be able to detect that messages were deleted.
- [CVE-2023-51384] ssh-agent(1): when adding PKCS#11-hosted private keys
while specifying destination constraints, if the PKCS#11 token
returned multiple keys then only the first key had the constraints
applied. Use of regular private keys, FIDO tokens and unconstrained
keys are unaffected.
- [CVE-2023-51385] ssh(1): if an invalid user or hostname that contained
shell metacharacters was passed to ssh(1), and a ProxyCommand,
LocalCommand directive or "match exec" predicate referenced the user
or hostname via %u, %h or similar expansion token, then an attacker
who could supply arbitrary user/hostnames to ssh(1) could potentially
perform command injection depending on what quoting was present in the
user-supplied ssh_config(5) directive. OpenSSH 9.6 now bans most shell
metacharacters from user and hostnames supplied via the command-line.
- ssh(1), sshd(8): the RFC4254 connection/channels protocol provides a
TCP-like window mechanism that limits the amount of data that can be
sent without acceptance from the peer. In cases where this limit was
exceeded by a non-conforming peer SSH implementation, ssh(1)/sshd(8)
previously discarded the extra data. From OpenSSH 9.6, ssh(1)/sshd(8)
will now terminate the connection if a peer exceeds the window limit
by more than a small grace factor. This change should have no effect
of SSH implementations that follow the specification.
- ssh(1): add a %j token that expands to the configured ProxyJump
hostname (or the empty string if this option is not being used) that
can be used in a number of ssh_config(5) keywords.
- ssh(1): add ChannelTimeout support to the client, mirroring the same
option in the server and allowing ssh(1) to terminate quiescent
channels.
- ssh(1), sshd(8), ssh-add(1), ssh-keygen(1): add support for reading
ED25519 private keys in PEM PKCS8 format. Previously only the OpenSSH
private key format was supported.
- ssh(1), sshd(8): introduce a protocol extension to allow renegotiation
of acceptable signature algorithms for public key authentication after
the server has learned the username being used for authentication.
This allows varying sshd_config(5) PubkeyAcceptedAlgorithms in a
"Match user" block.
- ssh-add(1), ssh-agent(1): add an agent protocol extension to allow
specifying certificates when loading PKCS#11 keys. This allows the use
of certificates backed by PKCS#11 private keys in all OpenSSH tools
that support ssh-agent(1). Previously only ssh(1) supported this
use-case.
- ssh(1): when deciding whether to enable the keystroke timing
obfuscation, enable it only if a channel with a TTY is active.
- ssh(1): switch mainloop from poll(3) to ppoll(3) and mask signals
before checking flags set in signal handler. Avoids potential race
condition between signaling ssh to exit and polling.
- ssh(1): when connecting to a destination with both the AddressFamily
and CanonicalizeHostname directives in use, the AddressFamily
directive could be ignored.
- sftp(1): correct handling of the limits at openssh.com option when the
server returned an unexpected message.
- ssh(1): release GSS OIDs only at end of authentication, avoiding
unnecessary init/cleanup cycles.
- ssh_config(5): mention "none" is a valid argument to IdentityFile in
the manual.
- scp(1): improved debugging for paths from the server rejected for not
matching the client's glob(3) pattern in old SCP/RCP protocol mode.
- ssh-agent(1): refuse signing operations on destination-constrained
keys if a previous session-bind operation has failed. This may prevent
a fail-open situation in future if a user uses a mismatched ssh(1)
client and ssh-agent(1) where the client supports a key type that the
agent does not support.
* debian/run-tests: Supply absolute paths to tools.
* debian/run-tests: Enable interop tests for Dropbear.
openssh (1:9.5p1-2) unstable; urgency=medium
* Upload to unstable.
openssh (1:9.5p1-1) experimental; urgency=medium
* New upstream release (https://www.openssh.com/releasenotes.html#9.5p1):
- ssh-keygen(1): generate Ed25519 keys by default. Ed25519 public keys
are very convenient due to their small size. Ed25519 keys are
specified in RFC 8709 and OpenSSH has supported them since version 6.5
(January 2014).
- sshd(8): the Subsystem directive now accurately preserves quoting of
subsystem commands and arguments. This may change behaviour for exotic
configurations, but the most common subsystem configuration
(sftp-server) is unlikely to be affected.
- ssh(1): 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.
- ssh(1), sshd(8): 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 at openssh.com"
ext-info message with a string version number of "0".
- sshd(8): allow override of Subsystem directives in sshd Match blocks.
- scp(1): 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.
- ssh-keygen(1): handle cr+lf (instead of just cr) line endings in
sshsig signature files.
- ssh(1): interactive mode for ControlPersist sessions if they
originally requested a tty.
- sshd(8): make PerSourceMaxStartups first-match-wins.
- sshd(8): limit artificial login delay to a reasonable maximum (5s) and
don't delay at all for the "none" authentication mechanism.
- sshd(8): 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().
- sshd(8): correct math for ClientAliveInterval that caused the probes
to be sent less frequently than configured.
- ssh(1): fix regression in OpenSSH 9.4 (mux.c r1.99) that caused
multiplexed sessions to ignore SIGINT under some circumstances.
* Build-depend on dh-sequence-movetousr.
* Report DebianBanner setting in "sshd -G/-T" output (thanks, Rasmus
Villemoes; closes: #1053555).
-- Miriam España Acebal <miriam.espana at canonical.com> Mon, 29 Jan 2024
11:16:31 +0100
** Changed in: openssh (Ubuntu)
Status: In Progress => Fix Released
** Bug watch added: OpenSSH Portable Bugzilla #3645
https://bugzilla.mindrot.org/show_bug.cgi?id=3645
** CVE added: https://cve.mitre.org/cgi-bin/cvename.cgi?name=2023-48795
** CVE added: https://cve.mitre.org/cgi-bin/cvename.cgi?name=2023-51384
** CVE added: https://cve.mitre.org/cgi-bin/cvename.cgi?name=2023-51385
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to openssh in Ubuntu.
https://bugs.launchpad.net/bugs/2040406
Title:
Merge openssh from Debian unstable for noble
Status in openssh package in Ubuntu:
Fix Released
Bug description:
Scheduled-For: Backlog
Upstream: tbd
Debian: 1:9.4p1-1
Ubuntu: 1:9.3p1-1ubuntu3
The NOT SERVER TEAM team has maintained this package in the past and may be handling this merge.
If it turns out this needs a sync rather than a merge, please change
the tag 'needs-merge' to 'needs-sync', and (optionally) update the
title as desired.
### New Debian Changes ###
openssh (1:9.4p1-1) unstable; urgency=medium
* New upstream release (https://www.openssh.com/releasenotes.html#9.4p1):
- ssh-agent(1): PKCS#11 modules must now be specified by their full
paths. Previously dlopen(3) could search for them in system library
directories.
- ssh(1): allow forwarding Unix Domain sockets via ssh -W.
- ssh(1): add support for configuration tags to ssh(1). This adds a
ssh_config(5) 'Tag' directive and corresponding 'Match tag' predicate
that may be used to select blocks of configuration similar to the
pf.conf(5) keywords of the same name.
- ssh(1): add a 'match localnetwork' predicate. This allows matching on
the addresses of available network interfaces and may be used to vary
the effective client configuration based on network location.
- ssh(1), sshd(8), ssh-keygen(1): infrastructure support for KRL
extensions. This defines wire formats for optional KRL extensions and
implements parsing of the new submessages. No actual extensions are
supported at this point.
- sshd(8): AuthorizedPrincipalsCommand and AuthorizedKeysCommand now
accept two additional %-expansion sequences: %D which expands to the
routing domain of the connected session and %C which expands to the
addresses and port numbers for the source and destination of the
connection.
- ssh-keygen(1): increase the default work factor (rounds) for the
bcrypt KDF used to derive symmetric encryption keys for passphrase
protected key files by 50%.
- ssh-agent(1): improve isolation between loaded PKCS#11 modules by
running separate ssh-pkcs11-helpers for each loaded provider.
- ssh(1): make -f (fork after authentication) work correctly with
multiplexed connections, including ControlPersist (closes: #348741).
- ssh(1): make ConnectTimeout apply to multiplexing sockets and not just
to network connections.
- ssh-agent(1), ssh(1): improve defences against invalid PKCS#11 modules
being loaded by checking that the requested module contains the
required symbol before loading it.
- sshd(8): fix AuthorizedPrincipalsCommand when AuthorizedKeysCommand
appears before it in sshd_config. Since OpenSSH 8.7 the
AuthorizedPrincipalsCommand directive was incorrectly ignored in this
situation.
- sshd(8), ssh(1), ssh-keygen(1): remove vestigial support for KRL
signatures. When the KRL format was originally defined, it included
support for signing of KRL objects. However, the code to sign KRLs and
verify KRL signatues was never completed in OpenSSH. This release
removes the partially-implemented code to verify KRLs. All OpenSSH
tools now ignore KRL_SECTION_SIGNATURE sections in KRL files.
- All: fix a number of memory leaks and unreachable/harmless integer
overflows.
- ssh-agent(1), ssh(1): don't truncate strings logged from PKCS#11
modules.
- sshd(8), ssh(1): better validate CASignatureAlgorithms in ssh_config
and sshd_config. Previously this directive would accept certificate
algorithm names, but these were unusable in practice as OpenSSH does
not support CA chains.
- ssh(1): make `ssh -Q CASignatureAlgorithms` only list signature
algorithms that are valid for CA signing. Previous behaviour was to
list all signing algorithms, including certificate algorithms.
- ssh-keyscan(1): gracefully handle systems where rlimits or the maximum
number of open files is larger than INT_MAX.
- ssh-keygen(1): fix 'no comment' not showing on when running
`ssh-keygen -l` on multiple keys where one has a comment and other
following keys do not. bz3580
- scp(1), sftp(1): adjust ftruncate() logic to handle servers that
reorder requests. Previously, if the server reordered requests then
the resultant file would be erroneously truncated.
- ssh(1): don't incorrectly disable hostname canonicalization when
CanonicalizeHostname=yes and ProxyJump was explicitly set to 'none'.
- scp(1): when copying local->remote, check that the source file exists
before opening an SFTP connection to the server (closes: #59255).
- sshd(8): provide a replacement for the SELinux matchpathcon()
function, which is deprecated.
- All: relax libcrypto version checks for OpenSSL >=3 (closes:
#1035623). Beyond OpenSSL 3.0, the ABI compatibility guarantees are
wider (only the library major must match instead of major and minor in
earlier versions).
- ssh-copy-id(1): Special case OpenWrt instead of Dropbear
(LP: #1966886).
-- Colin Watson <cjwatson at debian.org> Sat, 02 Sep 2023 21:02:53
+0100
openssh (1:9.3p2-1) unstable; urgency=high
* New upstream release (https://www.openssh.com/releasenotes.html#9.3p2):
- [CVE-2023-38408] Fix a condition where specific libraries loaded via
ssh-agent(1)'s PKCS#11 support could be abused to achieve remote code
execution via a forwarded agent socket.
-- Colin Watson <cjwatson at debian.org> Wed, 19 Jul 2023 22:49:14
+0100
openssh (1:9.3p1-1) unstable; urgency=medium
* Debconf translations:
- Romanian (thanks, Remus-Gabriel Chelu; closes: #1033178).
* Properly fix date of 1:3.0.2p1-2 changelog entry (closes: #1034425).
* New upstream release (https://www.openssh.com/releasenotes.html#9.3p1):
- [CVE-2023-28531] ssh-add(1): when adding smartcard keys to
ssh-agent(1) with the per-hop destination constraints (ssh-add -h ...)
added in OpenSSH 8.9, a logic error prevented the constraints from
being communicated to the agent. This resulted in the keys being added
without constraints. The common cases of non-smartcard keys and keys
without destination constraints are unaffected. This problem was
### Old Ubuntu Delta ###
openssh (1:9.3p1-1ubuntu3) mantic; urgency=medium
* d/p/fix-authorized-principals-command.patch: Fix the situation where
sshd ignores AuthorizedPrincipalsCommand if AuthorizedKeysCommand
is also set by checking if the value pointed to by the pointer
'charptr' is NULL. (LP: #2031942)
-- Michal Maloszewski <michal.maloszewski at canonical.com> Thu, 24 Aug
2023 15:20:27 +0200
openssh (1:9.3p1-1ubuntu2) mantic; urgency=medium
* SECURITY UPDATE: remote code execution relating to PKCS#11 providers
- debian/patches/CVE-2023-38408-1.patch: terminate process if requested
to load a PKCS#11 provider that isn't a PKCS#11 provider in
ssh-pkcs11.c.
- debian/patches/CVE-2023-38408-2.patch: disallow remote addition of
FIDO/PKCS11 provider in ssh-agent.1, ssh-agent.c.
- debian/patches/CVE-2023-38408-3.patch: ensure FIDO/PKCS11 libraries
contain expected symbols in misc.c, misc.h, ssh-pkcs11.c, ssh-sk.c.
- CVE-2023-38408
-- Marc Deslauriers <marc.deslauriers at ubuntu.com> Mon, 24 Jul 2023
15:01:06 -0400
openssh (1:9.3p1-1ubuntu1) mantic; urgency=medium
* Merge with Debian unstable (LP: #2025664). Remaining changes:
- debian/rules: modify dh_installsystemd invocations for
socket-activated sshd
- debian/openssh-server.postinst: handle migration of sshd_config options
to systemd socket options on upgrade.
- debian/README.Debian: document systemd socket activation.
- debian/patches/socket-activation-documentation.patch: Document in
sshd_config(5) that ListenAddress and Port no longer work.
- debian/openssh-server.templates: include debconf prompt explaining
when migration cannot happen due to multiple ListenAddress values
- debian/.gitignore: drop file
- debian/openssh-server.postrm: remove systemd drop-ins for
socket-activated sshd on purge
- debian/openssh-server.ucf-md5sum: update for Ubuntu delta
- debian/openssh-server.tmpfile,debian/systemd/ssh.service: Move
/run/sshd creation out of the systemd unit to a tmpfile config so
that sshd can be run manually if necessary without having to create
this directory by hand.
- debian/patches/systemd-socket-activation.patch: Fix sshd
re-execution behavior when socket activation is used
- debian/tests/systemd-socket-activation: Add autopkgtest for systemd socket
activation functionality.
- d/p/test-set-UsePAM-no-on-some-tests.patch: set UsePAM=no for some tests
- Ensure smooth upgrade path from versions affected by LP: #2020474:
+ debian/openssh-server.postint: do not try to restart systemd units,
and instead indicate that a reboot is required
+ debian/tests/systemd-socket-activation: Reboot the testbed before starting the test
+ debian/rules: Do not stop ssh.socket on upgrade
-- Nick Rosbrook <nick.rosbrook at canonical.com> Mon, 03 Jul 2023
11:34:47 -0400
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openssh/+bug/2040406/+subscriptions
More information about the foundations-bugs
mailing list