USENIX Security2024Top-tier venue
Terrapin Attack: Breaking SSH Channel Integrity By Sequence Number Manipulation
Fabian Bäumer, Marcus Brinkmann, Jörg Schwenk
Abstract
The SSH protocol provides secure access to network services, particularly remote terminal login and file transfer within organizational networks and to over 15 million servers on the open internet. SSH uses an authenticated key exchange to establish a secure channel between a client and a server, which protects the confidentiality and integrity of messages sent in either direction. The secure channel prevents message manipulation, replay, insertion, deletion, and reordering. At the network level, SSH uses the Binary Packet Protocol over TCP. In this paper, we show that the SSH Binary Packet Protocol is no longer a secure channel: SSH channel integrity (INT-PST, aINT-PTXT, and INT-sfCTF) is broken for three widely used encryption modes. This allows prefix truncation attacks where encrypted packets at the beginning of the SSH channel can be deleted without the client or server noticing it. We demonstrate several real-world applications of this attack. We show that we can fully break SSH extension negotiation (RFC 8308), such that an attacker can downgrade the public key algorithms for user authentication or turn off a new countermeasure against keystroke timing attacks introduced in OpenSSH 9.5. Further, we identify an implementation flaw in AsyncSSH that, together with prefix truncation, allows an attacker to redirect the victim's login into a shell controlled by the attacker. We also performed an internet-wide scan and found that 71.6% of SSH servers support a vulnerable encryption mode, while 63.2% even list it as their preferred choice. We identify two root causes that enable these attacks: First, the SSH handshake supports optional messages that are not authenticated. Second, SSH does not reset message sequence numbers when activating encryption keys. Based on this analysis, we propose effective and backward-compatible changes to SSH that mitigate our attacks.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 2c074c7b-21aa-46a9-9dea-45c1a4c68758Cited by top-tier papers4
- Finding SSH Strict Key Exchange Violations by State LearningFabian Bäumer, Marcel Maehren, Marcus Brinkmann, Jörg SchwenkCCS 2025 · 1 citation
- Hop: A Modern Transport and Remote Access ProtocolPaul Flammarion, George Hosono, Wilson Nguyen, Laura Bauman et al.USENIX Security 2026
- Crossing the Streams: SSH Plaintext Recovery via a Common Compression Context in Multiplexed ChannelsFabian Bäumer, Marcus BrinkmannCCS 2026
- Catch-22: Uncovering Compromised Hosts using SSH Public KeysCristian Munteanu, Georgios Smaragdakis, Anja Feldmann, Tobias FiebigUSENIX Security 2025
Builds on4
- SoK: Computer-Aided CryptographyManuel Barbosa, Gilles Barthe, Karthik Bhargavan, Bruno Blanchet et al.S&P 2021 · 169 citations
- Transcript Collision Attacks: Breaking Authentication in TLS, IKE and SSHKarthikeyan Bhargavan, Gaëtan LeurentNDSS 2016 · 128 citations
- A Surfeit of SSH Cipher SuitesMartin R. Albrecht, Jean Paul Degabriele, Torben Brandt Hansen, Kenneth G. PatersonCCS 2016 · 36 citations
- SAPIC+: protocol verifiers of the world, unite!Vincent Cheval, Charlie Jacomme, Steve Kremer, Robert KünnemannUSENIX Security 2022
Related papers
- Post-Quantum Cryptographic Analysis of SSHBenjamin Bencina, Benjamin Dowling, Varun Maram, Keita XagawaS&P 2025
- "Make Sure DSA Signing Exponentiations Really are Constant-Time"Cesar Pereida García, Billy Bob Brumley, Yuval YaromCCS 2016 · 93 citations
- Passive SSH Key Compromise via LatticesKeegan Ryan, Kaiwen He, George Arnold Sullivan, Nadia HeningerCCS 2023 · 8 citations
- Downgrade Resilience in Key-Exchange ProtocolsKarthikeyan Bhargavan, Christina Brzuska, Cédric Fournet, Matthew Green et al.S&P 2016 · 54 citations
- Practical Privacy-Preserving Authentication for SSHLawrence Roy, Stanislav Lyakhov, Yeongjin Jang, Mike RosulekUSENIX Security 2022
