-
Diese
Erfindung bezieht sich auf ein Verfahren zum Schutz von Computersystemen
gegen eine unerwünschte
externe Störung
wie beispielsweise durch Viren, auf ein Computerprogramm zum Ausführen eines
derartigen Schutzes und auf ein dadurch geschütztes Computersystem.
-
Computersoftwareanwendungen
bieten fortlaufend flexiblere Merkmale und werden besser integriert,
während
sich die Computertechnik entwickelt. Bedauerlicherweise hat dies
den Effekt, dass Computersysteme zunehmend Angriffen ausgesetzt
sind: Angriffe durch Trojaner-Software nutzen verborgene Merkmale
von Anwendungssoftware aus, die auf einem Computer eines Opfers
läuft,
und Angriffe durch Viren führen
dazu, dass durch einen Angreifer eingeführte Software sich von einem
Computer auf einem anderen ausbreitet. Der Computersystemschutz
wird daher fortlaufend schwieriger, während die Technik fortschreitet.
Angriffe auf Computersysteme können in
ihnen enthaltene Informationen beschädigen, diese Informationen
entweichen lassen oder berechtigte Computersystemanwender daran
hindern, ihre Arbeit auszuführen.
-
Das
derzeitige optimale Verfahren der Industrie zum Computersystemschutz,
wie es im Lehrbuch "Network
Security" von Kaufman,
Perlman und Speciner beschrieben ist, besteht darin, eine Softwareprüfeinrichtung
auf Daten anzuwenden, während
diese in ein Computersystem hineingelangen: Die Prüfeinrichtung
identifiziert einen möglichen
Angriff, wobei jegliche Daten zurückgewiesen werden können, die
einen Angriff darzustellen scheinen. Bedauerlicherweise ist es sehr
schwierig, mithilfe von Softwareprüfeinrichtungen einen An griff
korrekt zu identifizieren, und es ist oft notwendig, übervorsichtig
zu sein. Die Folge ist, dass unschädlichen und eventuell wertvollen
Daten nicht ermöglicht
wird, in das System hineinzugelangen.
-
Ein
Computersystem, das unschädliche
und zuweilen wertvolle Daten zurückweist,
ist kein zuverlässiges
berufliches Werkzeug; daher besteht eine zum Verringern des Datenverlusts
bekannte Vorgehensweise darin, zurückgewiesene Daten unter eine so
genannte "Quarantäne" zu stellen: Eine
Quarantäne
ist ein Bereich des Computerspeichers, der normalen Anwendern und
ihren Softwareanwendungen wie etwa Textprogrammen nicht zugänglich ist,
jedoch stattdessen Computerexperten zugänglich ist, die zurückgewiesene
Daten manuell untersuchen und die entscheiden können, ob sie schädlich sind oder
nicht. Eine manuelle Expertenuntersuchung von Daten unter Quarantäne kann
beim Feststellen eines Angriffs viel exakter sein als eine Softwareprüfeinrichtung.
Dadurch kann ein Anteil von Daten, der von einer automatischen Softwareprüfeinrichtung
zurückgewiesen
wurde, später
als unschädlich
identifiziert und in das Computersystem hineingelassen werden.
-
Eine
manuelle Untersuchung von unter Quarantäne gestellten Daten erhöht die Zuverlässigkeit der
Kommunikation zwischen einem Computersystem und der Außenwelt,
führt jedoch
zu einer Verzögerung,
die erheblich sein kann, und erfordert für ihre Durchführung kostspieliges
Expertenpersonal. Außerdem
sind sowohl automatische Prüfeinrichtungen als
auch eine manuelle Untersuchung fehleranfällig. Insbesondere können sowohl
automatische als auch manuelle Prüfungen neue und daher unbekannte
Angriffsformen nur schlecht feststellen. Angriffsformen sind Funktionalitäten zugeordnet,
die in Anwendungen verfügbar
sind; somit treten neue Angriffsformen auf den Plan, während Softwareanwendungen
weiterentwickelt werden. Daher ist das derzeitige optimale Verfahren
der Industrie zum Computersystemschutz kostspielig und ineffektiv,
und diese Situation bessert sich nicht.
-
Ein
anderes, als "Sandkasten-Methode" bezeichnetes Verfahren
nach dem Stand der Technik ist im Lehrbuch "JAVA Security" von Scott Oaks beschrieben: Es sieht
eine Alternative zum Ansatz der Datenzurückweisung vor. Bei diesem Verfahren
werden Daten in ein Computersystem hineingelassen, aber die Systemumgebung,
d. h. die Art und Weise, in der die Daten genutzt werden können, ist
beschränkt.
Wenn sich erweist, dass Daten einen Angriff darstellen, hat der
Trojaner oder das Virus, den bzw. das sie ausführen, nur Zugriff auf die beschränkte Umgebung
und kann keine Softwareanwendungen außerhalb von ihr, d. h. jenseits
der Sandkastenbegrenzung, zerstören.
-
Die
häufigste
Form des Sandkastens ist die für
JAVA®-Applets
vorgesehene, die selbstständige, in
der Sprache JAVA von Sun Microsystems geschriebene Software-Elemente
sind, die in einer großen
Vielfalt von unterschiedlichen Computertypen ausgeführt werden
können.
Bedauerlicherweise hat der JAVA®-Sandkasten
den Nachteil, dass er nur bei JAVA®-Applets
und nicht bei Daten in irgendeiner anderen Form funktioniert. Beispielsweise
kann ein Microsoft®-Word-Dokument nicht durch die Microsoft®-Word-Anwendung
innerhalb eines JAVA®-Sandkastens bearbeitet
werden. Die Verwendung von Java zum Bereitstellen einer Schutzdomäne für aus dem
Internet heruntergeladene Daten wurde von Islam, N., u. a. in "A Flexible Security
Model for Using Internet Content",
Internet, 28. Juni 1997, XP002138803, offenbart.
-
In "A Flexible Security
Model for Using Internet Content",
INTERNET, 28. Juni 1997, schlagen Islam u. a. eine Architektur vor,
die ein System für
die Nutzung als vertrauenswürdig
gekennzeichneter Inhalte integriert, um die Ausführung heruntergeladener Inhalte
zu steuern, wobei Vertrauensgrade für Hersteller, zertifizierende
Bevollmächtigte,
Netze und Inhaltsserver zugrunde gelegt werden (siehe auch zwei
IEEE-Abhandlungen von 1997 von Islam u. a. und Anand u. a. mit dem
gleichen Titel). In dieser Architektur laden Auftraggeber (Kunden)
Inhalte herunter, die gekennzeichnet sind, um sie zu authentifizieren
und es einer Schutzdomäne
zu ermöglichen,
für sie
abgeleitet zu werden. Das System zur Nutzung gekennzeichneter Inhalte
ist über
ein nicht vertrauenswürdiges
Netz mit einem nicht vertrauenswürdigen
Inhalts-Server, der Inhalte zum Herunterladen enthält, einem
Bewertungsdienst für
vertrauenswürdige
Inhalte, einem Verteildienst für
Vertrauensrichtlinien, der Richtliniendatenbanken an einen herunterladenden
Auftraggeber verteilt, und einem Hersteller der Inhalte verbunden.
Softwarehersteller sind in unterschiedlichen Graden vertrauenswürdig.
-
Das
System zur Nutzung gekennzeichneter Inhalte authentifiziert Inhalte
und erzeugt Schutzdomänen;
es enthält
(a) einen Inhalts-Interpreter, (b) eine Richtliniendatenbank, (c)
einen Sicherheitsvollstrecker und (d) eine Zugriffsrechtetabelle.
Auftraggeber verwenden einen Schlüsselverteildienst, damit sie
einen öffentlichen
Schlüssel
eines anderen Auftraggebers sicher erhalten können. Als verschlüsselt gekennzeichnete
Inhalte, die von einem herunterladenden Auftraggeber empfangen werden,
werden durch das System zur Nutzung gekennzeichneter Inhalte authentifiziert:
Das System zur Nutzung gekennzeichneter Inhalte entschlüsselt dann
die verschlüsselten
In halte mit dem privaten Schlüssel
des herunterladenden Auftraggebers.
-
Das
beschriebene System ist ein modifizierter Applet-Viewer für entweder
gekennzeichnete oder nicht gekennzeichnete Applets. Gemäß der Java-Applet-Richtlinie
haben nicht gekennzeichnete Applets keinen Zugriff auf Dateien auf
dem Gerät
eines Anwenders, und TCP-Verbindungen
sind zu keinerlei Geräten
zugelassen, mit Ausnahme eines Hosts, der das Applet bereitstellte.
Einem gekennzeichneten Applet wird eine Schutzdomäne zugewiesen.
-
Es
wurden universellere Sandkästen
aufgebaut oder vorgeschlagen, jedoch werden sie nicht allgemein
verwendet: Beispiele umfassen Forschungssoftware von der Universität Kalifornien
in Berkeley, die Janus genannt wird und in einer Abhandlung mit dem
Titel "Janus: An
Approach for Confinement of Untrusted Applications", David A. Wagner,
UC Berkeley Computer Science Division, Report CSD-99-1056, August
1999, beschrieben ist. Diese verwenden Sicherheitsmerkmale innerhalb
eines Betriebssystems, um Software, die innerhalb des Sandkastens
läuft,
von anderer Software zu separieren, die auf einem Computersystem
in Form einer Haupt-Bildschirmarbeitsfläche eines Arbeitsplatzrechners
läuft.
-
Jedoch
löst die
Verwendung der Sandkasten-Methode das Problem eigentlich nicht.
Das liegt daran, dass sich Viren innerhalb der vom Sandkasten bereitgestellten
beschränkten
Umgebung noch frei ausbreiten können
und Anwender zwangsläufig
Daten über
die Sandkastenbegrenzung hinweg verschieben müssen, was die beruflichen Erfordernisse widerspiegelt,
Daten auszutauschen.
-
Es
ist eine Aufgabe der Erfindung, eine alternative Form des Computersystemschutzes
zu schaffen.
-
Die
vorliegende Erfindung schafft eine Form des Computersystemschutzes,
wie sie in den beigefügten
Ansprüchen
offenbart ist.
-
Damit
die Erfindung vollständiger
verstanden werden kann, werden nun, lediglich beispielhaft, Ausführungsformen
mit Bezug auf die beigefügte
Zeichnung beschrieben, in der:
-
1 und 2 schematische
Darstellungen von Computersystemen nach dem Stand der Technik sind;
-
3 eine
schematische Darstellung des Computerschutzes der Erfindung ist;
-
4 und 5 die
Verwendung von Firewalls für
den Computerschutz veranschaulichen;
-
6 ein
Ablaufplan eines Computerschutzverfahrens gemäß der Erfindung ist; und
-
7 die
Verwendung von Haupt- und Sandkasten-Bildschirmarbeitsflächen auf
einem Arbeitsplatzrechner gemäß der Erfindung
veranschaulicht.
-
In 1 ist
ein Computersystemschutz 10 nach dem Stand der Technik
veranschaulicht, der dem derzeitigen optimalen Verfahren der Industrie entspricht:
Ein externes Computernetz 12 liefert ankommende Daten 14 an
eine automatische Untersuchungssoftware 16 (Soft wareprüfeinrichtung),
während
die Daten in ein (nicht gezeigtes) Computersystem hineingelangen.
Die Softwareprüfeinrichtung 16 lenkt
jegliche verdächtigen
Daten 18 zu einem Quarantänespeicher 20, der
als Teil einer Dateispeicherung eines Server-Computers ausgeführt ist,
der durch die Zugriffssteuerungen des Betriebssystems geschützt wird;
sie überträgt unschädliche Daten 22 an
ein internes Empfangsnetz 24. Der Quarantänebereich
befindet sich in einem zentralen Netzbetriebszentrum und ist nur
dem Personal 26 für
die Expertenuntersuchung zugänglich,
das für
die manuelle Untersuchung verdächtiger
Daten verantwortlich ist. Diese Experten überprüfen die Quarantänespeicherung 20 auf
unschädliche
Daten, und wenn sie gefunden werden, werden sie als saubere Daten 28 an
das Empfangsnetz 24 übertragen.
Die Softwareprüfeinrichtung 16 behandelt
zum Einen einen Anteil der Daten als verdächtig, der in Wahrheit unschädlich ist, und
versagt zum Anderen dabei, neue Angriffsarten zu identifizieren.
Das Personal 26 für
die Expertenuntersuchung ist kostspielig, führt zu Verzögerungen und ist nicht unfehlbar.
-
In 2 ist
das als Sandkasten-Methode bezeichnete Verfahren nach dem Stand
der Technik veranschaulicht. Ein externes Computernetz 42 liefert
ankommende Daten 44 an einen Anwendercomputer 46,
der Teil eines internen Computernetzes 48 ist. Die Daten 44 sind
Softwareanwendungen der Haupt-Bildschirmarbeitsfläche (z.
B. einer Textverarbeitung) nicht zugänglich, die auf dem Computer 46 laufen
und durch Kreise wie 50 angedeutet sind: Stattdessen werden
die Daten 44 zu einem Sandkasten 52 geschickt,
der eine beschränkte
Umgebung bereitstellt, sodass die Daten keine Softwareanwendungen
außerhalb
von ihr, d. h. jenseits der Sandkastenbegrenzung, zerstören können. Der
Sandkasten kann durch Interpretieren der in ihm laufenden Anwendungssoftware
ausgeführt
werden, wie es bei JAVA der Fall ist, und durch Sicherstellen, dass
kein Befehl existiert, der Zugriff auf Daten jenseits der Sandkastenbegrenzung
gewährt.
Alternativ kann die Anwendungssoftware direkt ausgeführt werden,
jedoch werden auf sämtliche
Ressourcen jenseits der Sandkastenbegrenzung Betriebssystem-Zugriffssteuerungen
angewendet, um die im Sandkasten eingeschlossene Software am Zugriff
auf sie zu hindern. Ein Computersystemschutz gemäß der Erfindung ist in 3 veranschaulicht.
Ein externes Computernetz 60 (z. B. das Internet) liefert
ankommende Daten 62 an eine Prüfeinrichtungssoftware 64,
während
die Daten in ein (nicht gezeigtes) Computersystem hineingelangen.
Die Softwareprüfeinrichtung 64 schickt
jegliche Daten 65 weiter, die sie als unschädlich ansieht;
sie lenkt jegliche verdächtigen
Daten 66 zu einer Verschlüsselungseinrichtung 68,
die sie verschlüsselt,
um sie unbrauchbar und damit unschädlich zu machen. Es ist jeglicher
symmetrische Verschlüsselungsalgorithmus
geeignet, der Daten unbrauchbar macht, wie etwa der gewöhnliche
Datenverschlüsselungsstandard
(DES), der in der US Federal Information Processing Standards Publication 46-2
beschrieben ist.
-
Unschädliche Daten 65 und
verschlüsselte verdächtige Daten 70 werden
zu einem Anwendercomputer 72 geschickt, der Teil eines
internen Computernetzes 74 ist. Im Computer 72 befindet
sich ein Bildschirmarbeitsflächen-Quarantänegebiet
bzw. ein Sandkasten 76 für verdächtige Daten, und dies gilt für jeden
Computer 72, der in das Netz 74 verbunden ist.
Der Computer 72 betreibt Haupt-Bildschirmarbeitsflächen-Anwendungen
wie etwa 78, die die verschlüsselten Daten 70 empfangen
und sie speichern sowie herumschicken können; jedoch können diese Anwendungen 78 sie
nicht auf irgendeine sinnvolle Weise nutzen, da sie verschlüsselt sind.
Gleichermaßen
gut können
die Anwendungen 78 durch die verschlüsselten Daten nicht gestört werden,
da die Verschlüsselung
es unmöglich
macht, die Daten auszuführen
oder zu interpretieren.
-
Beim
Eintritt in den Sandkasten 76 werden die verschlüsselten
Daten durch eine Sandkastenimport-Funktion 80 zu einer
nutzbaren Form entschlüsselt:
Hierauf werden sie durch Softwareanwendungen oder Werkzeuge 82 nutzbar,
die im Sandkasten 76 laufen. Im Sandkasten 76 ist
eine Freigabeprüfsoftware 84 enthalten,
die prüft,
ob ein Extrakt aus entschlüsselten
Daten unschädlich
ist oder nicht. Daten, die die Freigabeprüfung 84 nicht passieren, da
sie verdächtig
sind, können
wichtig genug sein, um eine manuelle Untersuchung durch Experten
zu erfordern. In derartigen Fällen
gibt ein Anwender, eventuell per E-Mail oder über eine Netzschnittstelle, in
eine Anforderungswarteschlange 88 eine Anforderung 86 ein,
die verdächtigen
Daten zu untersuchen. Experten 90 nehmen Anforderungen
aus der Warteschlange 88 an und reagieren, indem sie die
verdächtigen
Daten entschlüsseln
und sie manuell überprüfen.
-
Der
Vorteil dieses Ansatzes liegt darin, dass ein Anwender die verdächtigen
Daten untersuchen kann und sie, wenn notwendig, sogar ausführen kann,
während
sie durch den Sandkasten beschränkt sind,
wobei es dem Anwender möglich
ist, die Wichtigkeit verdächtiger
Daten festzustellen, die durch Verschlüsselung unter Quarantäne gestellt
sind. Wenn der Anwender feststellt, dass die verdächtigen Daten,
beispielsweise unerbetene Werbematerialien, für die geschäftlichen Belange des Anwenders
unerheblich sind, kann der Anwender sie verwerfen, wobei unnötige Bemühungen seitens
eines Teams für die
manuelle Untersuchung eingespart werden. Umgekehrt wird, wenn die
verdächtigen
Daten Teil einer wichtigen, für
die Arbeit des Anwenders relevanten Nachricht sind, die gesamte
Nachricht nicht durch Warten auf eine Untersuchung durch ein Team
für die manuelle
Untersuchung aufgehalten, sondern sie wird stattdessen dem Anwender
in der beschränkten Umgebung
seines Bildschirmarbeitsflächen-Sandkastens
verfügbar
gemacht.
-
Das
Bildschirmarbeitsflächen-Quarantänegebiet 76,
das durch die Erfindung ausgeführt
wird, ist vom Sandkastentyp, da ein Anwender in ihm mit verdächtigen
Daten in entschlüsselter
Form arbeiten kann, wobei er beschränkte Sandkastenanwendungen 82 verwendet.
Der Sandkasten kann unter Verwendung geeigneter Werkzeuge aufgebaut
sein, die nach dem Stand der Technik allgemein bekannt sind, beispielsweise
JAVA oder Betriebssystemsteuerungen. Der kryptographische Mechanismus
stellt sicher, dass auf verdächtige
Daten in nicht verschlüsselter
Form nicht durch Haupt-Bildschirmarbeitsflächen-Anwendungen eines Anwenders
außerhalb
des Sandkastens 76 zugegriffen werden kann. Der Versuch
verdächtiger
Daten, einen Schaden zu verursachen, wird durch den Sandkasten 76 verhindert.
-
Um
eine geschäftliche
Tätigkeit
auszuführen,
muss ein Computeranwender ggf. durchaus Extrakte aus verdächtigen
Daten erstellen, beispielsweise unter Verwendung der von den Anwendungen bereitgestellten
Zwischenspeicherungseinrichtungen, und sie aus dem Sandkasten 76 verschieben, um
sie Haupt-Bildschirmarbeitsflächen-Anwendungen 78 zugänglich zu
machen: Dann muss geprüft werden,
dass jeder Extrakt unschädlich
ist. In vielen Fällen
ist es einer automatischen Freigabeprüfsoftware wie 84 möglich, sicher
zu bestätigen,
dass ein Extrakt unschädlich
ist, auch wenn das für
die verdächtigen
Daten insgesamt nicht möglich
ist. Beispielsweise können
Daten in Form eines Makros enthaltenden Dokuments als verdächtig angese hen werden,
während
das Dokument Extrakte wie etwa Textabsätze enthalten kann, die von
einer Prüfeinrichtungssoftware
als unschädlich
beurteilt werden können.
-
In
vielen Fällen
vermeidet der Sandkasten 76 die Notwendigkeit einer manuellen
Untersuchung: Jedoch müssen
verdächtige
Daten zuweilen aus dem Sandkasten 76 entnommen und einer Haupt-Bildschirmarbeitsflächen-Umgebung
eines Anwenders für
den Zugriff durch Anwendungen 78 übergeben werden. Dies wird,
da sie verdächtig
sind, durch die Freigabeprüfung 84 zurückgewiesen,
sodass noch eine manuelle Untersuchung durch Experten 90 erforderlich
ist, an die Anforderungen 86 für eine manuelle Untersuchung
eingereicht werden.
-
Da
ein Anwender nun die manuelle Untersuchung anfordert, ist es möglich, Prioritäten und
Kosten entsprechend den geschäftlichen
Erfordernissen zuzuweisen. Außerdem
sind Untersuchungen weitaus weniger häufig und werden nur dann durchgeführt, wenn
sie unabweisbar notwendig sind, da die Erfindung eine unnötige Prüfung von
Material vermeidet, das beispielsweise unwichtig ist oder von dem
auf Anforderung des Anwenders eine "saubere" oder bearbeitete Version vom Absender
zu erhalten ist.
-
Die
Erfindung nutzt übliche
Verfahren zum Ermitteln von Trojaner- und Virussoftware, um ankommende Daten
auf verdächtige
Inhalte zu untersuchen. Wird irgendein Teil der ankommenden Daten, beispielsweise
ein Anhang einer E-Mail-Nachricht, als ein möglicher Angriff angesehen,
wird er verschlüsselt.
Die ursprünglichen
Daten werden modifiziert, indem verdächtige Teile von ihnen durch
ein verschlüsseltes Äquivalent
ersetzt werden, sodass die modifizierten Da ten wie gewöhnlich weiterbehandelt
werden können.
Dadurch kann eine E-Mail-Nachricht mit einem verdächtigen
Anhang weiterbehandelt werden, wobei dieser Anhang durch eine verschlüsselte Version
ersetzt ist, jedoch der Mitteilungsteil der Nachricht und jegliche
anderen Anhänge
lesbar bleiben.
-
Eine
Verschlüsselung
macht Daten unbrauchbar, sodass verschlüsselte verdächtige Daten sicher zu einem
Anwendercomputer 72 geschickt werden können: Sie bleiben unbrauchbar,
bis sie mittels eines geeigneten Entschlüsselungs-Schlüssels entschlüsselt werden,
der Anwendern oder deren Haupt-Bildschirmarbeitsflächen-Anwendungen
nicht zugänglich
ist, sondern, wie erwähnt
wurde, der Sandkastenimport-Funktion 80 zugänglich ist.
-
Wenn
ein Anwender eine verschlüsselte Form
irgendwelcher verdächtiger
Daten empfangen hat, betrachtet oder behandelt er sie, indem er
sie zum Sandkasten 76 schickt, woraufhin sie zu einer verwendbaren
Form entschlüsselt
werden, wie es bei 80 gezeigt ist. Wenn sie entschlüsselt sind,
kann auf die verdächtigen
Daten durch Softwareanwendungen 82 zugegriffen werden,
die im Sandkasten 76 laufen. Die Haupt-Bildschirmarbeitsfläche und
der Sandkasten können
die gleichen Anwendungen betreiben, erzeugen jedoch separate Instanzen
dieser Anwendungen, die nicht miteinander kommunizieren können. Beispielsweise
kann Microsoft® Word
sowohl auf der Haupt-Bildschirmarbeitsfläche als auch im Sandkasten
zum Bearbeiten von Dokumenten dienen: Wenn dem so ist, läuft Word
in zwei separaten Instanzen, und zwar in der einen für die Haupt-Bildschirmarbeitsfläche und
in der anderen für den
Sandkasten, wobei die zwei Instanzen nicht unmittelbar miteinander
kommunizieren können.
-
4 (in
der Teile, die den früher
besprochenen entsprechen, ebenso bezeichnet sind) zeigt das interne
oder gemeinsame Netz 74, das einen Mail-Server 102 und
eine Anzahl von Anwendercomputern (Arbeitsplatzrechnern) wie 72 beherbergt.
Das Netz 74 wird gegen feindliche Daten im Internet 60 durch
einen Computer 108 verteidigt, der als eine Firewall bezeichnet
wird, die die Kommunikation zwischen Anwendungen steuert, die auf
Computern in verschiedenen Netzen laufen. Das Lehrbuch "Building Internet
Firewalls" von D.
B. Chapman und E. D. Zwicky offenbart das Einflechten eines Softwareanwendungs-Proxys
in einen Computer wie 108 zwischen Netzen. Der Computer 108 wird
als eine Proxy-Firewall oder eine Bastions-Host-Firewall bezeichnet. Softwareanwendungen
in den verbundenen Netzen 60 und 74 kommunizieren über ein
Anwendungs-Proxy auf dem Computer 108.
-
Die
Computer-Firewall 108 ist in 5 genauer
gezeigt: Sie umfasst einen Bastions-Host 110, der Netzzugriffe
zwischen dem Internet 60 und dem gemeinsamen Netz 74 vermittelt,
zusammen mit einer Prüfeinrichtung 116,
die mit dem Bastions-Host 110 über ein sekundäres Netz 114 verbunden
ist, das ausschließlich
für diesen
Zweck reserviert ist und gewöhnlich
als entmilitarisierte Zone bezeichnet wird.
-
Der
Bastions-Host 110 ist eine handelsübliche Firewall-Software wie
etwa Gauntlet von Network Associates. Die Prüfeinrichtung 116 ist
ein Computer, der einen E-Mail-Proxy beherbergt, der server-seitige
Komponenten einer Bildschirmarbeitsflächen-Quarantäne integriert,
d. h. die Prüfeinrichtung 64 und
die Verschlüsselungseinrichtung 68.
-
Der
in 6 veranschaulichte Ablaufplan zeigt die Tätigkeit
der Prüfeinrichtung 116 in
der vorliegenden Ausführungsform
der Erfindung, obwohl Prüfungen
an einer E-Mail unter Verwendung normaler, handelsüblicher
Virenprüfsoftware
wie etwa Sophos Sweep vorgenommen werden können. Bei 140 wird über den
(nicht gezeigten) Bastions-Host 110 eine
E-Mail-Nachricht von einem externen Absender empfangen. Die Nachricht
wird bei 142 in einzelne Teile (Nachrichtentextkörper und
Anhänge)
aufgetrennt, und ein erster derartiger Teil wird bei 144 für die Prüfung bei 146 durch
die Virenprüfeinrichtung 116 ausgewählt. Wenn
sich der Teil bei 148 als gefährlichen Code enthaltend erweist,
wird die gesamte Nachricht bei 150 unter Server-Quarantäne gestellt, und
die Verarbeitung der Nachricht wird bei 152 abgebrochen.
Wenn andernfalls der Teil bei 148 als keinen gefährlichen
Code enthaltend identifiziert wird, und ebenso wenn er bei 154 als
sicher verifiziert wird, wird er zur nächsten Stufe 156 geschickt,
wo er vorübergehend
gespeichert wird.
-
Kann
der Nachrichtenteil bei 154 nicht als sicher (unschädlich) verifiziert
werden, dann wird er bei 158 verschlüsselt: Die resultierende verschlüsselte Version
ersetzt den nicht verifizierten Nachrichtenteil und gelangt zur
vorübergehenden
Speicherung zur nächsten
Stufe 156. Wenn in der Nachricht ein Teil oder mehrere
Teile verbleiben, wird bei 160 der nächste Teil ausgewählt, und
die mit Schritt 146 beginnende Prozedur wird für diesen
Teil wiederholt. Dies setzt sich für aufeinanderfolgende Nachrichtenteile
fort, bis keine Teile mehr verbleiben oder bis bei 152 das
Abbrechen der Nachrichtenverarbeitung stattfindet, je nachdem, was
zuerst erfolgt. Wenn zu dem Zeitpunkt, da der letzte Nachrichtenteil
verarbeitet wird, kein derartiger Abbruch erfolgte, hat sich eine
teilweise verschlüsselte
und teilweise nicht verschlüsselte
E-Mail-Nachricht bei 156 im Speicher angesammelt. Diese
gespeicherte Nachricht wird bei 162 über den Bastions-Host-Firewall 110 zum
gemeinsamen Mail-Server 102 beför dert.
-
Die
Arbeitsplatzrechner 72 sind organisiert, wie in 7 gezeigt,
in der Teile, die den früher
besprochenen entsprechen, ebenso bezeichnet sind. Jeder Arbeitsplatzrechner 72 zeichnet
sich dadurch aus, dass Verarbeitung und Speicherung aufgeteilt und
entsprechenden Anwender-Bildschirmarbeitsflächen zugeordnet sind – einer
Haupt-Bildschirmarbeitsfläche 200,
in der ein Anwender mit Anwendungen 78 an vertrauenswürdigen Daten
arbeitet, und einer Sandkasten-Bildschirmarbeitsfläche 76 mit
Softwareanwendungen wie 82 zum Arbeiten mit Daten in Bildschirmarbeitsflächen-Quarantäne. Die
Haupt- und die Sandkasten-Bildschirmarbeitsflächen-Anwendungen 78 und 82 sind
voneinander isoliert: Das bedeutet, dass Haupt-Bildschirmarbeitsflächen-Anwendungen 78 keinen
Zugriff auf Daten haben, die von Sandkasten-Bildschirmarbeitsflächen-Anwendungen 82 verarbeitet
werden, und daher durch derartige Daten nicht beschädigt werden
können.
-
Auf
dem Arbeitsplatzrechner 72 läuft Software für drei spezielle
Systemprozesse, und zwar einen Entschlüsselungsprozess 80,
einen Verschlüsselungsprozess 208 und
einen Prüfprozess 210:
Diese verschaffen einem Anwender die Möglichkeit, Daten zwischen den
beiden Bildschirmarbeitsflächen 76 und 200 zu
verschieben. Der Entschlüsselungsprozess 80 nimmt
von der Haupt-Bildschirmarbeitsfläche 200 verschlüsselte Daten
auf, entschlüsselt
sie und verschiebt sie zur Sandkasten-Bildschirmarbeitsfläche 76.
Der Verschlüsselungsprozess 208 führt eine
umgekehrte Aktion aus, bei der er vom Sandkasten 76 entschlüsselte Daten
aufnimmt, sie verschlüsselt
und sie zur Haupt-Bildschirmarbeitsfläche 200 verschiebt.
Der Prüfprozess 210 verschiebt Daten
vom Sandkasten 76 zur Haupt-Bild schirmarbeitsfläche 200,
ohne sie zu verschlüsseln,
wobei er dem Kriterium unterworfen ist, dass derart verschobene
Daten Inhaltsprüfungen
passiert haben, wodurch nachgewiesen wurde, dass sie keinen möglicherweise
schädlichen
Code enthalten.
-
Wie
wiederum in 4 und 5 gezeigt ist,
kann die Firewall 108 eine Nachricht mit einem Anhang empfangen,
der ein ausführbarer
zu sein scheint, jedoch nicht eindeutig ein Angriff ist: Der Bastions-Host 110 schickt
die Nachricht dann zur Prüfeinrichtung 116.
Stellt die Prüfeinrichtung 116 fest,
dass der Anhang verdächtig
ist, verschlüsselt ihn
die Prüfeinrichtung 116 mittels
eines Verschlüsselungs-Schlüssels. Die
resultierende Nachricht mit verschlüsseltem Anhang wird über den
Bastions-Host 110 und zum gemeinsamen Mail-Server 102 zurück geschickt.
-
Der
eine Nachricht empfangende Arbeitsplatzrechner 72 betreibt
auf der Haupt-Bildschirmarbeitsfläche 200 eine Mail-Client-Softwareanwendung 212 und
gewinnt die Nachricht aus dem Mail-Server 102 wieder. Der
Mail-Client 212 oder irgendeine andere Software 78,
die auf der Haupt-Bildschirmarbeitsfläche 200 läuft, kann
auf den verschlüsselten Anhang
zugreifen: Diese Software kann den verschlüsselten Anhang jedoch nicht
entschlüsseln,
da sie keinen Zugriff auf den relevanten Verschlüsselungs-Schlüssel hat.
Dadurch können
im verschlüsselten
Anhang enthaltene verdächtige
Daten nicht genutzt oder ausgeführt
werden.
-
Wenn
ein Anwender feststellt, dass der verschlüsselte Anhang uninteressant
ist, eventuell durch Lesen der Nachricht, an der er angefügt ist,
kann der Anhang gelöscht
werden. Jedoch muss ein Anwender, der auf Daten im verschlüsselten
Anhang zugreifen möchte,
zunächst den
Entschlüsselungsprozess 80 verwenden,
um den Anhang zu entschlüsseln, und
dessen Daten zur Sandkasten-Bildschirmarbeitsfläche 76 schicken. Einmal
in der Sandkasten-Bildschirmarbeitsfläche 76 vorhanden,
können die
Daten genutzt oder durch Softwareanwendungen 82 ausgeführt werden,
wobei aber die Sandkastenbeschränkungen
das Verhalten der Anwendungen beschränken, sodass, wenn sich die
Daten im Anhang als ein Angriff herausstellen, jeglicher Folgeschaden
im Sandkasten zurückgehalten
wird, wobei nur Anwendungen 82 und ihre Daten, nicht aber
Anwendungen 78 beeinflusst werden.
-
Muss
der Anwender die im Anhang enthaltenen Daten teilweise in die Haupt-Bildschirmarbeitsfläche 200 zurücknehmen,
werden diese durch den Prüfprozess 210 geführt. Dieser
wendet Inhaltsprüfeinrichtungen
auf die Daten an und lässt
sie nur dann durch, wenn sie als sicher bestimmt werden können. Daten,
die den Prüfprozess 210 nicht
bestehen, gehen nicht von der Sandkasten-Bildschirmarbeitsfläche 76 zur
Haupt-Bildschirmarbeitsfläche 200 über.
-
Wenn
die im Anhang enthaltenen Daten benötigt werden, aber den Prüfprozess 210 nicht
bestehen, kann der Anwender sie über
den Verschlüsselungsprozess 208 zur
Haupt-Bildschirmarbeitsfläche 200 zurück schicken:
Dieser verschlüsselt
die Daten, die unbrauchbar und damit sicher werden. Die verschlüsselten
Daten können
(z. B. per E-Mail) zur manuellen Überprüfung zu einem zentralen Team
von Sicherheitsexperten geschickt werden.
-
Im
oben erwähnten
Beispiel wird eine Nachricht oder ein Anhang unter Server-Quarantäne 150 gestellt,
wenn sich herausstellt, dass sie bzw. er gefährlichen Code enthält. Jedoch
sind auch alternative Strategien möglich: Beispielsweise kann
eine Nachricht auf ihren Weg geschickt werden, nachdem ein verdächtiger
Teil durch eine Benachrichtigung ersetzt wurde, dass der Teil entfernt
worden ist. Alternativ können
Teile, die als möglicherweise
gefährlich
ermittelt wurden, als solche markiert sowie verschlüsselt und
auf ihren Weg geschickt werden, wobei sie von verbleibenden unverschlüsselten
Teilen begleitet werden. Der Entschlüsselungsprozess 80 auf
einem Arbeitsplatzrechner 72 eines Anwenders entschlüsselt möglicherweise
gefährliche
Daten nicht; jedoch tut dies die Entsprechung auf der Bildschirmarbeitsfläche des
zentralen Teams von Sicherheitsexperten.
-
Die
Erfindung verbessert die Handhabung von Daten, die durch eine Prüfeinrichtungssoftware wie 116 als
verdächtig
ermittelt wurden. Dies verringert die für den manuellen Eingriff von
Experten erforderlichen Bemühungen,
verdächtige
Daten zu prüfen,
da in vielen Fällen
ein Anwender sämtliche
notwendigen Maßnahmen
ergreift, ohne Experten zu beteiligen; das bedeutet, ein Anwender
löscht
in manchen Fällen
unerwünschte
Daten und fordert in anderen Fällen
eine Wiederholung der Nachrichten durch den Absender an. Diese Aktion
des Anwenders vermeidet die Notwendigkeit der Expertenuntersuchung
und beseitigt damit Verzögerungen,
die dadurch eintreten würden.
-
Geeignete
Computersoftware oder Computerprogramme zum Ausführen der Erfindung sind entweder
handelsüblich
(z. B. Sandkasten, Firewall oder Prüfeinrichtungssoftware) oder
können
(z. B. wenn eine Ankopplung erforderlich ist) direkt durch einen
Durchschnittsprogrammierer ausgeführt werden, ohne dass eine
Erfindung erforderlich ist. Sie können ohne weiteres auf ein
Trägermedium
aufgezeichnet und auf einem Computersystem der oben beschriebenen
Art be trieben werden. Derartige Software und ein derartiges System
werden daher nicht weiter beschrieben.