Re: PKI self-service
В сообщении от [Чт 2016-09-15 12:53 +0300]
Bogdan <bogdar@gmail.com> пишет:
> Доступные мне протоколы авторизации позволяют передавать только плейнтекст,
> либо заведомо уязвимые хэши паролей (md5 или ntlm) поверх TLS-сессии.
> Защищенность такой сессии зависит исключительно от корректности настройки
> (принудительная проверка "моего" CA) на стороне клиента, который будет
> выполнять настройки подключения сам. Honeypot и/или MitM технически просты и
> достаточно вероятны в силу передачи данных по незащищенной и неконтролируемой
> среде. Я хочу полностью отказаться от такого типа авторизации в сервисе и
> перейти на авторизацию с использованием PKI. Вероятность успешного MitM/
> honeypot для веб-сайта раздающего сертификаты существенно меньше, чем для
> целевого сервиса.
Вы опасаетесь что с помощью MitM взломают TLS-сессию и поэтому хотите
авторизацию по сертификату клиента. Это маловероятно, конечно такое
решение надежно, но очень не удобно. Хотя если у вас клиенты технически
подкованные, например хранят сертификат и ключ на смарткарте, то да, а
так есть и другие варианты [1].
Кстати, вчера вы спрашивали насчет проверки отозванных сертификатов,
оказывается есть простой вариант OCSP-сервера [2] (CRL считается
устаревшим). Смысл такой, поднимаем OCSP-сервер например,
http://ocsp.example.com, прописываем его в сертификате и браузер сам
будет проверять отозванные сертификаты, детали здесь [3]. Причем
OCSP-ответы не обязательно подписывать тем же ключом что и сертификат,
можно выписать дополнительный сертификат специально для OCSP. То есть
центр сертификации может (или должен) быть не подключенным к сети, а
работу с OCSP можно доверить другой организации.
Однако, это всё типовые решения, вам судя по всему они не подходят, у
вас какой-то интересный сервис, если вы опишите общую архитектуру или
поставленную задачу, тогда и ответы могут быть поточнее.
[1]: https://habrahabr.ru/company/dataart/blog/262817/
[2]: http://backreference.org/2010/05/09/ocsp-verification-with-openssl/
[3]: https://jamielinux.com/docs/openssl-certificate-authority/online-certificate-status-protocol.html
--
Коротаев Руслан
https://blog.kr.pp.ru
Reply to: