Einheitliche Richtlinien für SSL-Proxy
Anwendungssicherheitsservices mit SSL-Proxy
Mit der Implementierung von SSL-Proxy kann AppID Anwendungen identifizieren, die in SSL verschlüsselt sind. SSL-Proxy kann als Anwendungsservice in einer regulären Firewall-Richtlinienregel aktiviert werden. Intrusion Detection and Prevention (IDP), Application Firewall (AppFW), Application Tracking (AppTrack), Advanced Policy-Based Routing (APBR)-Services, UTM, SKY ATP und Security Intelligence (SecIntel) können die entschlüsselten Inhalte aus dem SSL-Proxy verwenden.
Um festzustellen, ob ein Feature von einer bestimmten Plattform oder Junos OS-Version unterstützt wird, lesen Sie den Feature-Explorer.
Auf der SSL-Payload kann IDP Angriffe und Anomalien untersuchen; zum Beispiel HTTP-Chunk-Längenüberlauf auf HTTPS. In verschlüsselten Anwendungen, wie z. B. Facebook, kann AppFW Richtlinien durchsetzen und AppTrack (wenn in den "From to"-Zonen konfiguriert) kann Protokollierungsprobleme basierend auf dynamischen Anwendungen melden.
Wenn keiner der Services (AppFW, IDP oder AppTrack) konfiguriert ist, werden SSL-Proxydienste auch dann umgangen, wenn ein SSL-Proxy an eine Firewall-Richtlinie angeschlossen ist.
Das IDP-Modul führt keine SSL-Prüfung in einer Sitzung durch, wenn ein SSL-Proxy für diese Sitzung aktiviert ist. Das heißt, wenn sowohl die SSL-Prüfung als auch der SSL-Proxy in einer Sitzung aktiviert sind, hat der SSL-Proxy immer Vorrang.
Nutzung der dynamischen Anwendungsidentifizierung
SSL-Proxy verwendet Anwendungsidentifizierungsdienste, um dynamisch zu erkennen, ob eine bestimmte Sitzung SSL-verschlüsselt ist. SSL-Proxies sind nur zulässig, wenn eine Sitzung SSL-verschlüsselt ist. Für eine Sitzung gelten die folgenden Regeln:
Die Sitzung wird im Cache des Anwendungssystems markiert Encrypted=Yes . Wenn die Sitzung markiert Encrypted=Yesist, bedeutet dies, dass die letzte Übereinstimmung aus der Anwendungsidentifikation für diese Sitzung SSL-verschlüsselt ist, und SSL-Proxy zu einem Zustand übertritt, in dem Proxyfunktionen initiiert werden können.
Die Sitzung wird im Cache des Anwendungssystems markiert Encrypted=No . Wenn im Cache des Anwendungssystems ein Nicht-SSL-Eintrag gefunden wird, bedeutet dies, dass die letzte Übereinstimmung aus der Anwendungsidentifizierung für diese Sitzung nicht-SSL ist und der SSL-Proxy die Sitzung ignoriert.
Im Cache des Anwendungssystems wird kein Eintrag gefunden. Dies kann bei der ersten Sitzung geschehen, oder wenn der Anwendungs-Systemcache bereinigt wurde oder abgelaufen ist. In einem solchen Szenario kann der SSL-Proxy nicht bis zum endgültigen Match warten (erfordert Datenverkehr in beide Richtungen). In SSL-Proxy geschieht der Datenverkehr in umgekehrter Richtung nur, wenn der SSL-Proxy einen SSL-Handshake initiiert hat. Zunächst versucht der SSL-Proxy für ein solches Szenario, Prematch- oder aggressive Übereinstimmungsergebnisse aus der Anwendungsidentifizierung zu nutzen, und wenn die Ergebnisse SSL anzeigen, wird der SSL-Proxy mit dem Handshake fortfahren.
Die Anwendungsidentifizierung schlägt aufgrund von Ressourcenbeschränkungen und anderen Fehlern fehl. Wenn das Ergebnis aus der Anwendungsidentifizierung nicht verfügbar ist, geht der SSL-Proxy von einer statischen Portbindung aus und versucht, ssl-Handshake in der Sitzung einzuleiten. Dies wird bei tatsächlichen SSL-Sitzungen erfolgreich sein, führt jedoch zu Unterbrechungen für Nicht-SSL-Sitzungen.
Siehe auch
SSL-Proxy-Unterstützung für einheitliche Richtlinien
Ab Junos OS Version 18.2R1 werden einheitliche Richtlinien auf Geräten der SRX-Serie unterstützt, die eine granulare Kontrolle und Durchsetzung dynamischer Layer-7-Anwendungen innerhalb der herkömmlichen Sicherheitsrichtlinien ermöglichen.
Einheitliche Richtlinien sind die Sicherheitsrichtlinien, mit denen Sie dynamische Anwendungen als Teil des vorhandenen 5-Tupels oder 6-Tupels (5-Tupel mit Benutzer-Firewall) verwenden können, um Anwendungsänderungen im Laufe der Zeit zu erkennen.
SSL-Proxyfunktionen werden unterstützt, wenn das Gerät mit einheitlichen Richtlinien konfiguriert ist. Als Teil dieser Erweiterung können Sie ein STANDARD-SSL-Proxyprofil konfigurieren.
Während der ersten Richtliniensuchephase, die vor der Erkennung einer dynamischen Anwendung auftritt, wendet das Gerät der SRX-Serie das Standard-SSL-Proxyprofil an, bis eine explizitere Übereinstimmung eingetreten ist, wenn in der potenziellen Richtlinienliste mehrere Richtlinien vorhanden sind, die unterschiedliche SSL-Proxyprofile enthalten.
Wir empfehlen, ein Standard-SSL-Proxyprofil zu erstellen. Die Sitzungen werden bei Richtlinienkonflikten unterbrochen, wenn kein Standard-SSL-Proxyprofil verfügbar ist.
Sie können ein SSL-Proxyprofil unter der [edit services ssl proxy]
Hierarchieebene konfigurieren und es dann als Standard-SSL-Proxyprofil auf der [edit security ngfw]
Hierarchieebene anwenden. Diese Konfiguration wirkt sich nicht auf die vorhandene SSL-Dienstkonfiguration aus.
Die Konfiguration eines Standard-SSL-Proxyprofils wird sowohl für SSL-Forward- als auch für Reverse-Proxy unterstützt.
Informationen zur Funktionsweise des SSL-Proxy-Standardprofils
Tabelle 1 fasst das Standardverhalten des SSL-Proxyprofils in einheitlichen Richtlinien zusammen.
Anwendungsidentifikationsstatus |
Verwendung von SSL-Proxyprofilen |
Aktion |
---|---|---|
Kein Konflikt mit Sicherheitsrichtlinien |
Das SSL-Proxyprofil wird angewendet, wenn der Datenverkehr mit der Sicherheitsrichtlinie übereinstimmt. |
SSL-Proxyprofil wird angewendet. |
Konflikt mit Sicherheitsrichtlinien (widersprüchliche Richtlinien haben unterschiedliche SSL-Proxy-Profile) |
Standard-SSL-Proxyprofil wird nicht konfiguriert oder nicht gefunden. |
Die Sitzung wird beendet, weil das Standard-SSL-Proxyprofil nicht konfiguriert ist. |
Standard-SSL-Proxyprofil ist konfiguriert. |
Standard-SSL-Proxyprofil wird angewendet. |
|
Die endgültige Anwendung wird identifiziert |
Die abgleichende Sicherheitsrichtlinie verfügt über ein SSL-Proxyprofil, das mit dem Standard-SSL-Proxyprofil identisch ist. |
Standard-SSL-Proxyprofil wird angewendet. |
Die abgleichende Sicherheitsrichtlinie verfügt nicht über ein SSL-Proxyprofil. |
Standard-SSL-Proxyprofil wird angewendet. |
|
Die abgleichende Sicherheitsrichtlinie verfügt über ein SSL-Proxyprofil, das sich von dem bereits angewendeten STANDARD-SSL-Proxyprofil unterscheidet. |
Standard-SSL-Proxyprofil, das bereits angewendet wurde, bleibt wie angewendet. |
Eine Sicherheitsrichtlinie kann entweder ein SSL-Reverse-Proxy-Profil oder ein SSL-Weiterleitungs-Proxyprofil nach und nach konfiguriert haben.
Wenn eine Sicherheitsrichtlinie über ein SSL-Weiterleitungs-Proxyprofil und eine andere Sicherheitsrichtlinie über ein SSL-Reverse-Proxy-Profil verfügt, wird in diesem Fall ein Standardprofil berücksichtigt – entweder vom SSL Reverse Proxy-Profil oder vom SSL-Weiterleitungs-Proxy-Profil.
Wir empfehlen das Erstellen eines SSL-Standard-Proxyprofils, da Sitzungen im Falle von Richtlinienkonflikten unterbrochen werden, wenn kein SSL-Standard-Proxyprofil verfügbar ist. Es wird eine Systemprotokollmeldung generiert, um das Ereignis zu protokollieren.
Beispiel für die Systemprotokollmeldung:
"<14>1 2018-03-07T03:18:33.374-08:00 4.0.0.254 kurinji junos-ssl-proxy - SSL_PROXY_SSL_SESSION_DROP [junos@2636.1.1.1.2.105 logical-system-name="root-logical-system" session-id="15" source-address="4.0.0.1" source-port="37010" destination-address="5.0.0.1" destination-port="443" nat-source-address="4.0.0.1" nat-source-port="37010" nat-destination-address="5.0.0.1" nat-destination-port="443" profile-name="(null)" source-zone-name="untrust" source-interface-name="xe-2/2/1.0" destination-zone-name="trust" destination-interface-name="xe-2/2/2.0" message="default ssl-proxy profile is not configured"]
Standard-SSL-Proxyprofile in verschiedenen Szenarien
- Kein Richtlinienkonflikt – Alle Richtlinien haben dasselbe SSL-Proxyprofil
- Kein Richtlinienkonflikt – Alle Richtlinien haben dasselbe SSL-Proxy-Profil und die endgültige Richtlinie hat kein SSL-Profil
- Richtlinienkonflikt – Kein SSL-Profil für die endgültige Richtlinie konfiguriert
- Richtlinienkonflikt – Standard-SSL-Proxyprofil und anderes SSL-Proxy-Profil für die endgültige Richtlinie
- Einschränkungen von SSL-Proxy mit einheitlichen Richtlinien
Kein Richtlinienkonflikt – Alle Richtlinien haben dasselbe SSL-Proxyprofil
Alle übereinstimmenden Richtlinien haben dasselbe SSL-Proxyprofil, wie in Tabelle 2 dargestellt.
Sicherheitspolitik |
Quellzone |
Quell-IP-Adresse |
Zielzone |
Ziel-IP-Adresse |
Portnummer |
Protokoll |
Dynamische Anwendung |
Service |
Standard-SSL-Proxyprofil |
---|---|---|---|---|---|---|---|---|---|
Richtlinie P1 |
S1 |
Jegliche |
D1 |
Jegliche |
Jegliche |
Jegliche |
SSL-Proxy |
SSL-1 |
|
Richtlinie P2 |
S1 |
Jegliche |
D1 |
Jegliche |
Jegliche |
Jegliche |
SSL-Proxy |
SSL-1 |
In diesem Fall haben sowohl Policy-P1 als auch Policy-P2 dasselbe SSL-Proxyprofil (SSL-1). Da kein Konflikt besteht, wird das Profil SSL-1 angewendet.
Wenn Sie ein SSL-Standard-Proxyprofil (SSL-2) konfiguriert haben, wird es nicht angewendet. Weil es keinen Konflikt in den Richtlinien (Policy-P1 und Policy-P2) gibt.
Kein Richtlinienkonflikt – Alle Richtlinien haben dasselbe SSL-Proxy-Profil und die endgültige Richtlinie hat kein SSL-Profil
Policy-P1 und Policy-P2 haben dasselbe SSL-Proxyprofil und die Richtlinie 3 verfügt über kein SSL-Profil, wie in Tabelle 3 dargestellt.
Sicherheitspolitik |
Quellzone |
Quell-IP-Adresse |
Zielzone |
Ziel-IP-Adresse |
Portnummer |
Protokoll |
Dynamische Anwendung |
Service |
Standard-SSL-Proxyprofil |
---|---|---|---|---|---|---|---|---|---|
Richtlinie P1 |
S1 |
Jegliche |
D1 |
Jegliche |
Jegliche |
Jegliche |
SSL-Proxy |
SSL-1 |
|
Richtlinie P3 |
S1 |
50.1.1.1 |
D1 |
Jegliche |
Jegliche |
Jegliche |
Youtube |
SSL-Proxy |
SSL-1 |
Richtlinie P2 |
S1 |
Jegliche |
D1 |
Jegliche |
Jegliche |
Jegliche |
Andere |
Nichts |
In diesem Szenario haben Sowohl Policy-P1 als auch Policy-P2 dasselbe SSL-Proxyprofil (SSL-1). Da kein Konflikt besteht, wird das Profil SSL-1 vor der endgültigen Richtliniengleichung angewendet.
Wenn die endgültige Anwendung identifiziert wird, wird der Abgleich der Sicherheitsrichtlinien mit der endgültigen Anwendung, das heißt Policy-P3, angewendet. Da Policy-P3 kein SSL-Proxyprofil hat, wird das bereits angewandte Profil SSL-1 weiterhin angewendet. Dies liegt daran, dass das SSL-Proxyprofil bereits auf den Datenverkehr angewendet wird.
Richtlinienkonflikt – Kein SSL-Profil für die endgültige Richtlinie konfiguriert
Das Standard-SSL-Proxyprofil wird während der Potenziellen Übereinstimmung angewendet, wie in Tabelle 4 dargestellt. Die endgültige Richtlinie Policy-P3 verfügt über kein SSL-Proxyprofil.
Sicherheitspolitik |
Quellzone |
Quell-IP-Adresse |
Zielzone |
Ziel-IP-Adresse |
Portnummer |
Protokoll |
Dynamische Anwendung |
Service |
Standard-SSL-Proxyprofil |
---|---|---|---|---|---|---|---|---|---|
Richtlinie P1 |
S1 |
50.1.1.1 |
D1 |
Jegliche |
Jegliche |
Jegliche |
SSL-Proxy |
SSL-1 |
|
Richtlinie P2 |
S1 |
50.1.1.1 |
D1 |
Jegliche |
Jegliche |
Jegliche |
SSL-Proxy |
SSL-2 |
|
Richtlinie P3 |
S1 |
50.1.1.1 |
D1 |
Jegliche |
Jegliche |
Jegliche |
Youtube |
Andere |
NA |
In diesem Beispiel wird das SSL-Proxyprofil SSL-1 als Standard-SSL-Proxyprofil konfiguriert. Während des Richtlinienkonflikts für Policy-P1 und Policy-P2 wird das Standardprofil SSL-1 angewendet.
Wenn die endgültige Anwendung identifiziert wird, wird der Abgleich der Sicherheitsrichtlinien mit der endgültigen Anwendung, das heißt Policy-P3, angewendet. Da Policy-P3 kein SSL-Proxyprofil hat, bleibt das bereits angewandte Profil SSL-1 weiterhin wie angewendet. Dies liegt daran, dass das SSL-Proxyprofil auf den Datenverkehr angewendet wird.
Richtlinienkonflikt – Standard-SSL-Proxyprofil und anderes SSL-Proxy-Profil für die endgültige Richtlinie
Das SSL-Proxyprofil SSL-1 wird als Standard-SSL-Proxyprofil konfiguriert und bereits angewendet, bevor die endgültige Richtlinie abgeglichen wird. Siehe Tabelle 5.
Sicherheitspolitik |
Quellzone |
Quell-IP-Adresse |
Zielzone |
Ziel-IP-Adresse |
Portnummer |
Protokoll |
Dynamische Anwendung |
Service |
Standard-SSL-Proxyprofil |
---|---|---|---|---|---|---|---|---|---|
Richtlinie P1 |
S1 |
50.1.1.1 |
D1 |
Jegliche |
Jegliche |
Jegliche |
SSL-Proxy |
SSL-1 |
|
Richtlinie P2 |
S1 |
50.1.1.1 |
D1 |
Jegliche |
Jegliche |
Jegliche |
SSL-Proxy |
SSL-2 |
|
Richtlinie P3 |
S1 |
50.1.1.1 |
D1 |
Jegliche |
Jegliche |
Jegliche |
Youtube |
SSL-Proxy |
SSL-3 |
Wenn die endgültige Anwendung identifiziert wird, wird der Abgleich der Sicherheitsrichtlinien mit der endgültigen Anwendung, das heißt Policy-P3, angewendet. Das SSL-Profil für Policy-P3, das heißt SSL-3, wird nicht angewendet. Stattdessen bleibt das SSL-Proxyprofil SSL-2 konfiguriert und als Standardprofil angewendet.
Der Wechsel von dem STANDARD-SSL-Proxyprofil, das bereits auf den Datenverkehr angewendet wurde, zu einem anderen SSL-Proxyprofil wird nicht unterstützt.
Einschränkungen von SSL-Proxy mit einheitlichen Richtlinien
Wenn ein STANDARD-SSL-Proxyprofil aktiviert ist, kann es selbst dann nicht deaktiviert werden, wenn für die endgültige Sicherheitsrichtlinie kein SSL-Proxy konfiguriert ist.
Wenn ein SSL-Standard-Proxyprofil aktiviert und auf den Datenverkehr angewendet wird und die endgültige Sicherheitsrichtlinie ein anderes SSL-Proxyprofil als das Standardprofil konfiguriert hat, wird der Wechsel vom Standard-SSL-Proxyprofil zum SSL-Proxyprofil in der Sicherheitsrichtlinie nicht unterstützt.
Konfigurieren von STANDARD-SSL-Proxyprofilen
DER SSL-Proxy wird innerhalb einer Sicherheitsrichtlinie als Anwendungsservice aktiviert. Geben Sie in einer Sicherheitsrichtlinie die Übereinstimmungskriterien für den Datenverkehr an, der SSL-Proxy aktiviert sein muss. Geben Sie als Nächstes das SSL-Proxyprofil an, das auf den Datenverkehr angewendet werden soll. Bei der Konfiguration vereinheitlichter Richtlinien umfassen die Schritte das Definieren des SSL-Profils, dann das Hinzufügen des SSL-Profils als Standardprofil auf der [edit security ngfw]
Hierarchieebene und dann in die gewünschte Sicherheitsrichtlinie.
- Konfigurieren des Standardprofils für SSL-Weiterleitungs-Proxy
- Konfigurieren des Standardprofils für SSL Reverse Proxy
- Konfigurieren von STANDARD-SSL-Profilen für logische Systeme
Konfigurieren des Standardprofils für SSL-Weiterleitungs-Proxy
In dieser Prozedur konfigurieren Sie ein SSL-Weiterleitungs-Proxyprofil und geben das Profil als Standardprofil an.
Konfigurieren des Standardprofils für SSL Reverse Proxy
In dieser Prozedur konfigurieren Sie ein SSL-Reverse-Proxy-Profil und geben das Profil als Standardprofil an.
Konfigurieren von STANDARD-SSL-Profilen für logische Systeme
In dieser Prozedur weisen Sie das SSL-Weiterleitungs-Proxyprofil oder das SSL-Reverse-Proxy-Profil als Standardprofil in logischen Systemkonfigurationen zu. In diesem Fall kann ein Profil ein Standardprofil sein, entweder vom SSL-Weiterleitungs-Proxy oder vom SSL-Reverse-Proxy.
Beispiel: Konfigurieren des SSL-Standard-Proxyprofils für eine einheitliche Richtlinie
Dieses Beispiel zeigt, wie Sie ein SSL-Standard-Proxyprofil konfigurieren und in einer einheitlichen Richtlinie anwenden.
Konfiguration
Schritt-für-Schritt-Verfahren
So konfigurieren Sie ein SSL-Standard-Proxyprofil und wenden es in einer einheitlichen Richtlinie an:
Erstellen Sie ein SSL-Profil, und fügen Sie die CA-Profilgruppe dem SSL-Proxyprofil an.
user@host#
set services ssl proxy profile SSL-FP-PROFILE-1 trusted-ca allWenden Sie das Signaturzertifikat als root-ca im SSL-Proxyprofil an.
user@host#
set services ssl proxy profile SSL-FP-PROFILE-1 root-ca ssl-inspect-caDefinieren Sie das SSL-Proxyprofil als Standardprofil.
user@host#
set security ngfw default-profile ssl-proxy profile-name SSL-FP-PROFILE-1Erstellen Sie eine einheitliche Richtlinie und geben Sie die dynamische Anwendung als Übereinstimmungskriterien an.
user@host#
set security policies from-zone untrust to-zone trust policy from_internet match source-address anyuser@host#
set security policies from-zone untrust to-zone trust policy from_internet match destination-address anyuser@host#
set security policies from-zone untrust to-zone trust policy from_internet match application anyuser@host#
set security policies from-zone untrust to-zone trust policy from_internet match dynamic-application junos:webWenden Sie das SSL-Proxyprofil auf den zulässigen Datenverkehr in der Sicherheitsrichtlinie an.
user@host#
set security policies from-zone untrust to-zone trust policy from_internet then permit application-services ssl-proxy profile-name SSL-FP-PROFILE-1
Anforderungen
In diesem Beispiel werden die folgenden Hardware- und Softwarekomponenten verwendet:
Gerät der SRX-Serie mit Junos OS Version 18.2R1 oder höher. Dieses Konfigurationsbeispiel wurde für Junos OS Version 18.2R1 getestet.
Vor der Konfiguration dieser Funktion ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.
Übersicht
In diesem Beispiel konfigurieren Sie ein SSL-Weiterleitungs-Proxyprofil, indem Sie das Stamm-CA-Zertifikat angeben. Konfigurieren Sie das Profil als Nächstes als Standard-SSL-Proxyprofil. Jetzt erstellen Sie eine einheitliche Richtlinie und rufen den SSL-Proxy als Anwendungsservices für den zulässigen Datenverkehr auf.
Überprüfung
SSL-Proxy-Konfiguration überprüfen
Zweck
Bestätigen Sie, dass die Konfiguration ordnungsgemäß funktioniert, indem Sie die SSL-Proxystatistiken anzeigen.
Aktion
Geben Sie im Betriebsmodus den show services ssl proxy statistics
Befehl ein.
user@host> show services ssl proxy statistics
PIC:fwdd0 fpc[0] pic[0]
sessions matched 0
sessions bypassed:non-ssl 0
sessions bypassed:mem overflow 0
sessions bypassed:low memory 0
sessions created 0
sessions ignored 0
sessions active 0
sessions dropped 0
sessions whitelisted 0
whitelisted url category match 0
default profile hit 0
session dropped no default profile 0
policy hit no profile configured 0
Bedeutung
Die Befehlsausgabe zeigt die folgenden Informationen an:
Details zu den Sitzungen, die für den SSL-Proxy abgeglichen wurden.
Details zum Standard-SSL-Proxyprofil, z. B. die Sitzungen, in denen das Standardprofil angewendet wird, und die Sitzungen, die aufgrund des Fehlens des Standardprofils unterbrochen werden.
SNI-basierte dynamische Anwendungsinformationen für SSL-Proxy-Profil
Ab Junos OS Version 20.4R1 haben wir den Mechanismus zur Auswahl von SSL-Proxyprofilen erweitert, indem wir servername Indication (SNI) TLS-Erweiterungen zur Identifizierung dynamischer Anwendungen nutzen.
Das SSL-Proxy-Modul verschiebt die SSL-Profilauswahl, bis die dynamische Anwendung in einer Client-Hallo-Nachricht basierend auf dem SNI erkannt wird. Nach der Erkennung einer dynamischen Anwendung sucht das SSL-Proxy-Modul eine Firewall-Regel auf der Grundlage der identifizierten Anwendung und wählt ein entsprechendes SSL-Proxyprofil aus.
Die Nutzung der SNI-basierten dynamischen Anwendungsinformationen für das SSL-Proxyprofil führt zu einer genaueren Auswahl des SSL-Proxyprofils für die Sitzung. Standardmäßig sind die SNI-basierten dynamischen Anwendungsinformationen für das SSL-Proxyprofil auf dem Gerät der SRX-Serie aktiviert. Siehe Show Services SSL-Proxy-Zähler , um Zähler für SSL-Proxy zu überprüfen.