bugzilla-daemon at mindrot.org
2024-Jan-24 11:23 UTC
[Bug 3659] New: Certificates are ignored when listing revoked items in a (binary) revocation list
https://bugzilla.mindrot.org/show_bug.cgi?id=3659 Bug ID: 3659 Summary: Certificates are ignored when listing revoked items in a (binary) revocation list Product: Portable OpenSSH Version: 9.2p1 Hardware: All OS: All Status: NEW Severity: minor Priority: P5 Component: ssh-keygen Assignee: unassigned-bugs at mindrot.org Reporter: webmaster at mmf-research.de 1. Create a blank binary revocation list: ssh-keygen -Qlf my.krl # KRL version 0 # Generated at 20240122T162948 2. Revoke a key, and a certificate: ssh-keygen -kuf my.krl user1_id25519.pub user2_id25519-cert.pub Revoking from user1_id25519.pub Revoking from user2_id25519-cert.pub 3. Check the successful revocation: ssh-keygen -Qf my.krl user1_id25519.pub user2_id25519-cert.pub > user1_id25519.pub (USER1 ID): REVOKED > user2_id25519-cert.pub (USER2 ID): REVOKED 4. Displaying the updated content of the revocation list will ignore the certificate: ssh-keygen -Qlf my.krl # KRL version 0 # Generated at 20240122T162948 hash: SHA256:SHA256:3IJIl... # ssh-ed25519 # CA key ssh-ed25519 SHA256:f4o3Bp... serial: 3007 I would expect the revoked certificate to show up in this list, too. Note that in my setup, the SSH daemon correctly denies login with the revoked certificate. It seems that just the KRL/CRL content listing is affected. -- You are receiving this mail because: You are watching the assignee of the bug.
bugzilla-daemon at mindrot.org
2024-Jan-24 23:36 UTC
[Bug 3659] Certificates are ignored when listing revoked items in a (binary) revocation list
https://bugzilla.mindrot.org/show_bug.cgi?id=3659 Damien Miller <djm at mindrot.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |WORKSFORME Status|NEW |RESOLVED CC| |djm at mindrot.org --- Comment #1 from Damien Miller <djm at mindrot.org> --- This is working correctly. You revoked two keys. A plain public key that is revoked by its hash: hash: SHA256:SHA256:3IJIl... # ssh-ed25519 and a certificate. The certificate is revoked by its CA key and serial number, that is the last two lines of your output: # CA key ssh-ed25519 SHA256:f4o3Bp... serial: 3007 So both keys are definitely represented in the KRL dump. Generally, the KRL code tries to write as small a file as possible. For Certificates this means that it uses the smallest unique identifier which is the serial number (for each given CA. If you don't like this then you can use a KRL spec file to control how the KRL revokes the keys. Something like: (printf "sha256: "; cat user1_id25519.pub; \ printf "\nsha256: "; cat user2_id25519-cert.pub; printf "\n") > krl.spec ssh-keygen -kuf my.krl krl.spec See the "KEY REVOCATION LISTS" section of the ssh-keygen(1) manpage for more information on KRL spec files. -- You are receiving this mail because: You are watching someone on the CC list of the bug. You are watching the assignee of the bug.