Warum verwenden viele Administratoren die Richtlinie "Automatische Aktualisierung von Stammzertifikaten deaktivieren"?

40

Mein Unternehmen vertreibt einen Windows Installer für ein Server-basiertes Produkt. Gemäß den Best Practices wird es mit einem Zertifikat signiert. Im Einklang mit Beratung von Microsoft verwenden wir ein Zertifikat von Globalcodesignatur , die Microsoft Ansprüche standardmäßig von allen Windows - Server - Versionen erkannt werden.

Jetzt funktioniert dies alles einwandfrei, es sei denn, für einen Server wurden Gruppenrichtlinien konfiguriert : Computerkonfiguration / Administrative Vorlagen / System / Verwaltung der Internetkommunikation / Einstellungen für die Internetkommunikation / Automatische Aktualisierung des Stammzertifikats als aktiviert deaktivieren .

Wir haben festgestellt, dass einer unserer frühen Beta-Tester mit dieser Konfiguration ausgeführt wurde, was zu dem folgenden Fehler während der Installation führte

Eine erforderliche Datei kann nicht installiert werden, da die CAB-Datei [langer Pfad zur CAB-Datei] eine ungültige digitale Signatur aufweist. Dies kann darauf hinweisen, dass die CAB-Datei beschädigt ist.

Wir haben das als eine Kuriosität abgeschrieben, schließlich konnte niemand erklären, warum das System so konfiguriert war. Da die Software nun für den allgemeinen Gebrauch verfügbar ist, scheint es jedoch, dass ein zweistelliger Prozentsatz unserer Kunden mit dieser Einstellung konfiguriert ist und niemand weiß, warum. Viele zögern, die Einstellung zu ändern.

Wir haben einen KB-Artikel für unsere Kunden geschrieben, aber wir möchten nicht, dass das Problem überhaupt auftritt, da uns das Kundenerlebnis wirklich am Herzen liegt.

Einige Dinge, die uns bei der Untersuchung aufgefallen sind:

  1. Bei einer neuen Windows Server-Installation wird das Globalsign-Zertifikat nicht in der Liste der vertrauenswürdigen Stammzertifikate angezeigt.
  2. Wenn Windows Server nicht mit dem Internet verbunden ist, funktioniert die Installation unserer Software einwandfrei. Am Ende der Installation liegt das Globalsign-Zertifikat vor (nicht von uns importiert). Im Hintergrund scheint Windows es bei der ersten Verwendung transparent zu installieren.

Also, hier ist nochmal meine Frage. Warum ist es so üblich, die Aktualisierung von Stammzertifikaten zu deaktivieren? Was sind die möglichen Nebenwirkungen einer erneuten Aktivierung von Updates? Ich möchte sicherstellen, dass wir unseren Kunden die entsprechende Anleitung geben können.

Jeroen Ritmeijer
quelle
14
Neue Stammzertifikate, die auf allen Systemen ohne Warnung oder Dokumentation angezeigt werden, sind für einige Sicherheitsmitarbeiter ein Problem. Sie vertrauen einfach nicht darauf, dass Microsoft neue Stammzertifikate vollständig überprüft, ohne sich selbst zu überprüfen. Hilft nichts, wenn Microsoft beispielsweise 18 neue Stammzertifikate ohne Vorankündigung verschiebt.
Brian
Können Sie nicht überprüfen, ob das Zertifikat im System verfügbar ist, und Ihnen anbieten, Ihr Zertifikat manuell von Ihrer Website herunterzuladen, wenn die Aktualisierung deaktiviert ist?
Falco
@ Falco Nop, das Zertifikat muss vorhanden sein, bevor wir benutzerdefinierte Logik ausführen können, um solche Dinge zu erkennen. Das ist der springende Punkt beim digitalen Signieren von Installateuren. Wenn Administratoren die Aktualisierung von Stammzertifikaten deaktiviert haben, sind sie auch nicht erfreut, dies einem Drittanbieter zu überlassen.
Jeroen Ritmeijer
Dann könnten Sie eine Website bereitstellen, die nach dem Zertifikat sucht, das die Benutzer besuchen können, bevor Sie Ihr Produkt installieren. Wie "Besuchen Sie ..., um zu überprüfen, ob Ihr System kompatibel ist" und auf der Website Schritte zum Installieren des Zertifikats anzuzeigen, wenn Sie feststellen, dass es nicht vorhanden ist?
Falco
1
@falco Welche wir haben (bis zu einem gewissen Grad), siehe den Link zum KB-Artikel in meiner Frage. Auch ... lesen die Leute keine Anweisungen.
Jeroen Ritmeijer

Antworten:

33

Ende 2012 / Anfang 2013 gab es ein Problem mit automatischen Updates für Stammzertifikate. Der vorläufige Fix bestand darin, die automatischen Updates zu deaktivieren, sodass dieses Problem teilweise historisch ist.

Die andere Ursache ist das Programm für vertrauenswürdige Stammzertifikate und die Verteilung von Stammzertifikaten, die (um Microsoft zu paraphrasieren ) ...

Stammzertifikate werden unter Windows automatisch aktualisiert. Wenn ein [System] auf ein neues Stammzertifikat stößt, überprüft die Windows-Software zur Überprüfung der Zertifikatkette den entsprechenden Microsoft Update-Speicherort für das Stammzertifikat.

So weit, so gut, aber dann ...

Wenn es es findet, lädt es es auf das System herunter. Für den Benutzer ist die Erfahrung nahtlos. Dem Benutzer werden keine Sicherheitsdialogfelder oder Warnungen angezeigt. Der Download erfolgt automatisch hinter den Kulissen.

In diesem Fall kann es vorkommen, dass dem Stammspeicher automatisch Zertifikate hinzugefügt werden. All dies macht einige Sysadmins nervös, da Sie eine "schlechte" CA nicht aus den Zertifikatsverwaltungstools entfernen können, weil sie nicht zum Entfernen da sind ...

Tatsächlich gibt es Möglichkeiten, Windows zum Herunterladen der vollständigen Liste zu bewegen, damit es nach Belieben bearbeitet werden kann. Es ist jedoch üblich, nur die Aktualisierungen zu blockieren. Eine große Anzahl von Systemadministratoren versteht Verschlüsselung oder Sicherheit (im Allgemeinen) nicht, so dass sie empfangenen Weisheiten (korrekt oder auf andere Weise) ohne Frage folgen, und sie nehmen keine Änderungen an Dingen vor, die mit Sicherheit zu tun haben, von denen sie nicht ganz überzeugt sind etwas schwarze Kunst.

James Snell
quelle
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.Ja. Traurig aber wahr.
HopelessN00b
8
@ HopelessN00b So würden Sie eher sie frei machen Konfiguration Einbeziehung Sicherheit ändert , dass sie nicht vollständig verstehen? Das scheint mir ein weitaus beängstigender Vorschlag zu sein.
Joshua Shearer
11
@JoshuaShearer Ich würde lieber verstehen, dass sie sich nicht mehr Sysadmins nennen.
Kevin Krumwiede
2
@JoshuaShearer Wie Kevin sagte, wenn sie die Sicherheit nicht verstehen, sollten sie keine Systemadministratoren sein, und ich finde es beängstigend, einen Administrator zu haben, der der Meinung ist, dass Sicherheit etwas Schwarzes oder Voodo ist.
HopelessN00b
2
@JoshuaShearer - da sie es nicht verstehen, ist es wohl umstritten, da sie nicht wissen, ob das, was sie bereits haben, richtig ist oder nicht ... In vielen kleinen und mittleren Unternehmen ist der "Administrator", "good with computers"weil sie die neuesten glänzenden iThings haben eher als ein echter Profi.
James Snell
11

Die Komponente "Automatische Aktualisierung der Stammzertifikate" überprüft automatisch die Liste der vertrauenswürdigen Stellen auf der Microsoft Windows Update-Website. Insbesondere gibt es eine Liste vertrauenswürdiger Stammzertifizierungsstellen, die auf dem lokalen Computer gespeichert sind. Wenn einer Anwendung ein von einer Zertifizierungsstelle ausgestelltes Zertifikat vorgelegt wird, überprüft sie die lokale Kopie der Liste der vertrauenswürdigen Stammzertifizierungsstellen. Wenn das Zertifikat nicht in der Liste enthalten ist, kontaktiert die Komponente "Automatische Aktualisierung von Stammzertifikaten" die Microsoft Windows Update-Website, um festzustellen, ob ein Update verfügbar ist. Wenn die Zertifizierungsstelle zur Liste der vertrauenswürdigen Zertifizierungsstellen von Microsoft hinzugefügt wurde, wird ihr Zertifikat automatisch dem vertrauenswürdigen Zertifikatspeicher auf dem Computer hinzugefügt.

Warum ist es so üblich, die Aktualisierung von Stammzertifikaten zu deaktivieren?

Die kurze Antwort lautet wahrscheinlich, dass es um Kontrolle geht. Wenn Sie steuern möchten, welchen Stammzertifizierungsstellen vertraut wird (anstatt diese Funktion zu verwenden und Microsoft dies für Sie tun zu lassen), ist es am einfachsten und sichersten, eine Liste der Stammzertifizierungsstellen zu erstellen, denen Sie vertrauen möchten, und diese auf Ihre Domänencomputer zu verteilen und sperren Sie diese Liste. Da Änderungen an der Liste der Stammzertifizierungsstellen, denen eine Organisation vertrauen möchte, relativ selten vorkommen, ist es in gewissem Maße sinnvoll, dass ein Administrator Änderungen überprüfen und genehmigen möchte, anstatt eine automatische Aktualisierung zuzulassen.

Um ganz ehrlich zu sein: Wenn niemand weiß, warum diese Einstellung in einer bestimmten Umgebung aktiviert ist, sollte sie nicht festgelegt werden.

Was sind die möglichen Nebenwirkungen einer erneuten Aktivierung von Updates?

Domänencomputer können anhand der Liste der vertrauenswürdigen Zertifizierungsstellen auf der Microsoft Windows Update-Site prüfen und dem Speicher für vertrauenswürdige Zertifikate möglicherweise neue Zertifikate hinzufügen.

Wenn dies für Ihre Kunden / Kunden nicht akzeptabel ist, können Zertifikate über ein Gruppenrichtlinienobjekt verteilt werden, und diese müssen Ihr Zertifikat in die derzeit für vertrauenswürdige Zertifikate verwendete Verteilungsmethode einbeziehen.

Sie können auch jederzeit vorschlagen, diese Richtlinie vorübergehend zu deaktivieren, um die Installation Ihres Produkts zu ermöglichen.

HopelessN00b
quelle
3

Ich würde nicht zustimmen, dass es üblich ist, dies zu deaktivieren. Ein besserer Weg, es zu formulieren, wäre zu fragen, warum jemand es deaktivieren würde. Eine bessere Lösung für Ihr Problem besteht darin, dass das Installationsprogramm nach Stammzertifikaten / CA-Zwischenzertifikaten sucht und diese installiert, wenn sie nicht vorhanden sind.

Das Trusted Root CA-Programm ist unerlässlich. Eine TON von Anwendungen würde einfach nicht wie erwartet funktionieren, wenn sie weitgehend deaktiviert wären. Sicher, es gibt einige Organisationen, die diese Funktion deaktivieren, aber das hängt von den Anforderungen der Organisationen ab. Es ist eine fehlerhafte Annahme, dass jede Anwendung, die eine externe Abhängigkeit erfordert (Stammzertifikat), immer funktionieren würde, ohne sie zu testen. Sowohl Entwickler von Anwendungen als auch Organisationen, die diese Funktion deaktivieren, tragen die Verantwortung dafür, dass die externe Abhängigkeit (Stammzertifikat) vorhanden ist. Das bedeutet, dass eine Organisation, die dies deaktiviert, dieses Problem erwartet (oder bald davon erfährt).

Es ist auch erwähnenswert, dass ein nützlicher Zweck des Trusted Root CA-Programmmechanismus (dynamische Installation von Stammzertifizierungsstellenzertifikaten) darin besteht, dass es nicht praktisch ist, alle oder sogar die meisten der bekannten / vertrauenswürdigen Stammzertifizierungsstellenzertifikate zu installieren. Einige Komponenten in Windows brechen ab, wenn zu viele Zertifikate installiert sind. Daher besteht die einzig mögliche Praxis darin, nur die erforderlichen Zertifikate zu installieren, wenn sie benötigt werden.

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

"Das Problem ist das folgende: Das SChannel-Sicherheitspaket, das zum Senden vertrauenswürdiger Zertifikate an Clients verwendet wird, ist auf 16 KB beschränkt. Daher können zu viele Zertifikate im Speicher verhindern, dass TLS-Server die erforderlichen Zertifikatinformationen senden. Sie beginnen mit dem Senden, müssen jedoch abbrechen, wenn Sie erreichen 16 KB. Wenn Clients nicht über die richtigen Zertifikatinformationen verfügen, können sie keine Dienste verwenden, für deren Authentifizierung TLS erforderlich ist. Da das in KB 931125 verfügbare Stammzertifikat-Aktualisierungspaket dem Speicher manuell eine große Anzahl von Zertifikaten hinzufügt und diese auf die Serverergebnisse anwendet im Speicher, der das 16-KB-Limit überschreitet, und die Möglichkeit einer fehlgeschlagenen TLS-Authentifizierung. "

Greg Askew
quelle
2
Vielen Dank für Ihre Antwort. Aufgrund unserer Erfahrungen in der Praxis ist dies jedoch häufig der Fall, und ich glaube, kein Serveradministrator würde sich freuen, wenn wir ein Root-Zertifikat installieren würden, wenn er die Entscheidung getroffen hat, Microsoft diesbezüglich nicht einmal zu vertrauen. Auch .... unser Installateur kann nicht ohne das Zertifikat laufen, also Huhn ... Ei ...
Jeroen Ritmeijer
Verstanden, aber Sie haben auch erfahren, dass Sie die externe Abhängigkeit selbst testen, für die Installation dokumentieren und dem Kunden die Anforderung mitteilen. Das ist echte Erfahrung. Ich bezweifle, dass Ihre Kundenbasis als empirische Daten eingestuft werden würde, um die Schlussfolgerung zu stützen, dass diese Funktion "häufig" deaktiviert ist.
Greg Askew
@ Muhimbi: Als praktische Problemumgehung können Sie Administratoren Anweisungen zur manuellen Installation des erforderlichen Zertifikats geben, wenn sie keine automatischen Stammzertifikatsaktualisierungen zulassen möchten.
Ilmari Karonen
@IlmariKaronen machen wir schon. Aus irgendeinem Grund funktioniert es nicht immer, auch wenn sie es in den richtigen Laden importieren. Möglicherweise hängt dies damit zusammen, dass viele Server nicht mit dem Internet verbunden sind und daher die Gültigkeit des Zertifikats nicht überprüfen können.
Jeroen Ritmeijer
3

Mein Grund für die Deaktivierung des Zertifizierungsdienstes ist folgender:

Ich habe viele Systeme ohne Internetverbindung. Außerdem fehlt ihnen in den meisten Fällen display / kb / mouse, da es sich um virtuelle Maschinen auf einem großen DatastoreServer handelt. In allen Fällen, in denen sie gewartet / geändert werden müssen, verwende ich Windows RDP, um sie zu erreichen. Wenn Sie über RDP eine Verbindung zu einem Computer herstellen, überprüft Windows zuerst die Zertifikatsaktualisierungen online. Wenn Ihr Server / Client kein Internet hat, bleibt er 10 bis 20 Sekunden lang hängen, bevor die Verbindung fortgesetzt wird.

Ich baue jeden Tag viele RDP-Verbindungen auf. Ich spare Stunden, wenn ich nicht auf die Meldung "Sichern der Remoteverbindung" starre :) +1 zum Deaktivieren von certif.service!

Tommie84
quelle
Obwohl ich verstehe, ist das ein SCHRECKLICHER Grund :-) Es gibt bessere Möglichkeiten, dies zu tun. Ich bin vor Jahren auf ein ähnliches Problem gestoßen (mit SharePoint, das Zertifikate überprüft und als Ergebnis langsam ist). Unter blog.muhimbi.com/2009/04/new-approach-to-solve-sharepoints.html
Jeroen Ritmeijer,
0

Ich weiß, dass dies ein älterer Thread ist. Ich möchte jedoch eine alternative Lösung einreichen. Verwenden Sie eine andere Zertifizierungsstelle (ROOT CA) als die von Ihnen verwendete. Wechseln Sie mit anderen Worten zu einem Signaturzertifikat mit einer viel älteren, genehmigten Stammzertifizierungsstelle.

DIGICert bietet dies bei Anforderung eines Zertifikats an. Dies ist möglicherweise nicht Ihre Standard-Stammzertifizierungsstelle in Ihrem DIGICert-Konto, es ist jedoch eine Option, die verfügbar ist, wenn Sie die CSR an sie senden. Übrigens, ich arbeite nicht für DIGICert und kann sie auch nicht weiterempfehlen. Ich fühle einfach diesen Schmerz und habe viel zu viele Stunden damit verbracht, 1000 US-Dollar für ein billiges Zertifikat zu sparen, als ich ein teureres Zertifikat hätte kaufen und viel ausgeben können weniger Zeit für die Bearbeitung der Support-Probleme. Dies ist nur ein Beispiel. Es gibt andere Zertifikatsanbieter, die dasselbe anbieten.

99% Kompatibilität DigiCert-Stammzertifikate gehören zu den vertrauenswürdigsten Zertifizierungsstellen der Welt. Als solche werden sie automatisch von allen gängigen Webbrowsern, Mobilgeräten und E-Mail-Clients erkannt.

Vorsichtsmaßnahme - Wenn Sie bei der Erstellung der CSR die richtige Stammzertifizierungsstelle auswählen.

Edwin
quelle