GlobalProtect Clientzertifikatauthentifizierung Seite ändert sich mit PAN-OS 7.1.4
Resolution
Dieses Dokument konzentriert sich auf Änderungen im PAN-OS Version 7.1.4/7.0.10 (Frage ID 95864), die GlobalProtect Bereitstellungen beeinträchtigen die Clientzertifikatauthentifizierung Seite verwenden. Dies bezieht sich insbesondere auf Einsätze, bei denen Client- Zertifikate mit SHA512 oder SHA384-Hash-Algorithmen unterzeichnet werden. Das Problem kann auch Benutzer betreffen, wo Clientzertifikate SHA1/SHA256 unterzeichnet, aber das CA-Zertifikat wird durch SHA384/SHA512 unterzeichnet.
Beschreibung des Problems
Nach dem Upgrade auf PAN-OS 7.1.4/7.0.10 (oder höher) können GlobalProtect Clients nicht authentifizieren mit Clientzertifikaten Seite mit SHA512 oder SHA384 unterzeichnet. GlobalProtect Agent ist zeigt Fehlermeldung "Erforderliche Client-Zertifikat nicht gefunden wird".
Verhalten vor dem PAN-OS-Version 7.1.4/7.0.10
Vor der Version 7.1.4/7.0.10 hatten wir während des SSL-Handschlags zwischen GlobalProtect Agent und GlobalProtect Portal/Gateway folgendes Verhalten, wenn TLS 1,2 verwendet wird:
- Client (GP-Agent) ist "Client Hello" Nachricht senden.
- Server (Firewall mit GP-Portal/Gateway konfiguriert) sendet "Server Hallo" Nachricht, zusammen mit Server-Zertifikat
- Wenn Client-Zertifikats-Verifikation auf Firewall-Seite ("Zertifikat" Profilkonfiguration) konfiguriert ist, wird Server "Zertifikat anfordern" Nachricht an den Client senden.
- "Zertifikat Anforderung" Nachricht enthält (unter anderem):
1. "Namen unterschieden" / Liste der CAs Server Client-Zertifikat mit unterzeichnet werden erwartet
2. "Signatur-Hash-Algorithmen" / Liste der hashes, die der Server unterstützt **
* *Diese Nachricht wird nur gesendet, wenn TLS 1,2 verwendet wird; TLS 1.1/TLS 1,0 haben diese Nachricht nicht im Standard angegeben
- Wir können sehen, dass der Server die folgende Liste von unterstützten Hash-Algorithmen sendet: SHA1, SHA256, SHA384 und SHA512
Client Zertifikat Überprüfungsprozess umfasst (unter anderem):
1. Die überPrüfung, dass der Kunde den privaten Schlüssel des ausgeschriebenen Zertifikats besitzt; Dies geschieht mit der Meldung "Zertifikat verifizieren", die während des Handschlags ausgetauscht wird
2. Überprüfen, dass das Client-Zertifikat von erwähnt in der "Emittent" eingereicht (Kette Zertifikatüberprüfung) Zertifizierungsstelle signiert ist
- PAN-Betriebssystem-Firewall unterstützt SHA1 und SHA256-Hashes für 'Zertifikat überprüfen' Nachricht Überprüfung, aber SHA384 und SHA512 wurden nicht unterstützt
- Höheren Hashes wurden fälschlicherweise in TLS 1.2 (PAN-OS-Versionen 7.1.3/7.0.9 und unten) ausgeschrieben
- Zur gleichen Zeit ist die Firewall Certiifcate Kette mit SHA1, SHA256, SHA384 und SHA512 überprüfen
- Hashing-Algorithmus, der für die Meldung "Zertifikats Verifizierung" verwendet wird, muss nicht mit dem Algorithmus übereinstimmen, mit dem das Client-Zertifikat unterzeichnet wird (was von ca)
- Wir haben SHA512 unterzeichneten Zertifikat und Zertifikat zu überprüfen Nachricht von SHA1 (verwendete Algorithmus ist bestimmt durch Hilfsstapel Operating System SSL Client) unterzeichnet
- In TLS 1.2 "Zertifikat überprüfen" kann Nachricht von jeder Hash vom Server (in der Liste der unterstützten Hashes) beworben unterzeichnet werden
"Certificate Verify" Nachricht ist:
- Verwendet, um Client besitzt den privaten Schlüssel des Zertifikats beweisen, die sie vorher (während der SSL-Handshake) geschickt hat
- Erstellt von hashing zielstrebiger ausgetauscht SSL-Handshake-Nachrichten mit dem privaten Schlüssel des Clients
- Oft mit SHA1 Hash- und dieser Hash wird unterstützt durch die firewall
Obwohl das Zertifikat mit SHA512, unterzeichnet wurde, wenn mit SHA1 und SHA256 Zertifikat zu überprüfen Nachricht signiert wurde, führen wir noch richtige Zertifikatüberprüfung: sowohl für Emittenten/Kette und Client Besitz des privaten Schlüssels
Debuggen Sie von Firewall Protokolle:
2016-09-26 10:40:49.276 + 0200 Debug: pan_ssl3_server_process_handshake (pan_ssl_server. c:1648): Empfangs Zertifikat verifizieren
2016-09-26 10:40:49.276 + 0200 Debug: pan_ssl3_server_verify_client_certificate (pan_ssl_server. c:1358): in Client CERT, TLS 1.2 oder over wird mit SHA1 verwendet.
Wenn sein Zertifikat zu überprüfen Nachricht endete wären unterzeichnet von SHA384 und SHA512 (beide Algorithmen wurden ausgeschrieben), wir nicht Zertifikat ordnungsgemäß überprüfen
Verhalten in PAN-OS-Version 7.1.4 und später
In PAN-OS 7.1.4/7.0.10 haben wir bei SSL Handshake folgende Verhaltensänderung, wenn TLS 1,2 verwendet wird:
- Client (GlobalProtect Agent) und Server (GlobalProtect Portal/Gateway) SSL 'Hello' Nachrichten austauschen
- Server ist Client-Zertifikat anfordern, indem man "Zertifikat anfordern"
- "Zertifikat Anforderung" ist jetzt nur die Hashes wir eigentlich für "Zertifikat Verifiy unterstützen" erwähnen: SHA1 und SHA256
- Wenn der Kunde SHA384 oder SHA512 signierte Client-Zertifikate verwendet, kann das Betriebssystem entscheiden, diese überhaupt nicht zu verwenden, da Sie mit den Algorithmen, die vom Server nicht unterstützt werden, gehasst werden .
- Ähnliches kann passieren, wenn das Client-Zertifikat ist mit SHA256/SHA1 Hash unterzeichnet, aber die CA ist mit SHA384/SHA512 unterzeichnet
- Das Ergebnis kann sein, dass der Client nicht das Zertifikat überhaupt sendet und Authentifizierung schlägt fehl
- Die Authentifizierung kann erfolgreich sein, wenn das Betriebssystem beschlossen, senden Sie das Zertifikat und verwenden SHA1/SHA256 Zertifikat zu überprüfen Nachricht
Problemumgehungen
TLS 1,1, als opossed zu TLS 1,2, sendet keine "Signatur-Hash-Algorithmen"-Liste (unterstützte Hashes) in "Zertifikatsanfrage"-Nachricht. Wenn wir TLS/SSL-Profil gebunden zu GlobalProtect Portal/Gateway auf TLS 1.1 beschränken, haben wir ein ähnliches Verhalten auf pre-7.1.4/7.0.10 Versionen. Wir werden keine Client-Seite-Opeating-System senden Zertifikate mit höheren Hashes begrenzen. Beachten Sie, dass dieser Einsatz noch Fragen haben kann, wenn "Zertifikat überprüfen" Nachricht mit SHA384/SHA512 signiert ist.
TLS 1.2 einsetzbar für SHA1/SHA256 Zertifikate signiert.
Wenn alle verwendeten Zertifikate SHA384 oder höher, Protokolleinstellungen, um TLSv1.2 oder höher eingestellt werden
Hinweis
PAN-OS 7.1.8 fügte Unterstützung für SHA384 Client-Zertifikat. Aus den Releasenotes:
"Feste PAN‐62057 hatte ein Problem, wo die GlobalProtect-Agent konnte nicht mit einem Client Authentifizierung Zertifikat, das, einen Signaturalgorithmus, der nicht SHA1/SHA256 war. Mit diesem Update unterstützt die Firewall den SHA384 Signaturalgorithmus für Client‐based Authentifizierung."