-
HINTERGRUND DER ERFINDUNG
-
1. Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich allgemein auf sichere Kommunikationsverbindungen
und genauer gesagt auf sichere Datenkommunikationen mit einem mobilen
Computer über
ein unsicheres Netzwerk.
-
2. Relevanter Stand der
Technik
-
Eine
typische Computerumgebung umfaßt ein
sicheres Netzwerk, wie zum Beispiel ein Local Area Network (LAN – Nahbereichsnetz)
oder ein Wide Area Network (WAN – Fernnetz), auf welches nur
durch Computer zugegriffen werden kann, die durch den Netzadministrator
für den
Zugriff autorisiert sind. Diese Netzwerke sind nicht öffentlich
und daher kann die Sicherheit in einfacher Weise mit üblichen
Techniken der Passortverwaltung kontrolliert werden. Mobile Nutzer
können
beispielsweise über Anwählverbindungen
durch einen Server oder ein Gate auf das Netzwerk zugreifen, welche
die Identität und
die Zugriffsrechte des Benutzers verifizieren.
-
Eine
wichtige Anwendung des Internets und anderer öffentlicher Datenkommunikationsnetzwerke besteht
in der Fähigkeit,
Daten zwischen mobilen Computern und dem sicheren internen Netzwerk
einer Organisation auszutauschen. Das öffentliche Netzwerk ist jedoch
nicht sicher. Ein internes sicheres Netzwerk verwendet eine Gateway-Maschine (Zugangsmaschine)
oder „Firewall", um das interne Netzwerk
mit dem externen, unsicheren Netzwerk zu verbinden. Eine Firewall
ist ein Hardware- und/oder Softwaresystem, welches dafür ausgelegt
ist, nicht autorisierten Zugriff zu oder von einem privaten Netzwerk
zu verhindern. Eine Firewall untersucht alle Pakete, die in das
private Netzwerk eindringen oder aus diesem herausgehen und blockiert
diejenigen, welche spezielle Sicherheitskriterien nicht erfüllen. In
einer Internetumgebung führt
das Gateway Sicherheitsvorgänge
auf der IP-Ebene aus, indem es beispielsweise SunScreenTM SKIP
verwendet (Sunscreen ist eine Marke von Sun Microsystems, Inc.). SKIP
ist ein auf Zertifizierung basierendes Schlüsselverwaltungsschema mit öffentlichem
Schlüssel,
welches eine Schlüsselverwaltung
für Internetprotokolle bereitstellt.
Datenkommunikationen, die auf diese Weise einen sicheren Gateway
verwenden, werden als „sicheres
IP" bezeichnet.
-
Alle
externen Hosts müssen
in der Lage sein, zu einem beliebigen Zeitpunkt unter Verwendung
von sicherem IP mit dem internen Netzwerk zu kommunizieren, sie
müssen
jedoch auch das interne Netzwerk erreichen können, während sie im offenen Bereich senden.
Dies ist zweckmäßig, weil
einige Dienstleistungen auf dem internen Netzwerk für die allgemeine Öffentlichkeit
zugänglich
sein müssen
(beispielsweise für
den Zugriff auf einen Netzserver oder zum Herunterladen von Software),
ebenso wie durch privilegierte Benutzer, wie zum Beispiel Angestellte,
die zusätzliche
Rechte bezüglich
dieser Dienste haben mögen,
zum Beispiel das Herunterladen von nicht öffentli chen Informationen.
Daher kann eine Gateway-Einrichtung nicht immer allein durch Herausfiltern
von Sendungen, die im Freibereich empfangen wurden, eine Kontrolle
der Autorisierung gewährleisten.
-
Früher sichere
IP-Systeme sehen eine Autorisierungskontrolle unter Verwendung von
Zugangskontrollisten (ACLs) vor, welche jede IP-Netzwerkadresse
(oder sonstige eindeutige Netzwerkkennung) auflisten, die für den Zugriff
auf eine bestimmte Ressource des internen Netzwerks autorisiert
ist. Im allgemeinen kann ein Gateway auf seiner ACL eine statische
IP-Adresse anordnen und eine Kommunikation von dieser Adresse für den Zugriff
auf Dienstleistungen des internen, sicheren Netzwerks autorisieren.
Während
dieses System bereits einige Probleme angeht, die mit der Zugriffskontrolle
verknüpft
sind, liefert es keine authentische Bestätigung, daß das empfangene Datenpaket
tatsächlich
seinen Ursprung von einer bestimmten Maschine hat.
-
Eine
besondere Schwierigkeit entsteht daraus, daß Hosts, welche mit dem externen
Netzwerk verbunden sind, sowohl „statische" Internetknoten (d.h. solche, die eine
dauerhaft zugeordnete IP-Adresse haben) oder mobile Knoten sein
können (d.h.
Knoten, die eine dynamisch zugeordnete IP-Adresse haben). Außerdem ist
es möglich,
daß ein
Host mit einer statischen Adresse zu einer gewissen Zeit in einem
sicheren Betrieb ist und zu einem anderen Zeitpunkt in einem offenen
Betrieb ist (beispielsweise wenn WindowsTM und
Unix zu verschiedenen Zeitpunkten auf dem Host läuft). Darüber hinaus können zwei
mobile Hosts mit unterschiedlichen Sicherheitseigenschaften zu verschiedenen
Zeitpunkten unter derselben dynamisch zugeordneten IP-Adresse auftreten.
In diesen Fällen
ist eine Autorisierung, die allein auf der IP-Adresse des eingehenden
Pakets beruht, unzureichend. Die Gateway-Maschine muß in der
Lage sein, die Authentizität
der Daten, die von einem ferngelegenen System empfangen wurden,
hinsichtlich ihres Ursprungs aus diesem System festzustellen oder
zu verifizieren. Diese Situation muß durch das Gateway korrekt
gehandhabt werden, um beispielsweise die Fremdübernahme von TCP-Verbindungen
zu verhindern.
-
Wenn
beispielsweise eine Maschine im Außenbereich, die eine sichere
IP verwendet, sich von dem Internet trennt und damit ihre IP-Adresse
freigibt, kann sie durch eine zweite Maschine ersetzt werden, die
im offenen Bereich sendet, und der die IP-Adresse der ersten Maschine
zugeordnet worden ist. Aus der Perspektive des sicheren Netzwerks
können
die eingehenden TCP-Pakete
entweder von der zweiten Maschine unter Verwendung der IP-Adresse der
ersten Maschine oder von der ersten Maschine kommen, die nunmehr
im freien Bereich sendet. Die zweite Maschine ist nicht in der Lage,
die Sicherheit der sicheren IP zu durchbrechen, kann jedoch in der Lage
sein, im freien Bereich Daten zu senden, die das interne Netzwerk
erreichen. In wünschenswerter Weise
muß daher
das Gateway den Unterschied zwischen diesen beiden Situationen erfassen
und Versuche der zweiten Maschine verhindern, anstelle der alten
Maschine Pakete zu senden. Gleichzeitig darf das Gateway nicht zulassen,
daß der
Rückzug
auf offenen Text durch einen Feind dahingehend mißbraucht
wird, daß sämtliche
Kommunikation im freien Bereich erzwungen wird. Die eingehenden
IP-Pakete kennzeichnen keine maschinenspezifische Information, welche
das Gateway in die Lage versetzen würden, zwischen der ersten Maschine
und der zweiten Maschine, welche dieselbe IP-Adresse verwendet, zu unterscheiden.
-
Viele
vorgeschlagene Ansätze
für die
Sicherheit mobiler Benutzer erfordern es, daß der mobile Benutzer die Sicherheitssoftware
auf den mobilen Maschine speziell konfiguriert. Dies macht jedoch
die Sicherheitssoftware in der Installation und Verwendung schwieriger,
was unerwünscht
ist. Um den weitverbreiteten Gebrauch sicherer IP auch in einer
Vielfalt von Maschinen zu fördern,
ist es wünschenswert, daß Softwareeinrichtungen
sich automatisch ohne besondere Bemühungen zum speziellen Konfigurieren
der Software installieren.
-
Frühere Lösungen,
einschließlich
SKIP und ähnlichen
IP-Sicherheitsprotokollen, bieten eine Unterstützung für mobile Hosts, indem sie ihnen
entweder eine permanente ID (auch Hauptschlüssel-ID oder SKIP MKID genannt)
zuordnen, welche in der mobilen Maschine gespeichert wird und mit
jedem IP-Paket übertragen
wird. Alternativ kann eine neue Sicherheitszuordnung jedesmal dann
bereitgestellt werden, wenn eine neue mobile IP-Adresse beschafft wird.
Auch wenn diese Lösungen
einen Eindringlich mit einer übernommenen
IP-Adresse am Lesen verschlüsselter
Pakete hindert, löst
dies nicht das Problem der Adreßübernahme,
solange das Gateway zuläßt, daß der mobile
Host im offenen Bereich Daten sendet. In diesen Fällen kann
der Eindringling das MKID-Feld auf Null setzen, um eine Kommunikation
im offenen Bereich zu erzwingen, während die Sicherheitszuordnung
durch das Gateway aufrechterhalten wird.
-
Darüber hinaus
erlaubt es dieser Ansatz Maschinen in dem internen Netzwerk nicht,
herauszufinden, ob das eingehende Link sicher ist. Das Gateway bewahrt
die Liste autorisierter Adressen auf und führt Verschlüsselungs/Entschlüsselungsfunktionen durch.
Diese Information wird nicht an die interne Netzwerkeinrichtungen
gesendet und auch nicht mit diesen gemeinsam verwendet. Daher können die
internen Netzwerkmaschinen aufgrund der Untersuchung der Kopfzeile
eines empfangenen Pakets nicht feststellen, ob das Paket von einem
sicheren IP-Link oder im freien Bereich empfangen wurde. Für die internen
Einrichtungen wäre
es zweckmäßig, diese
Information zur Verfügung
zu haben, so daß sie
in Reaktion auf den Empfang eines Pakets mit unerwarteten Sicherheitseigenschaften
in intelligenter Weise reagieren könnten.
-
Ein
weiterer Ansatz verwendet „Firewalls", welche die Fähigkeit
verleihen, für
ein Verstecken der Topologie eine Adreßübersetzung auszuführen. Dies verhindert
Bemühungen
nicht autorisierter Benutzer, die Struktur und potentiell verwundbaren
Punkte des internen Netzwerks herauszufinden. Auch wenn dieser Ansatz
die Fremdübernahme
von Adressen weniger effektiv macht, verhindert er dennoch nicht
deren Auftreten. Eine weitere Lösung
bezieht sich auf Kontrollnachrichten, die von mobilen Hosts gesendet werden,
um IP-Tunnelverbindungen bereitzustellen. Diese Tunnelverbindungen
liefern einen Mechanismus, der erforderlich ist, um Daten, die an
den mobilen Host adressiert sind, an eine dynamisch zugeordnete
IP-Adresse umzuleiten. Tunnelverbindungen verhindern eine Fremdübernahme
von Adressen durch Verschlüsseln
der Kopfzeileninformation des Pakets, ebenso wie des Dateninhalts
des Pakets, sind jedoch schwierig einzustellen und erfordern komplizierte
Sicherheitsverwaltungsmechanismen.
-
Die
Internet Engineering Task Force (IETF)-Arbeitsgruppen für mobile
IP haben sich auf eine mögliche
Lösung
für die
Unterstützung
mobiler Hosts in der derzeitigen Internetstruktur konzentriert. Hierfür wird mobilen
Hosts eine „Heimat-IP-Adresse° zugewiesen
sowie eine zeitweilige Routing- Adresse, die
verwendet wird, um den Verkehr zu adressieren. In dem Gateway von
dem mobilen Netzwerk zu dem traditionellen Internet kann eine Adreßübersetzung und
-umleitung erfolgen, so daß der
mobile Knoten zu allen Zeiten unter seiner Heimatadresse erreichbar
zu sein scheint. Dieser Ansatz kann zu einem Sicherheitsrisiko führen, falls
eine Anforderungsnachricht durch einen Host gesendet wurde, der
die dynamische Adresse übernommen
hat, ohne die Authentizität
derartiger Nachrichten kryptographisch zu verifizieren. Um dieses
Risiko zu vermeiden, müssen
alle über
einen mobilen Host an das sichere Netzwerk gesendeten Nachrichten
unter Verwendung eines Nachrichtenauthentisierungscodes, wie zum
Beispiel des MD-5-Schlüsselalgorithmus,
authentisiert werden.
-
Ein
Paper, ein unter dem Titel „Using
DHCP mit Computers that move" von
Perkins C. et al. veröffentlichtes
Dokument, Wireless Networks, US, ACM, Band 1, Nr. 3, !. Oktober
1955, Seiten 341–353
offenbart eine Anzahl von Mechanismen für die Verwendung des dynamischen
Hostkonfigurierungsprotokolls (DHCP) mit mobilen Computern, die
für den Zweck
ausgelegt sind, eine Beweglichkeit des Hosts zu gewährleisten.
-
Die
EP-Veröffentlichung
Nr. EP-A-0 483 547 von „IBM" offenbart eine Vorrichtung
zur Netzwerkadressenverwaltung und ein Verfahren für ein Kabelnetzwerk,
welches eine kabellose Kommunikation mit einer Mehrzahl mobiler
Nutzer unterstützt.
Das Kabelnetzwerk ist typischerweise von der Art, bei welcher Benutzer
des Netzwerks jeweils eine eindeutige Netzwerkzugriffsadresse zuerteilt
bekommen, wie zum Beispiel in einem TCP-IP-Netzwerk.
-
Es
besteht Bedarf an einem Sicherheitsverfahren und -system, welche
mobile Hosts in einem öffentlichen
Netzwerk unterstützen,
und welche die Sicherheitsrisiken lösen, die durch die dynamische
Zuordnung von IP-Adressen erzeugt werden, um zu verhindern, daß eine externe
Maschine an die Stelle einer sicheren Maschine tritt, und die es
internen Maschinen erlauben, festzustellen, ob die Maschine im Außenbereich
unter Verwendung einer sicheren Verbindung hereinkommt, und die
das System in die Lage versetzen, in einfacher Weise konfiguriert
und verwendet zu werden, so daß es
geladen werden kann, mit nur geringen oder ohne Eingriffe durch
Benutzer. Es ist außerdem
wünschenswert,
daß das
sichere Verfahren und System ohne Zugangskontrollisten, Zeitgeber
oder andere komplizierte Sicherheitsverwaltungssysteme implementiert
werden kann, so daß es
mit Lastausgleichsmechanismen kompatibel ist.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Aspekte
der Erfindung sind in den bei gefügten unabhängigen und abhängigen Ansprüchen definiert.
-
Kurz
gesagt, umfaßt
die vorliegende Erfindung, wie sie in den beigefügten Ansprüchen definiert wird, ein Verfahren
für die
sichere Datenkommunikation zwischen einem inneren Netzwerk und einer mobilen
Maschine, bei welchem ein Datenpaket von der mobilen Maschine empfangen
wird, welche eine bestimmte Netzwerkadresse hat. Es wird ein Vorrat an
sicheren Adressen bereitgestellt und eine Datenstruktur wird erzeugt,
um Zuordnungen von Adreßübersetzungen
bereitzuhalten. Jede Zuordnung erfolgt zwischen einer bestimmten
Netrwerkadresse und einer bestimmten sicheren Adresse. Wenn das empfangene
Datenpaket ein sicheres Datenpaket ist, so wird eine Zuordnung zwischen
der Netrwerkadresse des empfangenen Datenpakets und einer sicheren
Adresse in der Datenstruktur identifiziert und die Netzwerkadresse
des Datenpakets wird in die zugeordnete sichere Adresse übersetzt,
bevor das Datenpaket weiter zu höheren
Protokollebenen des Netzwerks geleitet wird. Wenn das empfangene
Datenpaket nicht sicher ist, wird es ohne Adreßübersetzung an die höheren Netzwerkprotokollebenen
weitergeleitet.
-
Gemäß einer
Ausführungsform
kann, wenn Pakete durch ein Netzwerk von einem inneren Netzwerk
empfangen werden und an eine sichere Adresse adressiert sind, die
sichere Adresse durch die entsprechende Netzwerkadresse ersetzt
werden, und das Paket kann verschlüsselt und authentisiert werden.
In dem hier verwendeten Sinn bezeichnet der Begriff „Sichern
eines Pakets" Authentisierung und/oder
Verschlüsselung – und nicht
notwendigerweise nur Verschlüsselung.
Auf diese Weise können bidirektionale
sichere Kommunikationen unterstützt werden.
-
KURZBESCHREIBUNG
DER FIGUREN
-
1 zeigt
eine Computerausrüstung,
die so programmiert ist, daß sie
das Verfahren und System gemäß der vorliegenden
Erfindung implementiert,
-
2 zeigt
eine Netrwerk-Computerumgebung, welche das Verfahren und System
gemäß der vorliegenden
Erfindung implementiert,
-
3 zeigt
in Form eines Blockdiagramms wesentliche Bestandteile einer Gateway-Maschine gemäß der vorliegenden
Erfindung,
-
4 zeigt
eine beispielhafte Datenstruktur zur Adreßübersetzung gemäß der vorliegenden
Erfindung,
-
5 zeigt
ein Flußdiagramm
von Schritten zur Verarbeitung interner Daten gemäß einer
Implementierung des Verfahrens und des Systems der vorliegenden
Erfindung, und
-
6 zeigt
ein Flußdiagramm
von Schritten, die implementiert sind, um von außerhalb kommende Daten gemäß der vorliegenden
Erfindung zu verarbeiten.
-
GENAUE BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Die
vorliegende Erfindung wird anhand eines Verfahrens und einer Vorrichtung
beschrieben, welche in Verbindung mit dem sicheren Internetprotokollsystem
SKIP implementiert werden. Es versteht sich jedoch, daß die wesentliche
Lehre der vorliegenden Erfindung auch auf andere Umgebungen angewendet
werden kann, in welchen Netzwerkadressen allgemein eindeutig sind
(d.h. nur ein Benutzer ist in der Lage, zur irgendeinem gegebenen
Zeitpunkt eine bestimmte, gegebene Adresse zu benutzen), und wobei
Sicherheit auf der ISO/OSI-Netzwerkebene ausgeführt wird.
-
Die
vorliegende Erfindung verwendet eine Kombination dynamisch freigegebener
Adreßübersetzung
zusammen mit Paketverschlüsselung
und Authentisierung, um eine sichere Datenver bindung zwischen einem „inneren" sicheren Netzwerk
und einem mobilen Host bereitzustellen. Als Option wird eine dynamisch
aufgefüllte
Zugangskontrolliste (ACL) in Kombination mit der Adreßübersetzung
verwendet. Sowohl nicht unterzeichnete Diffie-Hellman (uDH) Schlüssel als
auch X.509 Zertifikate können verwendet
werden, um mobile Hosts zu identifizieren. Dies verhindert, daß eine unsichere
Maschine die Identität
einer sicheren Maschine übernimmt
und ermöglicht
es Maschinen auf einem internen sicheren Netzwerk zu erkennen, ob
ein außenliegender Host
eine sichere Verbindung verwendet.
-
Eine
Strategie zur Annahme von uDH-Zertifikaten ohne weitere Analyse
ermöglicht
es, daß durch Benutzer
in einer sicheren Weise auf das System zugegriffen wird, während der
Administrator die nicht unterzeichneten Schlüssel nicht authentisieren muß, damit
sie benutzt werden können.
Auch wenn uDH-Zertifikate nicht als solche einer bestimmten Maschine
zugeordnet sind und daher weniger sicher sind als X.509-Zertifikate,
erweitert die vorliegende Erfindung den uDH-Schlüssel mit einer zugeordneten
sicheren IP-Adresse. Die nicht unterzeichneten uDH-Zertifikate können zu
einem späteren
Zeitpunkt durch einen Systemadministrator mit oder ohne Einbeziehung
des Benutzers zu X.509-Zertifikaten aufgewertet werden. Dies macht
das System in der Verwendung ohne eine Einbeziehung des Benutzers einfach
und macht es in einfacher Weise aufwertbar, um eine verbesserte
Sicherheit unter Verwendung von X.509-Zertifikaten oder Äquivalenten
bereitzustellen.
-
1 zeigt
ein Computersystem 100, welches so konfiguriert ist, daß es das
Verfahren und die Vorrichtung gemäß der vorliegenden Erfindung
implementiert. Ein Gateway-Computer 102 empfängt Datenkommunikationen
in Form von Datenpaketen von einem mobilen Host-Computer 104.
Der Gateway-Computer 102 weist eine Verarbeitungseinheit 106 zum
Ausführen
von Programmanweisungen auf, die durch einen oder mehrere Systembusse
mit einer Benutzerschnittstelle 108 verbunden ist. Die
Benutzerschnittstelle 108 enthält verfügbare Einrichtungen, um für einen
Benutzer Informationen anzuzeigen (beispielsweise eine CRT- oder
LCD-Anzeige oder dergleichen), ebenso wie Einrichtungen für die Entgegennahme
von Informationen von dem Benutzer (beispielsweise eine Tastatur,
eine Maus und dergleichen). Eine Speichereinheit 110 (beispielsweise RAM,
ROM, PROM und dergleichen) speichert Daten und Befehle für die Programmausführung. Die gesamte
oder ein Teil der Speichereinheit 110 kann mit dem Prozessor 106 integriert
sein.
-
Die
Speichereinheit 112 weist Massenspeichereinrichtungen (beispielsweise
Festplatten, CDROM, Netzwerklaufwerke und dergleichen) auf. Der
Netzwerkadapter 114 wandelt Daten von dem Systembus in
ein Format um, welches für
die Übermittlung über das öffentliche
Netzwerk 105 geeignet ist, und umgekehrt. Der Netzwerkadapter 114 unterstützt die
Kommunikation mit einem internen sicheren Netzwerk 107.
Ein System kann mehr als einen Netzwerkadapter 114 enthalten,
um ein gewünschtes Niveau
und eine gewünschte
Art der Netzwerkverbindungsfähigkeit
bereitzustellen. Der Netzwerkadapter 114 kann in äquivalenter
Weise durch ein Modem oder einen anderen analogen, digitalen oder
gemischten analog-digitalen Adapter für ein Kommunikationsnetzwerk
ersetzt werden.
-
Der
mobile Host 104 weist typischerweise eine ähnliche
Gruppe von Bestandteilen auf, einschließlich eines Prozessor 116,
einer Benutzerschnittstelle 118 und eines Hostspeichers 120.
Der mobile Hostspeicher 122 speichert in einem besonderen
Beispiel Programme und Daten, die über das Modem 124 durch
ein öffentliches
Netzwerk 105 an die Gateway-Maschine 102 übermittelt
werden. Im Betrieb greift der mobile Host 104 durch die
Gateway-Maschine 102 auf das sichere Netzwerk 107 zu.
-
Es
versteht sich, daß eine
typische Umgebung irgendeiner Anzahl anderer Einrichtungen einschließlich Workstations,
Servern, Personal-Computern und peripheren Einrichtungen, die mit
dem Netzwerk 107 verbunden sind, unterstützt. Jede
Einrichtung, die mit dem internen Netzwerk 107 verbunden ist,
wird durch eine lokale, eindeutige Netzwerkadresse identifiziert.
Jede oder alle derartigen Einrichtungen sind unter Verwendung der
Gateway-Maschine 102 über
das öffentliche
Netzwerk 105 zugänglich.
Außerdem
umfaßt
eine typische Umgebung eine Mehrzahl mobiler Hosts, die dem mobilen
Host 104 ähnlich
sind, ebenso wie statische Hosts, die unter Verwendung dauerhafter
Netzwerkadressen mit dem öffentlichen
Netzwerk 105 verbunden sind. Jede Einrichtung, die mit
dem öffentlichen
Netzwerk 105 verbunden ist, wird durch eine globale, eindeutige
Netzwerkadresse identifiziert. Einrichtungen, die mit dem internen
Netzwerk 107 verbunden sind, können auf Einrichtungen zugreifen,
die durch die Gateway-Maschine 102 mit dem öffentlichen
Netzwerk 105 verbunden sind.
-
2 zeigt
eine beispielhafte Kommunikations-Umgebung, wie zum Beispiel eine
Internet-Umgebung,
in welcher über
einen Serviceprovider (beispielsweise Internetserviceprovider (ISP
oder On-line-Serviceprovider) durch Maschinen 201 und 202 auf
das öffentliche
Netzwerk 105 zugegriffen wird. Serviceprovidermaschinen 201 und 202 sind
im wesentlichen programmierte Vielzweckcomputer ähnlich denjenigen, die in 1 dargestellt
sind, und welche optimiert sind, um eine Mehrzahl von Verbindungen
für mobile
Nutzermaschinen 104 und 214, ebenso wie für statische
Benutzer, wie zum Beispiel ein sicheres Netzwerk 107, bereitzustellen.
Serviceprovidermaschinen akzeptieren Verbindungsanfragen und authentisieren
Zugriffsrechte von Benutzern auf das öffentliche Netzwerk 105.
-
In
einer typischer Umgebung haben einige Benutzer dauerhaft zugeordnete
(d.h. statische) Netzwerkadressen, während andere Netzwerkadressen
haben, die durch eine Serviceprovidermaschine 201 oder 202 aus
einem Pool bzw. Vorrat von im Besitz des Serviceproviders befindlichen
Netzwerkadressen dynamisch zugeordnet werden. Auf diese Weise kann
der Serviceprovider Netzwerkadreßraum neu zuordnen und wiederverwerden
und muß lediglich
ausreichenden Netzwerkadreßraum
besitzen, um die maximale Anzahl gleichzeitig (angeschlossener)
Benutzer zu unterstützen.
Von besonderem Interesse für
das Verständnis
der Erfindung ist es, daß dem
mobilen Benutzer 104 von der Serviceprovidermaschine 201 eine
Netzwerkadresse zugewiesen kann. Nachdem der mobile Benutzer 104 die
Verbindung unterbrochen hat, kann dieselbe Netzwerkadresse dem mobilen
Benutzer 214 dynamisch zugewiesen werden.
-
Normale
mobile Benutzer 104 und 214 steuern die dynamische
Zuordnung von IP-Adressen nicht und können daher nicht kontrollieren,
welche Adresse empfangen wird. Ein Eindringling jedoch, der beispielsweise
die mobile Nutzermaschine 214 benutzt, kann verschiedene
Techniken verwenden, einschließlich
einer geheimen Absprache mit der Serviceprovidermaschine 201,
um die Wahrscheinlichkeit zu vergrößern, daß eine zuvor (oder sogar aktuell)
im Gebrauch befindliche IP-Adresse
von der mobilen Maschine 104 empfangen wird. Wie nachstehend
genauer beschrieben wird, kann, falls die mobile Maschine 104 eine
sichere Verbindung mit dem sicheren Netzwerk 107 bereitgestellt
hat, die eindringende mobile Maschine 214 Zugriffsprivilegien
erhalten, für
deren Besitz sie nicht autorisiert ist. Die vorliegende Erfindung
arbeitet derart, daß sie
einen solchen nicht-autorisierten
Zugriff, der durch Fremdübernahme
von Adressen ermöglicht
wird, verhindert.
-
Das
sichere Netzwerk 107 greift über eine Gateway-Maschine 102 auf
das unsichere Netzwerk 105 zu. Die Gateway-Maschine 102 hat
einen sicheren Anschluß,
der mit dem sicheren Netzwerk 107 verbunden ist (auch das
sichere Teilnetz 107 genannt), und hat einen unsicheren
Anschluß,
der mit dem unsicheren Netzwerk 105 beispielsweise durch eine
Serviceprovidermaschine 202 verbunden ist. Jede mit dem
sicheren Netzwerk 107 verbundene Einrichtung, wie zum Beispiel
ein Server 203, eine Workstation 205, eine Workstation 206 oder
die Gateway-Maschine 102, hat eine eindeutige Netzwerkadresse,
die verwendet wird, um Information innerhalb des sicheren Netzwerks 107 zu
leiten. Ein optionaler Hub 207 (Knotenpunkt) stellt eine
Verbindung zwischen Maschinen bereit, die mit dem sicheren Netzwerk 107 verbunden
sind. Die Gateway-Maschine 102 dient dazu, Daten in Form
von Datenpaketen weiterzuleiten, die einen Kopfzeilenabschnitt und
eine Nutzlast- bzw. Nutzdatenabschnitt haben, und zwar zwischen
Maschinen, die mit dem sicheren Netzwerk 107 und Maschinen,
die mit dem öffentlichen
Netzwerk 105 verbunden sind.
-
Die
Datenpakete, welche durch die Gateway-Maschine 102 hindurchtreten,
können
sicher sein, wie zum Beispiel SKIP-Pakete, oder sie können im
offenen Bereich liegen. Für
die allgemeine Verwendbarkeit ist es notwendig, daß die Gateway-Maschine 102 unsichere
Pakete unbehindert weiterleitet, während sie sichere Pakete in
angemessener Weise analysiert und in der Analyseeinrichtung 303 die
erforderlichen Verschlüssefungs-/Entschlüsselungsfunktionen
ausführt.
Die Datenpakete erhalten Kopfzeileninformation, welche eine Kennung
der Zieladresse enthalten, die eine eindeutige Netzwerkadresse kennzeichnet,
und zwar entweder auf dem sicheren Teilnetz oder auf dem unsicheren
Teilnetz, und welche das Datenpaket empfangen soll. Andere Felder
können
Schlüsselinformation
enthalten, welche für
Zwecke der Verschlüsselung/Entschlüsselung
und der Authentisierung verwendet werden.
-
Die
Gateway-Maschine 102 enthält eine Einrichtung 301 zur
Paketanalyse, welche in 3 dargestellt ist, und welche
Adressen von eingehenden und ausgehenden Paketen zu Maschinen außerhalb des
sicheren Netzwerks 107 überwacht.
Die vorliegende Erfindung arbeitet durch gezieltes Leiten der Pakete
abhängig
davon, ob die Kopfzeile des Paketes, so wie es empfangen wurde,
eine Adresse enthält,
welche in einem Eintrag einer Adreßübersetzungseinheit 302 gespeichert
ist. Die Adreßübersetzungseinheit 302 umfaßt eine
Datenstruktur 308, welche Adreßpaare hält, die einer sicheren „IP"-Adresse eine realen
Netzwerkadresse zuordnen (beispielsweise eine IPv4- oder Ipcv6-Adresse),
wie in 4 dargestellt. Optional kann jeder Eintrag einen
Zeitstempel oder andere Zustandsdaten oder Metadaten enthalten,
die für
bestimmte Anwendungen zweckmäßig sind.
In dem hier verwendeten Sinn ist eine „sichere IP"-Adresse eine Adresse,
die ähnlich
wie eine IP-Adresse
formatiert werden kann, die jedoch durch die Gateway-Maschine 102 dynamisch zugeord net
wird, wenn die Gateway-Maschine einen bestimmte mobilen Host autorisiert
hat. Die Gateway-Maschine 102 hat
einen Vorrat an sicheren IP-Adressen (beispielsweise eine reservierte
Klasse c des Teilnetzes oder 10.*-Netzes oder etwas Äquivalentes),
woraus sie die sichere IP-Adresse einem bestimmten Adreßpaar zuordnen
kann. Diese werden ausgewählt
und kontrolliert durch den Netzwerkadministrator, der die Gateway-Maschine 102 betreibt.
Irgendjemand innerhalb des Gateways, welcher eine solche Adresse
empfängt,
kann sicher sein, daß das Link
auf der Außenseite
sich nicht im offenen bzw. freien Bereich befindet. Dabei ist es
wünschenswert, wenn
zwei getrennte Adreßräume für die sichere IP-Adresse
verwendet werden, nämlich
einer für uDH-Zertifikate
und einer für
Zertifikate vom X.509-Typ.
-
Im
allgemeinen arbeitet die vorliegende Erfindung durch Zuordnung eines
sicheren IP:Netzwerkadreßpaars
in der Adreßübersetzungseinheit 302 auf
Basis des Schlüsselmaterials
des empfangenen Pakets, wenn eine sichere Verknüpfung bereitgestellt wird.
Das Schlüsselmaterial
ist ein Wert, welcher der Einheit zugeordnet wird, welche den Schlüssel hält, wie
zum Beispiel der „Hauptschlüssel" bzw. Generalschlüssel (Master
Key), der in SKIP verwendet wird, ebenso wie der uDH-Schlüssel oder X.509-Schlüssel, die
oben erläutert
wurden. Für
die Zwecke der vorliegenden Erfindung sei angenommen, daß jeder
Schlüssel
eindeutig ist (d.h. keine zwei mobilen Hosts verwenden gleichzeitig
denselben Schlüssel).
In SKIP ist dem Hauptschlüssel
eine Hauptschlüssel-ID
(MKID) zugeordnet, welche in der SKIP-Kopfzeile des Datenpakets übermittelt
wird.
-
Das
Adreßpaar
wird aufrechterhalten durch Aktualisieren der Netrwerkadresse, wann
immer ein sicheres Paket mit demselben Schlüsselmaterial empfangen wird,
wie von einem existierenden Adreßpaar. D.h., wenn der Host
A sichere Pakete von der IP-Adresse „1.2.3.4" sendet, erzeugt die Adreßübersetzungseinheit 302 ein
Adreßpaar,
welches eine zugeordnete, sichere IP-Adresse (zum Beispiel „7.7.7.7") hat, welche der
Netzwerk IP-Adresse 1.2.3.4 zugeordnet ist. Wenn der Host A später eine Verbindung über eine
andere IP-Adresse herstellt (beispielsweise 1.2.3.5) und dabei dasselbe
Schlüsselmaterial
verwendet (beispielsweise eine MKID, die zu dem Host A gehört), wird
das Adreßpaar
aktualisiert von „7.7.7.7:1.2.3.4" zu „7.7.7.7.:1.2.3.5". Auf diese Weise
enthalten die durch die Adreßübersetzungseinheit 302 aufrechterhaltenen
Adreßpaare
immer die Netzwerk IP-Adresse,
von welcher das letzte sichere Paket von dem Host A empfangen wurde. Das
Adreßpaar
ist die einzige Zustandsinformation, die aufbewahrt werden muß, auch
wenn andere Zustandsinformationen bestimmter Anwendungen enthalten
se in können.
-
Wenn
der Host A das Senden sicherer Pakete beendet, kann der Adreßpaareintrag
schließlich aus
der Adreßübersetzungseinrichtung 302 entfernt werden,
was anzeigt, daß eine
sichere Verbindung mit dieser IP-Adresse nicht mehr existiert. Der
Host A kann eine sichere Verbindung unter Verwendung des für den Host
A bekannten Schlüsselmaterials
zu jeder Zeit wiederherstellen, jedoch kann ein Eindringling, der
dieses Schlüsselmaterial
nicht kennt, keine sichere Verbindung von derselben IP-Adresse herstellen.
-
Es
versteht sich, daß,
während
das durch die Adreßübersetzungseinheit 302 erzeugte
Adreßpaar die
Netzwerkadresse des empfangenen Pakets enthält, diese Information den Zugriff
von irgendeiner Maschine, welche Pakete von dieser IP-Adresse sendet,
nicht autorisiert. Im Gegensatz zu früheren Sicherheitstechniken
vom ACL-Typ dient das Adreßpaar
in der Adreßübersetzungseinheit 302 dazu,
Pakete, welche an die sichere IP-Adresse adressiert sind, an die
zugehörige
Netzwerkadresse zu adressieren, beeinflußt jedoch nicht direkt die
Verschlüsselung/Entschlüsselung.
Wenn in der Adreßübersetzungseinheit 302 ein
Adreßpaar
existiert, so ist bekannt, daß es
von einer Maschine gekommen ist, welche sichere Pakete gesandt hat
und dementsprechend muß die
Verschlüsselung
und Authentisierung unter Verwendung der Verschlüsselungs-/Entschlüsselungseinheit 303 erfolgen.
Auf diese Weise hält
die Gateway-Maschine 102 eine sichere Verbindung aufrecht,
in welcher die Netzwerk IP-Adresse dem eindeutigen Schlüsselmaterial
folgt, welches zu einer bestimmten Maschine gehört, im Gegensatz zu Implementierungen
nach dem Stand der Technik, bei welchen die Netzwerk IP-Adresse
dauerhaft oder halb dauerhaft autorisiert war, sobald eine sichere Verbindung
hergestellt worden war.
-
Die
sichere IP-Adresse ist eine eindeutige Adresse, welche einer bestimmten
Maschine zugeordnet ist, oder genauer gesagt, dem von einer Maschine
gehaltenen Schlüssel
zugeordnet ist. Wenn die Gateway-Maschine, welche ein Datenpaket
empfängt,
ein Adreßpaar
für einen
bestimmten Schlüssel hat,
so sagt man, daß die
sendende Maschine der Gateway-Maschine „bekannt" sei. Wie unten beschrieben, werden
die Adreßpaare
in der Adreßübersetzungseinheit 302 dynamisch
zugeordnet und aufrechterhalten.
-
Im
Betrieb wird, wenn ein Paket empfangen wird, das Protokollfeld der
IP-Kopfzeile (oder etwas Äquivalentem)
für jedes
eingehende Paket untersucht, um festzustellen, ob das Paket sicher
ist. Beispielsweise sind SKIP-Pakete durch eine „57" in dem Protokollfeld gekennzeichnet.
Pakete, welche im freien Bereich empfangen werden, werden in konventioneller
Weise transparent zu höheren
Protokollebenen weitergeleitet. In ähnlicher Linie werden ausgehende Pakete,
die von dem Gateway 102 im freien Bereich empfangen werden,
transparent weitergeleitet. Gemäß der vorliegenden
Erfindung erfordern Datenpakete, die in den freien Bereich gesendet
werden, keine Adreßübersetzung
und haben daher keinen Adreßpaareintrag,
es sei denn, von der selben IP-Adresse wurden zuvor sichere Pakete
empfangen.
-
Wenn
ein eingehendes Paket als sicher gekennzeichnet ist (indem es beispielsweise
einen passenden Wert in dem Protokollfeld der IP-Kopfzeile des Pakets
hat), wird der Schlüssel
durch eine Analyseeinrichtung 301 aus jedem Paket extrahiert.
Die Gateway-Maschine 102 bestimmt als nächstes, ob der extrahierte
Schlüssel
der Gateway-Maschine bekannt ist. Die Analyseeinrichtung 301 verwendet
den Schlüssel,
um die entsprechende sichere IP-Adresse zu finden oder zu bestimmen.
Wenn nicht bereits ein Adreßpaar
existiert, wird der öffentliche
Schlüssel
der sendenden Maschine von der sendenden Maschine selbst erhalten
oder von der Datenbank 307. Die Datenbank 307 kann
eine lokale Datenbank oder eine ferngelegene zentrale Ablage sein,
welche das Zertifikataufdeckungsprotokoll (CDP-Certivicate Discovery
Protocol) verwendet.
-
Optional
kann in Verbindung mit den Adreßübersetzungsmechanismen
gemäß der vorliegenden Erfindung
eine Adreßkontrolliste 304 verwendet
werden, um zu verifizieren, daß die
im Außenbereich
befindliche Maschine ein autorisierter Benutzer ist, indem überprüft wird,
ob die Adresse der auf der Außenseite
liegenden Maschine in der Adreßkontrolliste (ACL) 304 existiert.
Die Ver wendung einer ACL bringt allerdings einige der inhärenten Einschränkungen der
ACL-Technologie mit sich, wie zum Beispiel eine begrenzte Leistungsfähigkeit
hinsichtlich des Belastungsausgleichs.
-
Die
Gateway-Maschine 102 ordnet jeder Maschine, welche sichere
Datenpakete sendet, eine sichere IP-Adresse zu. Alle Einrichtungen
mit in dem sicheren Netzwerk 107 verwenden diese lokale,
eindeutige Adresse als die Zieladresse für Pakete, die für die Lieferung
an eine sichere mobile Maschine 204 oder 214 vorgesehen
sind. Für
sichere Pakete übersetzt
die Adreßübersetzungseinrichtung 302 (beispielsweise
eine Nachschlagetabelle, ein Adreßcache, ein inhaltsadressierbarer
Speicher oder dergleichen) die lokale, eindeutige sichere Adresse
in die passende reale Netzwerkadresse. Die Analyseeinrichtung 301 betreibt
auch die Verschlüsselungs-/Entschlüsselungseinheit 303,
um ausgehende Pakete zu verschlüsseln
und um eingehende Pakete zu entschlüsseln. Das Datenpaket wird
mit der übersetzten
Adresse weitergesendet.
-
Die
Gateway-Maschine 102 kann die Datenbank 307 pflegen,
um Schlüsselzertifikate,
wie zum Beispiel die nicht unterzeichneten Diffie-Hellman-Schlüssel (uDH-)
und die X.509-Schlüsselzertifikate
zu speichern. Die Datenbank 307 bewahrt die Schlüsselinformation
und die historische Sicherheitszuordnungsinformation für außen befindliche
Maschinen (beispielsweise die mobile Maschine 204 und 214)
auf. Die Datenbank 307 hält auch eine sichere lokale
eindeutige Adresse aufrecht, wie zum Beispiel eine sichere IP-Adresse,
welche jedem Schlüsselinformationseintrag
zugeordnet ist. Auf diese Weise ermöglicht die Datenbank 307,
daß eine frühere Sicherheitszuordnung
wiederhergestellt wird, wann immer ein sicheres Datenpaket empfangen wird,
für welches
in der Datenbank 307 bereits Schlüsselinformation existiert.
-
Bei
früheren
Anwendungen wurde die Adreßübersetzung
für ausgehende
Datenpakete auf Basis der Annahme, daß die Übersetzung gültig war, solange
weiterhin Pakete zu und von der angegebenen, globalen eindeutige
Adresse empfangen oder zu dieser gesendet wurden, unbegrenzt ausgeführt. Dieses
ermöglichte
es jedoch dem sicheren Netzwerk, Datenpakete weiterhin an eine Netzwerkadresse
zu senden, selbst nachdem eine andere Maschine diese Adresse übernommen
hatte. Gemäß der vorliegenden
Erfindung wird die Adreßübersetzungseinheit 302 nicht
für Pakete
verwendet, die im freien Bereich empfangen werden, unabhängig von
der IP-Adresse, von welcher das unsichere Paket empfangen wurde.
Demnach wird, auch wenn ein Paket von einer IP-Adresse empfangen
wurde, für
welche eine sichere Zuordnung beendet wird, diese nicht der sicheren
IP-Adresse erneut
zugeordnet, wenn das Paket im freien Bereich empfangen wird.
-
Einrichtungen
auf dem inneren Netzwerk kommunizieren mit dem sicheren, mobilen
Host unter Verwendung der sicheren IP-Adresse, die in der Adreßübersetzung 302 gespeichert
ist. Die Adreßübersetzungseinheit 302 übersetzt
die sichere IP-Adresse in eine reale Netzwerkadresse (beispielsweise
Ipv4- oder Ipv6-Adressen). für
den gesamten Verkehr, der an eine sichere IP-Adresse adressiert ist,
werden die Daten bzw. die Nutzlast des Pakets verschlüsselt. Pakete,
die direkt an reale Netzwerkadressen adressiert sind, werden in
konventioneller Weise durchgeleitet.
-
In
einer bevorzugten Implementierung fährt die Gateway-Maschine 102 fort,
die Adreßübersetzung
an eine bestimmt IP-Adresse für
ausgehende Pakete für
eine begrenzte Zeit freizugeben, nachdem der Gateway 102 das
Empfangen sicherer Pakete von dieser IP-Adresse gestoppt hat. Da irgendwelche Pakete,
die an diese sichere IP-Adresse adressiert sind, unter Verwendung
der Schlüsselinformation des
legitimierten Hosts verschlüsselt
werden, gibt es kein Problem bei der Fortsetzung des Aussendens von
Daten an die IP-Adresse, selbst wenn diese IP-Adresse übernommen
worden ist, da der Eindringling nicht die Schlüsselinformation des legitimen Hosts
hat. Wenn der legitime Host erneut damit beginnt, sichere Pakete
zu senden, so kann der Zeitgeber 306 zurückgesetzt
werden (wenn er nicht schon abgelaufen ist) und die Adreßübersetzung
wird fortgesetzt. Wenn die vorgewählte Zeit bereits abgelaufen
ist, muß die
sichere Zuordnung erneut verifiziert werden und ein neuer Adreßübersetzungseintrag eingestellt
werden. Dies setzt einen legitimierten Host in die Lage, sowohl
sichere als auch freie Pakete mit einer minimalen Zusatzlast zu
senden, die erforderlich ist, um die sichere Verbindung aufrecht
zu erhalten.
-
Die
Arbeitsweise des Verfahrens und Systems gemäß der vorliegenden Erfindung
versteht man am einfachsten in Bezug auf die Verarbeitung eingehender
und ausgehender Datenpakete. Wesentliche Schritte werden unter Bezug
auf die Flußdiagramme
beschrieben, die in 5 dargestellt sind. Für irgendwelche
eingehenden Datenpakete bestimmt die Gateway-Maschine 102,
ob das Datenpaket sicher ist (beispielsweise ein SKIP-Paket), oder ob
es offen bzw. im freien Bereich empfangen wurde. Pakete, die offen
empfangen wurden, werden transparent auf höhere Netzwerkebenen weitergeleitet
für das
Leiten an spezielle Einrichtungen innerhalb des sicheren Netzwerks 107.
Für Pakete,
welche offen empfangen werden, wird eine Adreßübersetzung nicht durchgeführt.
-
Wenn
das empfangene Datenpaket sicher ist (d.h. die Maschine, welche
das Paket sendet, verwendet SKIP), so enthält es Schlüsselinformation, welche das
Gateway 102 in die Lage versetzt, seine öffentlichen
Schlüsselwerte
zu bestimmen. Diese Schlüsselinformation
ist typischerweise nicht der Schlüssel selbst, da das Übersenden
eines Schlüssels
mit jedem Paket eine nicht akzeptable Menge an Zusatzlast hinzufügen würde und
den Schlüssel
in nicht erwünschtem,
Umfang freilegen würde.
Stattdessen weist die Schlüsselinformation
typischerweise eine Schlüsselidentifizierung
auf, wie zum Beispiel die SKIP NSID/MKID-Information, die relativ
kompakt ist.
-
Das
Verfahren gemäß der vorliegenden
Erfindung stellt fest, ob der Schlüssel der Gateway-Maschine bekannt
ist. Wenn der Schlüssel
vor kurzem verwendet wurde, so ist er möglicherweise in einem Cache,
Register oder lokalen Speicher (nicht dargestellt) verfügbar. Falls
nicht, wird der öffentliche Schlüssel, welcher
der Adresse der sendenden Maschine entspricht, aus einer Datenbank 307 oder über ein
Zertifikataufdeckungsprotokoll (CDP) gewonnen. In einer bevorzugten
Implementierung wird, wenn sowohl ein uDH- als auch ein X-509-Schlüssel verfügbar sind,
vorzugsweise der X.509-Schlüssel verwendet.
Als ein Teil des Gewinnens eines Schlüssels verifiziert das System
in wünschenswerter
Weise, daß es
keinen Widerruf oder abgelehnten Zugriff oder irgendeine andere
Ungültigmachung
für diesen Schlüssel gibt,
welche der Gateway-Maschine bekannt ist.
-
Sobald
man einen öffentlichen
Schlüssel
erhalten hat, wird das Verfahren fortgesetzt durch Gewinnen oder
Zuordnen einer sicheren IP-Adresse zu der Maschine, welche das Datenpaket
sendet. Wenn die öffentliche
Schlüsselinformation
ein X.509-Schlüsselzertifikat
ist, wird die in dem Zertifikat gespeicherte Adresse als eine sichere
IP-Adresse verwendet, die der Einheit zugewiesen wird, welche das
Schlüsselzertifikat
hält. Wenn
die öffentliche Schlüsselinformation
ein uDH-Schlüs selzertifikat
ist, enthält
die Datenbank 307 eine Aufzeichnung einer zuvor zugeordneten
sichern IP-Adresse,
welche diesem Zertifikat entspricht. Wenn zuvor noch keine sichere
IP-Adresse zugeordnet worden ist, ordnet die Gateway-Maschine 102 eine
sichere IP-Adresse zu und speichert diese in der Adreßübersetzungseinheit 302.
Wenn jeder Zertifikatseintrag in der Adreßübersetzungseinrichtung 302 einen
Zeitstempel enthält, so
wird dieser aktualisiert. An diesem Punkt kennt die Gateway-Maschine 102 den
Schlüssel
für die
Maschine und eine sichere IP-Adresse.
-
Es
gibt zumindest drei Arten, die Adreßübersetzungseinträge zu handhaben.
Diese optionalen Verfahren dienen dazu, die Adreßübersetzungstabelle aufrecht
zu erhalten bzw. zu pflegen und alte, nicht verwendete Einträge zu löschen. Diese
Verfahren umfassen:
- 1) Wenn die Gesamtzahl
gleichzeitiger Benutzer kleiner ist als der verfügbare Adreßraum, so ist es nicht notwendig,
daß die
Adreßübersetzungseinträge ablaufen.
Das Gateway kann die Adreßübersetzungseinträge für alle gleichzeitigen
Benutzer halten und muß sich
lediglich an die letzte verwendete Verbindung einer sicheren IP-Adresse (und
Schlüsselinformation)
mit der eingehenden Netzwerkadresse erinnern.
- 2) In einem zweiten Fall gibt es eine Erinnerung an den Zeitpunkt,
wann das letzte sichere Paket eingegangen ist, indem beispielsweise
mit jedem Eintrag in der Adreßübersetzungseinheit 302 ein Zeitstempel
gespeichert wird. Sobald eine ausreichend lange Zeit vergangen ist
(beispielsweise eine Stunde), ohne daß irgendwelche eingehenden
sicheren Pakete von dieser Netzwerkadresse empfangen wurden, so
wird der Adreßübersetzungseintrag
für diesen
Host aus der Adreßübersetzungstabelle
entfernt oder ungültig
gemacht. In diesem Fall enthält
der Adreßübersetzungsmechanismus
Einrichtungen zum Überwachen
der Zeitstempel für
jeden Eintrag und das Ablaufen, Ungültigmachen oder Entfernen alter
Einträge.
- 3) In einem dritten Fall wird ein Zeitgeber bzw. eine Uhr 306 gestartet,
wenn ein Paket im offenen Bereich von einer IP-Adresse empfangen
wurde, für
welche in der Adreßübersetzungseinheit 302 ein
Eintrag existiert. Der Zeitgeber 306 bewirkt, daß die Adreßübersetzung
für die
Adresse dieser Maschine ausläuft,
nachdem eine vorgewählte Zeit
verstrichen ist. Wenn anschließend
ankommende sichere Pakete von derselben Adresse derselben Maschine
empfangen werden, wird der Zeitgeber 306 zurückgesetzt,
so daß die
Adreßübersetzung
nicht abläuft.
Auf diese Weise arbeitet die vorliegende Erfindung in gewisser Weise
wie ein „Watchdog"-Zeitgeber, der die
Adreßübersetzung
beendet, es sei, es wird ein sicheres Paket innerhalb einer durch
den Zeitgeber 306 festgelegten Zeitdauer empfangen.
-
Schritte,
die mit der Verarbeitung von ausgehenden Paketen einhergehen, sind
in 6 dargestellt. Für Pakete, die an eine sichere
IP-Adresse in der Übersetzungseinrichtung 302 adressiert
sind, wird die sichere IP-Adresse anschließend in die reale, dynamisch
zugeordnete Netzwerkadresse übersetzt,
die von der Maschine 202 oder 204 im Außenbereich
gehalten wird. Im Fall von sicheren SKIP-Paketen wird die Adreßübersetzung
von dieser NSID/MKID-Adresse auf der Außenseite der sicheren IP-Adresse
auf der Innenseite eingestellt. Wann immer eine Netzwerk IP-Adresse
in eine sichere IP-Adresse übersetzt
wird, die zuvor verwende wurde, wird der ältere Eintrag entfernt.
-
Für den gesamten
eingehenden, gesicherten Verkehr werden Adressen in die sichere
IP-Adresse übersetzt,
es wird eine Entschlüsselung
ausgeführt und
die Datenpakete werden auf das interne Netzwerk 107 weitergesendet.
Alle eingehenden Datenpakete von der Außenseite, die angeben, von
einer sicheren IP-Adresse zu kommen, werden herausgefiltert und
ausgesondert. Da der Vorrat an sicheren IP-Adressen nur dem internen
Netzwerk 107 bekannt ist, sollte keine externe Einrichtung
in der Lage sein, diese sichere IP-Adresse zu verwenden, einschließlich der
Maschine, welcher sie zugeordnet ist.
-
Ausgehender
Verkehr, falls dieser Verkehr an eine normale außenliegende Adresse geht (beispielsweise
eine nicht sichere IP-Netzwerkadresse, wie zum Beispiel eine IP-Adresse),
wird unmodifiziert an das öffentliche
Netzwerk 105 weitergeleitet, ohne jegliche Adreßübersetzung.
Wenn ein ausgehendes Datenpaket an eine sichere IP-Adresse adressiert wird,
wird die Adreßübersetzung
wie oben beschrieben durchgeführt.
In Fällen,
in welchen es keine Zuordnung in der Adreßübersetzungseinrichtung 302 gibt,
wird das Paket ausgesondert.
-
In
einer besonderen Implementierung zur Erweiterung einer großen Verfügbarkeit
wird jeder mobile Host während
der Systemkonfigurierung mit SKIP (oder einem äquivalenten Sicherheitsprotokoll), CDP-Lauf
und einem starken DH-Schlüsselpaar
vorkonfiguriert, welche während
der Systemkonfigurierung erzeugt werden. Um mit der Verwendung des SKIP-Gateways
zu beginnen, senden diese Maschinen einfach SKIP-Pakete. Das Gateway
holt das uDH-Zertifikat von diesen heran und beginnt dann in der
Tat damit, es unmittelbar zu verwenden (es sei denn, es ist durch
den Gateway-Administrator in andere Weise konfiguriert). Falls eine
eher dauerhaft Sicherheitsverknüpfung
erwünscht
ist, zeichnet der Gateway-Administrator den öffentlichen Schlüssel des
mobilen Hosts ab und verbindet damit die sichere IP-Adresse in einer
sehr starken Weise mit dem öffentlichen
Schlüsselwert.
Der Benutzer des mobilen Hosts ist nicht involviert, es sei denn,
der Gateway-Administrator
möchte
eine Identität
bestätigen, die
dem Zertifikat hinzugefügt
werden kann.
-
Maschinen
auf der Außenseite
(unter der Annahme, daß sie
allesamt unterschiedliches Schlüsselmaterial
haben) können
einander einfach nicht stören.
Wenn die dynamische IP-Adresse unter Verwendung einer sicheren Verbindung
einem anderen Host zugeordnet wird, kann die Veränderung aufgrund der unterschiedlichen
MKIDs erfaßt
und damit die Adreßübersetzung
in einfacher Weise umgeschaltet werden, indem der Adreßpaareintrag
in der Adreßübersetzungseinrichtung 302 aktualisiert
wird beispielsweise werden dieser Netzwerkadresse eine neue sichere
IP-Adresse und neues Schlüsselmaterial
zugeordnet). Wenn eine Veränderung
von einer Non-SKIP- zu einer SKIP-Maschine erfolgt, kann die Verbindung
in einfacher Weise aufgewertet werden durch Erzeugen eines Adreßübersetzungseintrags, wo
zuvor für
die Non-SKIP-Maschine keiner existierte.
-
Wenn
eine Adresse, von welcher SKIP-Pakete empfangen wurden, im freien
Bereich sendet bzw. kommuniziert, werden die eingehenden Pakete mit
ihrer Adresse im außenliegenden
Bereich weitergeleitet. Ausgehende Pakete an diese Adresse werden
ungehindert und im freien Bereich durchgeleitet. Wenn sich immer
noch SKIP-Pakete auf ihrem Weg nach außen befinden, werden sie derselben
Adresse zugeordnet, nach SKIP behandelt und weitergeleitet. Dies
beeinträchtigt
nicht die Sicherheit, weil die Non-SKIP-Maschine diese Pakete einfach
fortwirft.
-
Da
die Adreßübersetzung
und die Verschlüsselung/Entschlüsselung
unter der Kontrolle des legitimen Hosts bleiben, kann der legitime
Host sich unmittelbar im Klartext mit dem internen Netzwerk unterhalten,
während
ein Eindringling, der versucht, einen außenliegenden Host in den Klartextbetrieb
zu bringen, scheitert. Der legitime Host wird mit dem SKIP (oder
einem äquivalenten
Sicherheitsbetrieb) fortsetzen, die Adreßübersetzung holen und die Übersetzung
wird nicht erlöschen.
Selbst wenn die Adreßübersetzung
erlischt, wird sie einfach wiederhergestellt, wenn der legitime
Host später
mit dem Senden sicherer Pakete beginnt.
-
In
einer optionalen Ausführungsform
können die
sicheren IP-Adressen, welche uDHSchlüsselzertifikaten zugeordnet
sind, eine gewisse Zeit, nachdem sie zuletzt verwendet worden sind,
erlöschen bzw.
ablaufen, was die Wiederverwendung des Vorrats ermöglicht.
Dieses Erlöschen
bzw. dieser Zeitablauf liegt in der Größenordnung von Tagen oder Wochen.
Dies ist eine Frage der Bequemlichkeit, da es die Datenbank bereinigt
und sie kleiner macht, indem Information über sichere IP.Adressen entfernt
wird, die nicht mehr gebraucht wird.
-
Ein
möglicher
Angriff besteht darin, daß ein Eindringling
versucht, einen Fehler der Ablehnung einer Dienstleistung in dem
Gateway 102 zu bewirken. Bei einem solchen Angriff könnte ein
Eindringling eine große
Anzahl von uDH-Zertifikaten zusammengesetzt haben, die an das Gateway 102 gesendet werden.
Dies würde
bewirken, daß das
Gateway 102 aus seinem Vorrat sichere IP-Adressen den uDH-Zertifikaten
zuweist und könnten
den verfügbaren
Vorrat an Adressen erschöpfen.
Dieser Angriff führt
zu einer teilweisen Versagung eines Dienstes für die legitimen Hosts, welche
versuchen, eine sichere Verbindung mit dem Gateway unter Verwendung
von uDH-Zertifikaten bereitzustellen, die noch nicht sicheren IP-Adressen
zugeordnet sind. Die existierenden Verbindungen jedoch, denen sichere IP-Adressen
zugeordnet sind, bleiben erhalten und Neuankömmlinge, welche X.509-Zertifikate
haben, können
mit ihrem Verbindungsaufbau ebenfalls fortfahren. Lediglich Hosts,
die auf einer uDH beruhen, für
welche noch keine Adreßzuordnung
stattgefunden hat, könnten
nicht verbunden werden. Diese Art von Angriff ist detektierbar und
nicht so schwerwiegend.
-
Auch
wenn die Erfindung mit einem gewissen Maß an Einzelheiten beschrieben
und dargestellt worden ist, versteht es sich, daß die vorliegende Offenbarung
lediglich zur Darstellung eines Beispiels gegeben wurde und daß Fachleute
auf diesem Gebiet zahlreiche Veränderungen
in der Kombination und Anordnung von Teilen vornehmen können, ohne vom
Schutzumfang der Erfindung abzuweichen, wie er nachstehend beansprucht
wird.