On 4/27/22 20:01, Wietse Venema wrote:
Michael Stroeder:
Either way a compromised CA or a compromise KDC is bad news...

Yes!

And one of my biggest concerns are bad operational practices. That's why
admins should not have to manually deal with crypto key files like
service keytabs or TLS server keys.

To implement strong (network) security, some system will have to
keep some secret somewhere. Few people can afford operating an HSM
(hardware security module), what are the remaining options.

With bad operational practices I think of the real-world cases of e.g. Kerberos service keytab files sent via unencrypted e-mail to an admin for installation, and keys never rotated later...

Or the enterprise CA private key accidently exported from MS CA and sent to an admin requesting a TLS server certs...

When designing systems I try to follow the principle of separating functions as much as possible. Actually, Wietse, already in the 90s I was heavily inspired by your work (TCP wrapper, multi-process design of postfix) and a book by Cheswick & Bellovin.

So even if you cannot afford a HSM you can e.g. use ssh-agent via Unix domain socket for your SSH-CA to avoid having to grant direct read access to the SSH-CA's private key to your SSH-CA service. Simple solutions, which you can isolate a bit more with stuff already available on many Linux systems (AppArmor or SELinux, systemd sand-boxing, etc.).

Or similar the GnuPG key agent.

Or LoadCredential= in systemd.exec(5) also looks interesting.

Unfortunately there's no such ready-to-use component widely available for OpenSSL-based systems.

My question on openssl-users:

https://mta.openssl.org/pipermail/openssl-users/2020-April/012344.html

According to Rich's answer here there might be some code in the OpenSSL tracker.

https://mta.openssl.org/pipermail/openssl-users/2020-April/012345.html

Some years ago I also tried to use a PKCS#11 proxy. But I couldn't even compile its OCaml code. Nowadays there seem to be forked-again implementations in C. Not sure whether they work or are maintained.

Ciao, Michael.

Reply via email to