[prev in list] [next in list] [prev in thread] [next in thread]
List: oss-security
Subject: Re: [oss-security] CVE-2023-48795: Prefix Truncation Attacks in SSH Specification (Terrapin Attack)
From: Marcus Meissner <meissner () suse ! de>
Date: 2023-12-20 8:41:07
Message-ID: 20231220084053.GD25373 () suse ! de
[Download RAW message or body]
On Tue, Dec 19, 2023 at 01:31:03PM -0800, Alan Coopersmith wrote:
> On 12/18/23 08:08, Fabian Bäumer wrote:
> > ### Mitigations
> >
> > To mitigate this protocol vulnerability, OpenSSH suggested a so-called
> > "strict kex" which alters the SSH handshake to ensure a
> > Man-in-the-Middle attacker cannot introduce unauthenticated messages as
> > well as convey sequence number manipulation across handshakes. Support
> > for strict key exchange has been added to a variety of SSH
> > implementations, including OpenSSH itself, PuTTY, libssh, and more.
> >
> > **Warning: To take effect, both the client and server must support this
> > countermeasure.**
>
> Open source projects I see have implemented this already are:
>
> - AsyncSSH 2.14.2:
> https://asyncssh.readthedocs.io/en/latest/changes.html#release-2-14-2-18-dec-2023
>
> - Dropbear git:
> https://github.com/mkj/dropbear/commit/6e43be5c7b99dbee49dc72b6f989f29fdd7e9356
>
> - Erlang ssh 5.1.1:
> https://www.erlang.org/doc/apps/ssh/notes
>
> - golang.org/x/crypto 0.17.0:
> https://groups.google.com/g/golang-announce/c/qA3XtxvMUyg
>
> - libssh 0.10.6 and 0.9.8:
> https://www.libssh.org/2023/12/18/libssh-0-10-6-and-libssh-0-9-8-security-releases/
>
> - libssh2 git:
> https://github.com/libssh2/libssh2/issues/1290
> https://github.com/libssh2/libssh2/pull/1291
>
> - OpenSSH 9.6:
> https://www.openssh.com/txt/release-9.6
>
> - Paramiko 3.4.0:
> https://www.paramiko.org/changelog.html#3.4.0
>
> - PuTTY 0.80:
> https://lists.tartarus.org/pipermail/putty-announce/2023/000037.html
>
> - russh 0.40.2:
> https://github.com/warp-tech/russh/releases/tag/v0.40.2
>
> - SFTPGo 2.5.6:
> https://github.com/drakkan/sftpgo/releases/tag/v2.5.6
>
> - ssh2 [node.js/npm] 1.15.0:
> https://github.com/mscdex/ssh2/commits/v1.15.0
>
> - Tera Term 5.1:
> https://github.com/TeraTermProject/teraterm/releases/tag/v5.1
>
> - Thrussh 0.35.1:
> https://pijul.org/posts/2023-12-18-thrussh-cve/
>
> There's also some open bugs against these open source projects that are not yet handled:
>
> - Apache Mina:
> https://github.com/apache/mina-sshd/issues/445
>
> - ProFTPD (mod_sftp):
> https://github.com/proftpd/proftpd/issues/1760
>
> - SSHJ:
> https://github.com/hierynomus/sshj/issues/916
some more
Jsch (Java SSH): release 0.2.15 fixes it https://github.com/mwiede/jsch/releases/tag/jsch-0.2.15
Also apache-sshd and trilead-ssh2 as Java SSH implementations are
affected.
tinyssh affected, has a ticket open.
rubygem-net-ssh also affected.
The rust ecosystem has a ssh crate which fixates its used libssh version. "libssh2-sys", so
crates and binaries referencing will need updates.
python Twisted has an SSH stack too, but no chacha or etm macs so far.
Ciao, Marcus
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic