Lion Cipher Lab

Assess an SSH server's crypto with ssh-audit, harden it, and verify the fix

Why it matters

SSH is the front door of almost every Linux server, and in a penetration test or vulnerability assessment one of the first things you check on that door is not the password but the cryptography it is willing to speak. When an SSH client connects, the two sides negotiate which key exchange, host-key type, cipher and integrity check to use. If the server still offers an old one -- a SHA-1 based integrity check, a small Diffie-Hellman group -- that is an attack surface: any client (or anyone sitting in the network path) that can steer the negotiation toward the weakest common choice gets a…

What you'll learn

Steps in this lab

  1. What you are assessing, and how this differs from the other SSH labs
  2. Stand up a throwaway OpenSSH server you own, on 127.0.0.1:2222
  3. Install ssh-audit and take the BEFORE measurement
  4. Read the report like an assessor: real problems versus cautious opinions
  5. Terrapin (CVE-2023-48795) in plain words: what the warning means and how it is fixed
  6. Harden the four algorithm lists, validate, restart, and take the AFTER measurement
  7. Prove the cost: an older client is now refused
  8. Make it repeatable: ssh-audit policy mode, and catching drift
  9. Going further: a stricter config that scores zero, and why you might not ship it
  10. Write it up as a finding: evidence, severity, remediation, verification
  11. Tear it down

Open the full interactive lab →