Сертификат пользователя и сертификат компьютера

Обычно при развертывании решения SSL VPN с проверкой сертификата я развертывал внутренний MS CA и настраивал GPO для выдачи компьютерных сертификатов. Имя пользователя / пароль с MFA доказывает, что пользователь является тем, кем они себя называют, а сертификат компьютера подтверждает, что компьютер принадлежит домену компании. Недавно возникла проблема с клиентом vpn, который не мог читать хранилище локального компьютера без локального администратора, и в соответствии с политикой компании у пользователей нет локального администратора. Предлагаемое решение заключалось в выпуске сертификата пользователя. Теперь по умолчанию шаблон для пользовательских сертификатов позволяет их экспортировать, поэтому мы создали специальный шаблон, который не допускает экспорт.

В каждом руководстве, которое вы читаете по распространению внутренних сертификатов для этого типа настройки, используются компьютерные сертификаты, но вопрос почему? Действительно ли он более или менее безопасен, чем сертификат пользователя? Вы не можете получить сертификат пользователя с компьютера, не являющегося доменом, что и для сертификатов компьютеров. На самом деле кажется, что он выполняет ту же цель, с той лишь разницей, что сертификат компьютера находится в хранилище локального компьютера, а сертификат пользователя находится в хранилище сертификатов пользователя. Вам нужен локальный администратор для чтения хранилища локального компьютера, но на самом деле это не так сильно повышает безопасность, поскольку закрытые ключи сертификата компьютера или пользователя не могут быть экспортированы. Если вы установили некоторые из дополнительных веб-плагинов в CA, вы могли бы позволить компьютерам, не относящимся к домену, запрашивать сертификаты, но они не включены.

В конце концов, вы должны находиться на компьютере домена, чтобы получить Сертификат пользователя, выданный вам, чтобы подтвердить, что это актив компании. Неужели с пользовательскими сертификатами не будет проще работать, ведь у них нет головной боли, связанной с тем, что локальный администратор даже их читает? Я не могу придумать разницы с точки зрения безопасности, но если это так, то почему каждое руководство предлагает компьютерные сертификаты? Пытаясь проверить это, чтобы увидеть, есть ли какой-то угол, который я упускаю, подумал, что было бы полезно спросить более широкое сообщество, так как я обсуждал это со многими коллегами, и никто не мог подумать о проблеме или проблеме безопасности.

1
задан 7 June 2018 в 23:10
2 ответа

В каждом руководстве, которое вы читаете по распространению внутренних сертификатов для такого рода настроек, используются компьютерные сертификаты, но вопрос в том, почему ? Действительно ли он более или менее безопасен, чем сертификат пользователя?

Это не (обязательно) о безопасности; они используют компьютерные сертификаты, потому что это наиболее подходящее решение для их случая использования. Вы уже обнаружили несколько причин, по которым использование пользовательских сертификатов менее удобно: вам нужно было создать собственный шаблон, убедиться, что AD не позволяет пользователям присоединять к домену компьютеры, не принадлежащие компании, и убедиться, что центр сертификации не имел подключаемого модуля, который позволял бы компьютерам, не относящимся к домену, запрашивать сертификаты пользователей.

Поскольку существуют веские причины, не связанные с безопасностью, для использования компьютерных сертификатов, тот факт, что большинство из них действительно предоставляет мало или совсем не доказывает, что безопасно ли использование пользовательских сертификатов. Однако у вас есть ограничение, которого у них не было: по какой-то причине ваше программное обеспечение VPN-клиента не может использовать сертификаты компьютеров. Я предполагаю, что вы уже тщательно это исследовали. Идеальным решением была бы смена клиентов, но это было бы дорого. Следовательно, вам необходимо сделать вывод о том, какой риск представляет использование пользовательских сертификатов.

Лучший (и единственно безопасный) способ сделать это суждение - это проконсультироваться со специалистом, который определенно не я. Я откладывал публикацию ответа в надежде, что это сделает кто-то с соответствующим опытом, но не тут-то было. Итак, как бы мало это ни стоило, вот как я бы на это посмотрел. Однако, если у вас есть возможность потратить, надеюсь, скромную сумму денег на опытного консультанта, я рекомендую вам это сделать.

Я вижу только два способа, которыми пользователь может попытаться обойти ограничения, на каких компьютерах он можно использовать. Они могут попытаться экспортировать свой сертификат пользователя с компьютера домена на компьютер, не являющийся доменом. Или они могут попытаться обманом заставить центр сертификации выдать сертификат пользователя на машину, не являющуюся доменом.

Я провел небольшое исследование, и оно предполагает, что, хотя сертификаты пользователя хранятся в файлах, к которым у пользователя есть доступ, они зашифрованы службой изоляции ключей CNG. Если у пользователя нет прав администратора, это должно предотвратить экспорт ключей. (Если у пользователя есть доступ администратора, он, вероятно, может так же легко экспортировать ключ компьютера, как и ключ пользователя.)

Я менее оптимистичен по поводу второго варианта. Насколько мне известно, нет документально подтвержденного обещания, что центр сертификации приложит какие-либо усилия для проверки подлинности компьютера при генерации ключа пользователя. Тот факт, что для этого существует задокументированная процедура и вы убедились, что соответствующий компонент не установлен, не является хорошим доказательством того, что это единственно возможный способ.

Мои исследования показывают, что запросы сертификатов выполняются через DCOM, и хотя настройки DCOM по умолчанию не работают для клиента, не являющегося доменом, пытающегося подключиться к серверу домена, только клиент должен быть перенастроен для успешного установления соединения. Очевидно, я на самом деле не пробовал это, но в принципе думаю, что это сработает.

С другой стороны, клиенту все равно потребуется возможность подключиться к CA, чтобы сделать запрос, и если клиент находится за пределами вашей сети, то он должен быть заблокирован вашим брандмауэром. И, учитывая контекст, я предполагаю, что у вас уже есть меры, чтобы отговорить сотрудников от подключения персональных компьютеров к рабочей сети. Итак, с этой точки зрения, хотя вы, возможно, не так безопасны, как могли бы, вы, вероятно, в такой безопасности, насколько вам нужно, в зависимости, конечно, от вашего профиля риска. (Я собираюсь предположить, что у вас здесь нет ядерного оружейного завода.)

В конце концов, ваша лучшая защита в любом случае не будет технологической. Если ваш персонал осведомлен о политике и предупредил, что использование VPN регистрируется и отслеживается, очень немногие из них, вероятно, попытаются обойти правила, даже если они достаточно квалифицированы, чтобы найти способ сделать это.

0
ответ дан 4 December 2019 в 03:56

Эти сертификаты разные, потому что они служат разным целям. Речь идет о детализации. По сути, два упомянутых вами типа сертификатов надежно идентифицируют два основных типа вещей в вашей сети. Компьютеры и пользователи. Вы можете отозвать сертификат пользователя отдельно от его рабочей станции или иным образом отдельно управлять доступом и доверием. Пользовательские сертификаты имеют отличительное имя пользователя, компьютерные сертификаты имеют полное доменное имя компьютера.

Еще одна вещь, о которой я могу думать, - это безопасность на основе портов 802.11x. Это предотвращает нормальную связь через подключенный коммутатор до тех пор, пока вы не пройдете аутентификацию. Сертификаты - это один из способов аутентификации с использованием протокола 802.11x. Если сертификат пользователя не импортирован на какой-то случайный компьютер, на который они никогда не входили, прежде чем это могло стать проблемой, вы выпускаете сертификаты устройств.

0
ответ дан 4 December 2019 в 03:56

Теги

Похожие вопросы