Почему многие администраторы используют политику «Отключить автоматическое обновление корневых сертификатов»?

40

Моя компания распространяет установщик Windows для серверного продукта. В соответствии с передовой практикой он подписывается с использованием сертификата. В соответствии с рекомендацией Microsoft мы используем сертификат подписи кода GlobalSign , который, по утверждению Microsoft, распознается всеми версиями Windows Server по умолчанию.

Теперь все это работает хорошо, если сервер не был настроен с помощью групповой политики: Конфигурация компьютера / Административные шаблоны / Система / Управление связью через Интернет / Параметры связи через Интернет / Отключите автоматическое обновление корневого сертификата как включенное .

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

Требуемый файл не может быть установлен, потому что у CAB-файла [длинный путь к CAB-файлу] неверная цифровая подпись. Это может указывать на то, что кабинетный файл поврежден.

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

Мы написали статью для наших клиентов в КБ , но на самом деле мы не хотим, чтобы проблема возникла вообще, поскольку мы действительно заботимся об опыте работы с клиентами.

Некоторые вещи, которые мы заметили при исследовании этого:

  1. При новой установке Windows Server сертификат Globalsign не отображается в списке доверенных корневых прав.
  2. Если Windows Server не подключен к Интернету, установка нашего программного обеспечения работает нормально. В конце установки присутствует сертификат Globalsign (не импортированный нами). В фоновом режиме Windows прозрачно установить его при первом использовании.

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

Йерун Ритмейер
источник
14
Новые корневые сертификаты, появляющиеся во всех системах без предупреждения или документации, являются проблемой для некоторых специалистов по безопасности. Они просто не доверяют Microsoft полностью проверять новые корневые сертификаты, по крайней мере, самостоятельно. Не помогает, когда Microsoft продвигает 18 новых корневых сертификатов без какого-либо уведомления.
Брайан
Разве вы не можете проверить, доступен ли сертификат в системе, и предложить загрузить сертификат вручную с вашего веб-сайта, если обновление отключено?
Falco
@falco Нет, сертификат должен быть на месте, прежде чем мы сможем запустить собственную логику для обнаружения таких вещей. В этом весь смысл цифровой подписи установщиков. Кроме того, если администраторы отключили обновление корневых сертификатов, они не будут рады позволить стороннему поставщику сделать это.
Йерун Ритмейер
Тогда вы могли бы предоставить веб-сайт, который проверяет сертификат, который пользователи могут посетить до установки вашего продукта? Как "посетить .... чтобы проверить, совместима ли ваша система" и на веб-сайте отобразить шаги для установки сертификата, если вы обнаружите, что его нет?
Falco
1
@falco, который у нас есть (в некоторой степени), см. ссылку на статью KB в моем вопросе. Также ... люди не читают инструкции.
Йерун Ритмейер

Ответы:

33

В конце 2012 - начале 2013 года возникла проблема с автоматическим обновлением корневого сертификата. Временное исправление состояло в том, чтобы отключить автоматические обновления, поэтому частично эта проблема является исторической.

Другая причина - программа доверенных корневых сертификатов и распространение корневых сертификатов, которые (перефразируя Microsoft ) ...

Корневые сертификаты обновляются в Windows автоматически. Когда [система] обнаруживает новый корневой сертификат, программное обеспечение проверки цепочки сертификатов Windows проверяет соответствующее расположение Центра обновления Майкрософт для корневого сертификата.

Пока все хорошо, но потом ...

Если он его находит, он загружает его в систему. Для пользователя, опыт без шва. Пользователь не видит никаких диалоговых окон безопасности или предупреждений. Загрузка происходит автоматически, за кадром.

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

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

Джеймс Снелл
источник
13
A great number of sysadmins [...] don't like making changes to things involving security that they don't fully understand believing it to be some black art.Да. Грустно, но верно.
HopelessN00b
8
@ HopelessN00b Итак, вы бы предпочли, чтобы они свободно вносили изменения в конфигурацию, связанные с безопасностью, которые они до конца не понимали? Это кажется гораздо более пугающим предложением для меня.
Джошуа Ширер
11
@JoshuaShearer Я бы предпочел, чтобы они поняли или перестали называть себя сисадминами.
Кевин Крумвиде
2
@JoshuaShearer Как сказал Кевин, если они не понимают безопасность, они не должны быть сисадминами, и я считаю, что это страшное предложение - иметь администратора, который думает, что безопасность - это какая-то черная магия или вудо.
HopelessN00b
2
@JoshuaShearer - так как они не понимают, что это , возможно , спорный вопрос , поскольку они не будут знать, что они уже есть правильно или нет ... Во многих малых и средних предприятий «Администрирование» является "good with computers"потому , что они имеют самые последние блестящие iThings а не настоящий профессионал.
Джеймс Снелл
11

Компонент « Автоматическое обновление корневых сертификатов» предназначен для автоматической проверки списка доверенных лиц на веб-узле Microsoft Windows Update. В частности, на локальном компьютере хранится список доверенных корневых центров сертификации (ЦС). Когда приложению предоставляется сертификат, выданный ЦС, оно проверяет локальную копию списка доверенных корневых ЦС. Если сертификата нет в списке, компонент автоматического обновления корневых сертификатов свяжется с веб-узлом Microsoft Windows Update, чтобы узнать, доступно ли обновление. Если ЦС был добавлен в список доверенных ЦС корпорации Майкрософт, его сертификат будет автоматически добавлен в хранилище доверенных сертификатов на компьютере.

Почему так часто отключают обновление корневых сертификатов?

Короткий ответ, вероятно, о контроле. Если вы хотите контролировать доверенные корневые ЦС (вместо того, чтобы использовать эту функцию и позволить Microsoft сделать это за вас), проще и безопаснее создать список корневых ЦС, которым вы хотите доверять, распространить их на компьютеры своего домена. и затем заблокируйте этот список. Поскольку изменения в списке корневых ЦС, которым организация хочет доверять, были бы относительно редкими, есть определенный смысл, что администратор захочет рассмотреть и одобрить любые изменения, а не разрешить автоматическое обновление.

Чтобы быть полностью откровенным, если никто не знает, почему этот параметр включен в данной среде, это означает, что он не должен быть установлен.

Каковы потенциальные побочные эффекты повторного включения обновлений?

Доменным компьютерам будет разрешено проверять список доверенных ЦС на сайте Microsoft Windows Update и, возможно, добавлять новые сертификаты в их хранилище доверенных сертификатов.

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

Или вы всегда можете предложить временно отключить эту конкретную политику, чтобы разрешить установку вашего продукта.

HopelessN00b
источник
3

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

Программа Trusted Root CA необходима. TON приложений просто не будет работать, как ожидалось, если его широко отключить. Конечно, могут быть некоторые организации, которые отключают эту функцию, но это на самом деле зависит от организаций, исходя из их требований. Это ошибочное предположение, что любое приложение, которому требуется внешняя зависимость (корневой сертификат), всегда будет работать без его тестирования. Как разработчики приложений, так и организации, которые отключают эту функцию, несут ответственность за обеспечение наличия внешней зависимости (корневой сертификат). Это означает, что если организация отключает это, она знает, что ожидает эту проблему (или скоро узнает об этом).

Стоит также отметить, что одной из полезных целей программного механизма Trusted Root CA (динамическая установка сертификатов корневого CA) является невозможность установки всех или даже большинства известных / доверенных сертификатов корневого CA. Некоторые компоненты в Windows ломаются, если установлено слишком много сертификатов, поэтому единственно возможная практика - устанавливать только те сертификаты, которые необходимы, когда они необходимы.

http://blogs.technet.com/b/windowsserver/archive/2013/01/12/fix-available-for-root-certificate-update-issue-on-windows-server.aspx

«Проблема в том, что пакет безопасности SChannel, используемый для отправки доверенных сертификатов клиентам, имеет ограничение в 16 КБ. Поэтому слишком большое количество сертификатов в хранилище может помешать серверам TLS отправлять необходимую информацию о сертификатах; они начинают отправку, но должны остановиться, когда они достигают 16 КБ. Если клиенты не имеют нужной информации о сертификате, они не могут использовать службы, требующие TLS для проверки подлинности. Поскольку пакет обновления корневого сертификата, доступный в КБ 931125, вручную добавляет большое количество сертификатов в хранилище, применяя его к серверам, результаты в хранилище, превышающем предел в 16 КБ, и возможной неудачной аутентификации TLS. "

Грег Аскью
источник
2
Спасибо за ваш ответ, но, исходя из нашего реального опыта, это общепринято, и я не думаю, что какой-либо администратор сервера будет рад, если мы установим корневой сертификат, если они примут решение не доверять Microsoft в этом. Кроме того ... наш установщик не может работать без сертификата, так что курица ... яйцо ...
Йерун Ритмейер
Понял, но вы также узнали, что вы сами тестируете внешнюю зависимость, документируете ее для установки и доводите требования до потребителя. Это опыт реального мира. Я сомневаюсь, что ваша клиентская база будет квалифицироваться как эмпирические данные, чтобы подтвердить вывод о том, что "обычным" является то, что эта функция отключена.
Грег Аскью
@Muhimbi: В качестве практического решения вы можете предоставить администраторам инструкции по ручной установке необходимого сертификата, если они не хотят разрешать автоматическое обновление корневого сертификата.
Илмари Каронен
@IlmariKaronen, мы уже делаем. По некоторым причинам это не всегда работает, даже когда они импортируют это в правильное хранилище. Возможно, это связано с тем, что многие серверы не подключены к Интернету, поэтому они не могут проверить действительность сертификата.
Йерун Ритмейер
3

Моя причина отключения службы certif.service заключается в следующем:

У меня много систем без подключения к интернету. Также в большинстве случаев им не хватает display / kb / mouse из-за того, что они являются виртуальными машинами на большом DatastoreServer. Таким образом, во всех случаях, когда они нуждаются в обслуживании / модификации, я использую Windows RDP, чтобы добраться до них. Если вы подключаетесь к машине через RDP, Windows сначала проверяет обновления сертификатов в Интернете. Если на вашем сервере / клиенте нет интернета, он зависает на 10-20 секунд перед продолжением соединения.

Я делаю много RDP-соединений каждый день. Я экономлю часы на том, чтобы не пялиться на сообщение: «Защита удаленного подключения» :) +1 за отключение certif.service!

Tommie84
источник
Хотя я понимаю, это ужасная причина :-) Есть лучшие способы сделать это. Я столкнулся с подобной проблемой (с проверкой сертификатов SharePoint и медленным результатом) несколько лет назад. Вы можете найти несколько решений и обходных путей на blog.muhimbi.com/2009/04/new-approach-to-solve-sharepoints.html
Йерун Ритмейер,
0

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

DIGICert предлагает это при запросе сертификата. Хотя это может быть не ваш корневой CA по умолчанию в вашей учетной записи DIGICert, эта опция доступна при отправке CSR. Кстати, я не работаю на DIGICert и не получаю никакой выгоды, рекомендуя их ... Я просто чувствую эту боль и потратил слишком много часов, чтобы сэкономить 1000 долларов США на дешевом сертификате, когда я мог бы купить более дорогой сертификат и потратить много меньше времени на решение вопросов поддержки. Это просто пример. Есть другие поставщики сертификатов, предлагающие то же самое.

Совместимость на 99% Корневые сертификаты DigiCert являются одними из самых авторитетных авторитетных сертификатов в мире. Как таковые, они автоматически распознаются всеми распространенными веб-браузерами, мобильными устройствами и почтовыми клиентами.

Предостережение - если вы выбрали правильный корневой CA при создании CSR.

Эдвин
источник