-
GEBIET
-
Die vorliegende Anmeldung betrifft allgemein Computer und Computeranwendungen und insbesondere durch einen Computer ausgeführte Verfahren und Systeme in Zusammenhang mit Cybersicherheit und Computernetzwerken.
-
HINTERGRUND
-
Ein Netzwerk, wie beispielsweise eine Cloud-Computing-Plattform, kann einer Mehrzahl von Benutzern Produkte oder Dienste bereitstellen. In einigen Fällen beispielhafter Nutzung, wie etwa eines kostenlosen Testzeitraums oder bei Anwendungen, die von einem Freemium-Modell Gebrauch machen, kann das Netzwerk die Produkte oder Dienste bereitstellen, ohne dass die Benutzer spezifische Benutzerinformationen wie Zahlungsinformationen, Kreditinformationen oder andere benutzerspezifische Informationen bereitstellen müssen. Wenn während solcher Nutzungsfälle ein Angriff auf das Netzwerk stattfindet, kann es für ein Sicherheitssystem schwierig sein, den Angriff zu einem bestimmten Benutzer oder einer Quelle des Angriffs zurückzuverfolgen, da es möglicherweise nicht genügend benutzerspezifische Informationen in Verbindung mit Benutzern des Netzwerks gibt.
-
Die
US 2010/0130172 offenbart ein System und Verfahren zum Abwehren von missbräuchlichen Angriffen auf Computer, wobei eine Nutzeranfrage eines externen Nutzers abgelehnt oder akzeptiert werden kann, und zwar auf Grundlage einer Bewertung gemäß einem Bewertungsmaßstab.
-
Der Artikel von A. Velarde Ramirez et al.: „Network Anomaly Detection Utilizing Robust Principal Component Analysis“. Major Qualifying Project, Worcester Polytechnic Institute, vom 01. März 2018, erhältlich am 23. September 2021 unter https://digitas.wpi.edu/pdfviewer/9593tx04t, ist ebenfalls mit der Erfassung von Anomalien zum Zwecke einer Gewinnung von Cybersicherheit befasst.
-
Der frühere Artikel vom 18. Juli 2018 aus der englischsprachigen Internet-Enzyklopädie „Wikipedia“ zum Thema „MX record“, zu finden am 23.09.2021 unter: https://en.wikipedia.org/w/index.php?title=MX record&oldid=850906358, beschreibt, dass beim Versenden von E-Mails der Absender einen MX-Record des Domänennamens jedes Empfängers anfordern muss.
-
KURZDARSTELLUNG
-
In einigen Beispielen wird ein Verfahren zum Klassifizieren von verdächtigen Benutzern eines Netzwerks allgemein beschrieben. Das Verfahren umfasst in einem Aspekt das Empfangen, durch einen Prozessor, eines Benutzerprofils eines Benutzers, der Zugriff auf ein Netzwerk angefordert hat. Das Benutzerprofil weist mindestens eine E-Mail-Adresse auf, wobei die E-Mail-Adresse einen Domänennamen aufweist. Das Verfahren umfasst des Weiteren das Feststellen, durch den Prozessor, ob der Domänenname gültig ist. Das Verfahren umfasst des Weiteren als Reaktion auf das Feststellen, dass der Domänenname ungültig ist, das Klassifizieren, durch den Prozessor, des Benutzers als verdächtigen Benutzer. Das Verfahren umfasst des Weiteren als Reaktion auf das Feststellen, dass der Domänenname gültig ist, das Feststellen, durch den Prozessor, einer Wahrscheinlichkeit, dass die E-Mail-Adresse eine von einem Skript erzeugte E-Mail-Adresse ist. Die Feststellung der Wahrscheinlichkeit beruht auf einem Unterschied zwischen der E-Mail-Adresse und einer Mehrzahl von E-Mail-Adressen, wobei die Mehrzahl der E-Mail-Adressen den Domänennamen aufweist und die Mehrzahl der E-Mail-Adressen anderen Benutzern zugeordnet ist, die Zugriff auf das Netzwerk angefordert haben. Das Verfahren umfasst des Weiteren als Reaktion auf das Feststellen, das auf der Wahrscheinlichkeit beruht, dass die E-Mail-Adresse eine von einem Skript erzeugte E-Mail-Adresse ist, das Klassifizieren, durch den Prozessor, des Benutzers als verdächtigen Benutzer. Das Verfahren umfasst des Weiteren als Reaktion auf das Feststellen, das auf der Wahrscheinlichkeit beruht, dass die E-Mail-Adresse keine von einem Skript erzeugte E-Mail-Adresse ist, das Vergleichen, durch den Prozessor, eines Nutzungsverhaltens des Benutzers mit einem Referenzmodell, wobei das Nutzungsverhalten eine Langzeitnutzung des Netzwerks durch den Benutzer anzeigt. Das Verfahren umfasst des Weiteren das Feststellen, durch den Prozessor, ob auf der Grundlage des Vergleichs ein von dem Benutzer in dem Netzwerk an den Tag gelegtes abnormales Nutzungsverhalten vorhanden ist. Das Verfahren umfasst des Weiteren als Reaktion auf das Feststellen des Vorhandenseins eines von dem Benutzer in dem Netzwerk an den Tag gelegten abnormalen Nutzungsverhaltens das Klassifizieren, durch den Prozessor, des Benutzers als verdächtigen Benutzer. Das Verfahren umfasst des Weiteren das Zurückweisen, durch den Prozessor, einer nachfolgenden Anforderung von dem Benutzer für einen Zugriff auf das Netzwerk.
-
In einigen Beispielen wird ein System allgemein beschrieben, das eine Speichereinheit und einen Hardware-Prozessor enthält, um verdächtige Benutzer eines Netzwerks zu klassifizieren. Die Speichereinheit ist so konfiguriert, dass sie eine Benutzereinstellung eines Benutzers speichert, der Zugriff auf ein Netzwerk angefordert hat. Die Benutzereinstellung weist mindestens eine E-Mail-Adresse und ein Nutzungsverhalten des Benutzers auf, wobei die E-Mail-Adresse einen Domänennamen aufweist und das Nutzungsverhalten eine Langzeitnutzung des Netzwerks durch den Benutzer anzeigt. Der Hardware-Prozessor ist so konfiguriert, dass er mit der Speichereinheit in Verbindung steht. Der Hardware-Prozessor ist so konfiguriert, dass er feststellt, ob der Domänenname gültig ist. Der Hardware-Prozessor ist des Weiteren so konfiguriert, dass er als Reaktion auf eine Feststellung, dass der Domänenname ungültig ist, den Benutzer als verdächtigen Benutzer klassifiziert. Der Hardware-Prozessor ist des Weiteren so konfiguriert, dass er als Reaktion auf eine Feststellung, dass der Domänenname gültig ist, eine Wahrscheinlichkeit feststellt, dass die E-Mail-Adresse eine von einem Skript erzeugte E-Mail-Adresse ist. Die Feststellung der Wahrscheinlichkeit beruht auf einem Unterschied zwischen der E-Mail-Adresse und einer Mehrzahl von E-Mail-Adressen, wobei die Mehrzahl der E-Mail-Adressen den Domänennamen aufweist und die Mehrzahl der E-Mail-Adressen anderen Benutzern zugeordnet ist, die Zugriff auf das Netzwerk angefordert haben. Der Hardware-Prozessor ist des Weiteren so konfiguriert, dass er als Reaktion auf eine Feststellung, die auf der Wahrscheinlichkeit beruht, dass die E-Mail-Adresse eine von einem Skript erzeugte E-Mail-Adresse ist, den Benutzer als verdächtigen Benutzer klassifiziert. Der Hardware-Prozessor ist des Weiteren so konfiguriert, dass er als Reaktion auf eine Feststellung, die auf der Wahrscheinlichkeit beruht, dass die E-Mail-Adresse keine von einem Skript erzeugte E-Mail-Adresse ist, das Nutzungsverhalten mit einem Referenzmodell vergleicht. Der Hardware-Prozessor ist des Weiteren so konfiguriert, dass er feststellt, ob auf der Grundlage des Vergleichs ein von dem Benutzer in dem Netzwerk an den Tag gelegtes abnormales Nutzungsverhalten vorhanden ist. Der Hardware-Prozessor ist des Weiteren so konfiguriert, dass er als Reaktion auf die Feststellung des Vorhandenseins eines von dem Benutzer in dem Netzwerk an den Tag gelegten abnormalen Nutzungsverhaltens den Benutzer als verdächtigen Benutzer klassifiziert. Der Hardware-Prozessor ist des Weiteren so konfiguriert, dass er eine nachfolgende Anforderung von dem Benutzer für einen Zugriff auf das Netzwerk zurückweist.
-
In einigen Beispielen wird ein Computerprogrammprodukt zum Klassifizieren von verdächtigen Benutzern eines Netzwerks allgemein beschrieben. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium enthalten, das über damit realisierte Programmanweisungen verfügt. Die Programmanweisungen können durch ein Verarbeitungselement einer Einheit ausführbar sein, um die Einheit zu veranlassen, ein oder mehrere hierin beschriebene Verfahren durchzuführen.
-
Weitere Merkmale sowie die Struktur und der Betrieb von verschiedenen Ausführungsformen sind nachstehend unter Bezugnahme auf die beiliegenden Zeichnungen ausführlich beschrieben. In den Zeichnungen geben gleiche Bezugszahlen identische oder funktional ähnliche Elemente an.
-
Figurenliste
-
- 1 veranschaulicht ein beispielhaftes Computersystem in einer einzelnen Ausführungsform, das verwendet werden kann, um in einer einzelnen Ausführungsform die Erkennung von verdächtigen Aktivitäten in Computernetzwerken auszuführen.
- 2 veranschaulicht einen Ablaufplan in Zusammenhang mit der Erkennung von verdächtigen Aktivitäten in Computernetzwerken in einer einzelnen Ausführungsform.
- 3 veranschaulicht einen Ablaufplan in Zusammenhang mit der Erkennung von verdächtigen Aktivitäten in Computernetzwerken in einer einzelnen Ausführungsform.
- 4 veranschaulicht ein Schaubild eines beispielhaften Computer- oder Verarbeitungssystems, das in einer einzelnen Ausführungsform die Erkennung von verdächtigen Aktivitäten in Computernetzwerken ausführen kann.
- 5 stellt eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung dar.
- 6 stellt Ebenen eines Abstraktionsmodells gemäß einer Ausführungsform der vorliegenden Erfindung dar.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Ein System gemäß der vorliegenden Offenbarung (z.B. ein in 1 gezeigtes System 100) stellt in einigen Ausführungsformen eine Anwendung bereit, um Herausforderungen bei der Sicherstellung von Informationen und Ressourcen aus einem Netzwerk anzugehen. Das System 100 wird ausgeführt, um eine Quelle von verdächtigen Aktivitäten, wie beispielsweise einen Benutzer des Netzwerks, bestimmte Computerprozesse, Threads, Einheiten, auf der Grundlage von Benutzerprofilen der Benutzer des Netzwerks zu erkennen, wobei die Benutzerprofile mindestens eine Kennung, wie beispielsweise eine E-Mail-Adresse, enthalten können. Das System 100 analysiert die Kennungen und/oder E-Mail-Adressen der Benutzer, um jedwede verdächtige Aktivitäten, die in dem Netzwerk durchgeführt werden, zu ermitteln. In einer beispielhaften Ausführungsform analysiert das System 100 die E-Mail-Adressen von Benutzern, um E-Mail-Adressen zu ermitteln, bei denen es sich um von einem Skript erzeugte E-Mail-Adressen handeln kann, wie beispielsweise E-Mail-Konten, die von einem Computerprogramm automatisch erzeugt worden sind. Des Weiteren klassifiziert das System 100 auf der Grundlage der an den E-Mail-Adressen durchgeführten Analyse Benutzer als verdächtige Benutzer, so dass ein Administrator des Netzwerks Benutzerkonten der klassifizierten verdächtigen Benutzer überprüfen kann.
-
Das System 100 kann ein System verbessern, das Binärerkennung durchführt, wie beispielsweise das Feststellen, ob einem Benutzer vertraut oder nicht vertraut werden kann, indem es verdächtige Benutzer und Aktivitäten klassifiziert, bevor es bestätigt, ob einem Benutzer vertraut werden kann. Des Weiteren kann in einigen Beispielen das Verwenden von benutzerspezifischen Informationen wie beispielsweise Kreditkartennummern, Telefonnummern oder von sonstigen externen Überprüfungen, um verdächtige Aktivitäten in dem Netzwerk zu erkennen, nicht ausreichend sein und es kann aufgrund der mehreren Instanzen, die gegebenenfalls beteiligt sind, wie beispielsweise Telefonanbieter, Kreditkartengesellschaften, Wirtschaftsauskunfteien, Banken, den Benutzern selbst und/oder anderen Stellen, mühsam sein. Zum Beispiel kann es schwierig sein, eine Telefonnummer zu überprüfen, da die Prozeduren zum Erhalt von Telefondatensätzen und Identitäten der Besitzer von Telefonnummern Genehmigungen von mehreren Stellen erfordern und ehrliche Informationen der Besitzer dabei eine Rolle spielen können.
-
1 veranschaulicht ein beispielhaftes Computersystem 100, das verwendet werden kann, um die Erkennung von verdächtigen Aktivitäten in Computernetzwerken auszuführen, die gemäß mindestens einigen hierin beschriebenen Ausführungsformen angeordnet sind. In einigen Beispielen ist das System 100 ein auf einer Computereinheit ausgeführtes System. In einigen Beispielen kann es sich bei dem System 100 um ein Sicherheitssystem handeln, das Teil eines Netzwerks ist. Das System 100 kann einen Prozessor 120 und einen Speicher 122 enthalten, die so konfiguriert sind, dass sie miteinander in Verbindung stehen. In einigen Beispielen kann der Prozessor 120 eine zentrale Verarbeitungseinheit einer Computereinheit und so konfiguriert sein, dass er Operationen des Speichers 122 und/oder anderer Komponenten des Systems 100 steuert. In einigen Beispielen kann das System 100 zusätzliche Hardware-Komponenten wie beispielsweise programmierbare logische Schaltungen, Mikrocontroller, Speichereinheiten und/oder andere Hardware-Komponenten enthalten, die so konfiguriert sein können, dass sie jeweilige Aufgaben der in der vorliegenden Offenbarung beschriebenen Verfahren durchführen. In einigen Beispielen kann der Prozessor 120 so konfiguriert sein, dass er Software-Module ausführt, die Anweisungen zur Durchführung einer jeden jeweiligen Aufgabe der in der vorliegenden Offenbarung beschriebenen Verfahren enthalten.
-
Der Speicher 122 ist so konfiguriert, dass er durch den Prozessor 120 ausführbare Anweisungen selektiv speichert. Zum Beispiel kann der Speicher 122 in einer einzelnen Ausführungsform einen Satz von Erkennungsanweisungen 124 („Anweisungen 124“) speichern, wobei zu den Anweisungen 124 Anweisungen wie beispielsweise ausführbarer Code gehören, die in Verbindung mit Zeichenfolgeoperationen und Machine-Learning-Algorithmen und/oder anderen Algorithmen oder Techniken stehen, welche das System 100 ausführen können. Der Prozessor 120 ist so konfiguriert, dass er einen oder mehrere Teile der Anweisungen 124 ausführt, um die Ausführung des Systems 100 zu vereinfachen. In einigen Beispielen können die Anweisungen 124 als eine eigenständige Anwendung gepackt sein, die auf der Computereinheit installiert werden kann, welche das System 100 ausführt, so dass die Anweisungen 124 durch den Prozessor 120 ausgeführt werden können, um das System 100 auszuführen. In einigen Beispielen können die Anweisungen 124 in einer programmierbaren Hardwarekomponente gespeichert sein, die als Teil des Prozessors 120 eingebettet sein kann.
-
In einigen Beispielen können der Prozessor 120 und/oder der Speicher 122 so konfiguriert sein, dass sie mit einem Pool 110 in Verbindung stehen, wobei es sich bei dem Pool 110 um ein Netzwerk aus Ressourcen 112 handelt. Zu den Ressourcen 112 können Hardware- und Softwarekomponenten wie beispielsweise Prozessoren, Speicher, Router, Vermittlungseinheiten, Netzwerke, Rechenzentren, Softwareprogramme und/oder andere Ressourcen gehören. In einigen Beispielen kann der Pool 110 eine Cloud-Computing-Umgebung wie beispielsweise eine private Cloud, eine Benutzergemeinschafts-Cloud, eine öffentliche Cloud oder eine hybride Cloud sein. In einigen Beispielen kann das System 100 ein System sein, das so konfiguriert ist, dass es Service-Anforderungen für die Nutzung von Ressourcen 112 aus dem Pool 110 verarbeitet, wie beispielsweise Service-Aufträge von Ressourcen 112 aus dem Pool 110, wobei die georderten Ressourcen von einem Benutzer zur Durchführung einer Datenverarbeitungsaufgabe genutzt werden können. Zum Beispiel kann ein Benutzer 101 eine Benutzereinheit 102 verwenden, um eine Anforderung 106 an das System 100 zu senden, wobei es sich bei der Anforderung 106 um eine Anforderung für die Nutzung von einer oder mehreren Ressourcen 112 aus dem Pool 110 zur Durchführung einer Aufgabe 105 handeln kann. Zu einigen Beispielen der Aufgabe 105 kann eine computerbezogene Aufgabe wie beispielsweise Datensatzverarbeitung, Datenspeicherung, Anwendungsbereitstellung, Content Hosting, Anwendungsausführung und/oder eine andere Datenverarbeitungsaufgabe gehören.
-
Der Speicher 122 kann des Weiteren so konfiguriert sein, dass er eine Benutzerdatenbank 128 speichert. Bei der Benutzerdatenbank 128 handelt es sich um eine Datenbank, die Benutzereinstellungen 129 einer Mehrzahl von Benutzern des Pools 110 speichert. Jede Benutzereinstellung 129 entspricht einem Benutzerprofil eines Benutzers und kann einen Vornamen, Nachnamen, Benutzernamen, ein Kennwort, eine Telefonnummer, eine Postanschrift, Daten über das Nutzungsverhalten (z.B. Uhrzeit, Häufigkeit und/oder Muster des entsprechenden Benutzers, der auf die Ressourcen 112 zugreift) und/oder andere zu dem Benutzer gehörende Informationen enthalten. Die Benutzereinstellungen 129 können von den Benutzern bereitgestellte Informationen enthalten und sie können auch von dem Prozessor 120 erzeugte Informationen enthalten. In einem in 1 gezeigten Beispiel kann der Prozessor 120 die Anforderung 106 empfangen und als Reaktion darauf die Benutzereinheit 102 um die Bereitstellung eines Benutzerprofils 108 ersuchen. Das Benutzerprofil 108 kann mindestens eine E-Mail-Adresse 109 des Benutzers 101 und/oder andere zu dem Benutzer 101 gehörende Informationen enthalten, wie beispielsweise einen Vornamen, Nachnamen, Benutzernamen, eine Telefonnummer, Postanschrift und/oder andere Informationen. In einigen Beispielen kann der Prozessor 120 feststellen, ob in dem Benutzerprofil 108 eine E-Mail-Adresse vorhanden ist. Als Reaktion auf ein Nichtvorhandensein einer E-Mail-Adresse in dem Benutzerprofil 108 kann der Prozessor 120 den Benutzer 101 um die Bereitstellung einer E-Mail-Adresse ersuchen. Als Reaktion auf ein Vorhandensein einer E-Mail-Adresse in dem Benutzerprofil 108 kann der Prozessor 102 das Benutzerprofil 108 als Teil der Benutzereinstellung 129 speichern, die dem Benutzer 101 entspricht. Der Prozessor 120 kann des Weiteren Daten über das Nutzungsverhalten erzeugen, beispielsweise, indem er das von dem Benutzer 101 an dem Pool 110 an den Tag gelegte Nutzungsverhalten verfolgt, und die erzeugten Daten über das Nutzungsverhalten zu der Benutzereinstellung 129 hinzufügen, die dem Benutzer 101 entspricht. Der Prozessor 120 kann die Benutzereinstellungen 129 auf der Grundlage einer laufenden Verfolgung des von den Benutzern des Pools 110 an den Tag gelegten Nutzungsverhaltens weiterhin aktualisieren.
-
Der Prozessor 120 kann einen Erkennungsprozess 150 ausführen, um eine oder mehrere Quellen von verdächtigen Aktivitäten zu erkennen. Zum Beispiel kann der Prozessor 120 den Erkennungsprozess 150 ausführen, um einen oder mehrere Benutzer als mögliche verdächtige Benutzer zu klassifizieren. In einem weiteren Beispiel kann der Prozessor den Erkennungsprozess 150 ausführen, um bestimmte Computerprozesse, Threads, Einheiten, Internetprotokoll-(IP-)Adressen und/oder andere Quellen als Quellen von verdächtigen Aktivitäten zu klassifizieren. Der Erkennungsprozess 150 umfasst eine oder mehrere Operationen, die von dem Prozessor 120 durchgeführt werden können, wie beispielsweise eine Benutzervalidierung 152, eine Erkennung 154 eines von einem Skript erzeugten Profils und eine Erkennung 156 einer abnormalen Nutzung.
-
Der Erkennungsprozess 150 kann an den in der Benutzerdatenbank 128 gespeicherten Benutzereinstellungen 129 durchgeführt werden. In einigen Beispielen kann der Prozessor 120 den Erkennungsprozess 150 periodisch in Zeitintervallen automatisch durchführen, die in den Anweisungen 124 angegeben sind. In einigen Beispielen kann der Prozessor 120 den Erkennungsprozess 150 als Reaktion darauf, dass er ein neues Benutzerprofil empfängt, automatisch durchführen. Die Uhrzeit und die Situation für die Durchführung des Erkennungsprozesses 150 beruht auf einer gewünschten Ausführung des Systems 100. Zum Beispiel kann das System 100 so konfiguriert sein, dass es den Erkennungsprozess 150 periodisch automatisch durchführt, um die Verarbeitungsleistung zu verringern. In einem weiteren Beispiel kann das System 100 so konfiguriert sein, dass es den Erkennungsprozess 150 auf der Grundlage von verschiedenen, von den Anweisungen 124 angegebenen Sicherheitsstufen automatisch durchführt, beispielsweise den Erkennungsprozess 150 als Reaktion auf das Empfangen eines jeden neuen Benutzerprofils oder als Reaktion auf das Empfangen aller fünf Teile von neuen Benutzerprofilen durchführt.
-
Die Benutzervalidierung 152 umfasst das Analysieren von einer oder mehreren in der Benutzerdatenbank 128 gespeicherten Benutzereinstellungen 129, um eine Quelle von verdächtigen Aktivitäten zu ermitteln. In einigen Beispielen umfasst eine Analyse der Benutzereinstellungen 129 das Überprüfen von Telefonnummern durch automatisches Wählen der Telefonnummern, das Prüfen, ob ein Domänenname einer jeden E-Mail-Adresse unter den Benutzereinstellungen 129 vorhanden ist, ob ein Land einer jeden Postanschrift der Benutzereinstellungen 129 mit dem Domänennamen einer entsprechenden E-Mail-Adresse übereinstimmt, und/oder andere Arten der Überprüfung. Zum Beispiel kann der Prozessor 120 feststellen, ob geografische Parameter innerhalb der einzelnen Benutzereinstellungen 129 konsistent sind, wie beispielsweise feststellen, ob es sich bei einer Vorwahl einer Telefonnummer, einer E-Mail-Domäne und einem Land einer Postanschrift um dasselbe Land handelt.
-
In einem weiteren Beispiel umfasst die Benutzervalidierung 152 auch das Überprüfen, ob der Domänenname einer jeden E-Mail-Adresse vorhanden ist, indem eine Domänenname-Abfrage 126 an das Domänennamensystem (DNS, Domain Name System) 140 gesendet wird. Die Domänenname-Abfrage 126 stellt eine Abfrage der Domänennamen einer jeden E-Mail-Adresse unter den in der Benutzerdatenbank 128 gespeicherten Benutzereinstellungen 129 dar. Das DNS 140 kann Postaustausch-(Mail-Exchange-(MX-)Daten 146 zurückgeben, darunter Postaustauschdatensätze, die Zuordnungen einer Mehrzahl von Domänennamen aus der Domänenname-Abfrage 126 zu einem oder mehreren Postaustauchservern angeben. Zum Beispiel enthält die Domänenname-Abfrage 126 Domänennamen von E-Mail-Adressen von Benutzereinstellungen 129, aber die Postaustauschdaten 146 können Zuordnungen von Domänennamen einer Teilmenge von Benutzereinstellungen 160 zu jeweiligen Listen von Postaustauschservern enthalten. Der Prozessor 120 kann feststellen, dass die Domänennamen der Teilmenge der Benutzereinstellungen 160 vorhanden sind, und er kann feststellen, dass Domänennamen der verbleibenden Teilmenge der Benutzereinstellungen 161 nicht vorhanden sind, indem er aus den Postaustauschdaten 146 ausgeschlossene Domänennamen ermittelt. Der Prozessor 120 klassifiziert die den Benutzereinstellungen 161 entsprechenden Benutzer als verdächtig, und er kann den Zugriff auf die Ressourcen 112 von den verdächtigen Benutzern, die den Benutzereinstellungen 161 entsprechen, einschränken oder sperren. Zum Beispiel erfüllt der Prozessor 120 eine nachfolgende Anforderung oder beliebige zukünftige Anforderungen für eine Nutzung der Ressourcen 112, um eine von einem verdächtigen Benutzer angeforderte Anwendung auszuführen, gegebenenfalls nicht. Nach Abschluss der Benutzervalidierung 152 fährt der Prozessor 120 damit fort, die Erkennung 154 des von einem Skript erzeugten Profils an den Benutzereinstellungen 160 durchzuführen.
-
Die Erkennung 154 des von einem Skript erzeugten Profils umfasst das Feststellen, ob jede Benutzereinstellung 160 Kennungen wie beispielsweise einen Namen, eine Telefonnummer, E-Mail-Adressen enthält, die von einem Skript oder Computerprogramm erzeugt wurden. Die Erkennung 154 des von einem Skript erzeugten Profils beruht in einigen Ausführungsformen auf Vergleichen zwischen den Kennungen in den Benutzereinstellungen 160, was nachstehend näher zu beschreiben ist. Zum Beispiel kann der Prozessor 120 auf der Grundlage der Vergleiche feststellen, dass eine Teilmenge der Benutzereinstellungen 163 von einem Skript erzeugte E-Mail-Adressen enthält, und er kann feststellen, dass es sich bei den E-Mail-Adressen in der verbleibenden Teilmenge der Benutzereinstellungen 162 um keine von einem Skript erzeugte E-Mail-Adressen handelt. Der Prozessor 120 kann die den Benutzereinstellungen 163 entsprechenden Benutzer als verdächtige Benutzer klassifizieren und den Zugriff auf die Ressourcen 112 von den verdächtigen Benutzern, die den Benutzereinstellungen 163 entsprechen, einschränken. Nach Abschluss der Erkennung 154 des von einem Skript erzeugten Profils fährt der Prozessor 120 mit der Durchführung der Erkennung 156 einer abnormalen Nutzung an den Benutzereinstellungen 162 fort. In einigen Beispielen kann eine Benutzereinstellung, die eine von einem Skript erzeugte E-Mail-Adresse enthält, anzeigen, dass ein Benutzerprofil innerhalb der Benutzereinstellung von einem Skript oder einem Computerprogramm erzeugt wird.
-
Die Erkennung 156 einer abnormalen Nutzung umfasst das Feststellen eines Vorhandenseins von abnormalen Verhaltensweisen, die Benutzer, welche den Benutzereinstellungen 162 entsprechen, an den Tag legen. Der Prozessor 120 kann eine multivariate Analyse an Daten über das Nutzungsverhalten unter den Benutzereinstellungen 162 mit einem Referenzmodell durchführen, was nachstehend ausführlicher zu beschreiben ist. Das Referenzmodell kann von dem Prozessor 120 auf der Grundlage von Langzeitnutzungsverhaltensweisen unter den Benutzereinstellungen 129 erstellt werden. In einigen Beispielen kann der Prozessor 120 ein erstes Referenzmodell erstellen, das ein normales (z.B. nicht verdächtiges) Nutzungsverhalten darstellt, das von einer Mehrzahl von Benutzern an den Tag gelegt wird, die nicht als Quellen von verdächtigen Aktivitäten klassifiziert sind. In einigen Beispielen kann der Prozessor 120 ein zweites Referenzmodell erstellen, das ein verdächtiges Nutzungsverhalten darstellt, das von einer Mehrzahl von Benutzern an den Tag gelegt wird, die als Quellen von verdächtigen Aktivitäten klassifiziert sind. Der Prozessor 120 kann eine multivariate Analyse an Daten über das Nutzungsverhalten unter den Benutzereinstellungen 162 mit dem ersten und/oder dem zweiten Referenzmodell in Abhängigkeit von einer gewünschten Ausführung des Systems 100 durchführen. Nach der multivariaten Analyse kann der Prozessor 120 feststellen, dass das Nutzungsverhalten von Benutzern, die einer Teilmenge der Benutzereinstellungen 165 entsprechen, abnormal ist, und er kann feststellen, dass die Benutzer, die der verbleibenden Teilmenge der Benutzereinstellungen 164 entsprechen, ein normales Nutzerverhalten an den Tag legen. Der Prozessor 120 klassifiziert die den Benutzereinstellungen 165 entsprechenden Benutzer als Quellen von verdächtigen Aktivitäten, und er kann den Zugriff von verdächtigen Benutzern, die den Benutzereinstellungen 165 entsprechen, auf die Ressourcen 112 einschränken oder sperren. Nach dem Abschluss der Erkennung 156 einer abnormalen Nutzung gibt der Prozessor 120 eine Benachrichtigung aus, wie beispielsweise an einen Administrator des Systems 100, um eine Liste von verdächtigen Benutzern (z.B. Benutzern, die den Benutzereinstellungen 161, 163, 165 entsprechen) sowie Empfehlungen einer nächsten Maßnahme wie beispielsweise dem Durchführen einer Überprüfung von Benutzereinstellungen in Verbindung mit den verdächtigen Benutzern und/oder dem Benachrichtigen einer Sicherheitsbehörde anzugeben.
-
In einer beispielhaften Ausführungsform kann der Prozessor 120 die Benutzervalidierung 152, die Erkennung 154 des von einem Skript erzeugten Profils und die Erkennung 156 einer abnormalen Nutzung nacheinander ausführen, um eine Effizienz des Systems 100 zu verbessern. In einer beispielhaften Ausführungsform kann die Benutzervalidierung 152 eine erste Menge an Berechnungen einschließen, die Erkennung 154 des von einem Skript erzeugten Profils kann eine zweite Menge von Berechnungen einschließen, die größer als die erste Menge ist, und die Erkennung 156 einer abnormalen Nutzung kann eine dritte Menge an Berechnungen einschließen, die größer als die zweite Menge ist. Die Benutzereinstellungen 129, die in dem Erkennungsprozess 150 analysiert werden, der in dem Beispiel in 1 gezeigt ist, werden nach einem Abschluss der Benutzervalidierung 152 auf die Benutzereinstellungen 160 reduziert. Dann werden die Benutzereinstellungen 160 nach einem Abschuss der Erkennung 154 des von einem Skript erzeugten Profils auf die Benutzereinstellungen 162 reduziert. Daraufhin führt der Prozessor 120 die Erkennung 156 einer abnormalen Nutzung an den Benutzereinstellungen 162 anstatt an den Benutzereinstellungen 129 oder den Benutzereinstellungen 160 aus. Daher ermöglicht die sequenzielle Ausführung der Operationen in dem Erkennungsprozess 150 dem Prozessor, die geringste Menge an Berechnungen (erste Menge) an der größten Menge der Benutzereinstellungen (Benutzereinstellungen 129) durchzuführen und die größte Menge an Berechnungen (dritte Menge) an der geringsten Menge der Benutzereinstellungen (Benutzereinstellungen 162) durchzuführen. Somit kann die Effizienz des Systems 100 verbessert werden, indem die Operationen innerhalb des Erkennungsprozesses 150 auf eine sequenzielle Art und Weise ausgeführt werden, die auf der Menge der damit einhergehenden Berechnungen und der Menge der in jeder Operation des Erkennungsprozesses 150 zu analysierenden Benutzereinstellungen beruht.
-
In einer beispielhaften Ausführungsform kann der Prozessor 120 so konfiguriert sein, dass er jeder Benutzereinstellung 129 während der Ausführung des Erkennungsprozesses 150 eine Verdächtig-Einstufung zuweist. In einem Beispiel weist der Prozessor 120, wenn eine Benutzereinstellung G die Benutzervalidierung 152 nicht besteht, der Benutzereinstellung G eine höchste Einstufung zu und hindert den Benutzer der Benutzereinstellung G am Zugriff auf den Pool 110. In einem weiteren Beispiel kann der Prozessor 120, wenn die Benutzereinstellung G die Benutzervalidierung 152 besteht, ein Benutzername der Benutzereinstellung G, beruhend auf Langzeitdaten, einem verdächtigen Benutzer jedoch ähnlich ist, der Benutzereinstellung G eine Einstufung „D“ zuweisen. Wenn die Benutzereinstellung G mit einer Verdächtig-Einstufung „D“ die Erkennung 154 des von einem Skript erzeugten Profils besteht, ein Domänenname einer E-Mail-Adresse der Benutzereinstellung G, beruhend auf Langzeitdaten, wahrscheinlich jedoch verdächtige Benutzer umfasst, kann der Prozessor 120 E zu D hinzufügen, so dass die Benutzereinstellung G im Rahmen der Erkennung 156 einer abnormalen Nutzung mit einer anfänglichen Verdächtig-Einstufung von D + E analysiert wird. Die Erkennungsanweisungen 124 können einen Schwellenwert für die Verdächtig-Einstufung angeben, so dass, wenn eine Verdächtig-Einstufung der Benutzereinstellung G den Schwellenwert überschreitet (selbst wenn die Benutzereinstellung G die Benutzervalidierung 152, die Erkennung 154 des von einem Skript erzeugten Profils und/oder die Erkennung 156 einer abnormalen Nutzung bestanden hat), der Prozessor 120 den Zugriff auf den Pool 110 durch einen Benutzer der Benutzereinstellung G einschränken kann. In einem Beispiel, wenn ein Benutzer der Benutzereinstellung G aufgrund dessen, dass die Verdächtig-Einstufung D + Eden Schwellenwert überschreitet, am Zugriff auf den Pool 110 gehindert wird, führt der Prozessor 120 die Erkennung 156 einer abnormalen Nutzung an der Benutzereinstellung G nicht durch, um Verarbeitungsleistung und -zeit zu sparen.
-
2 veranschaulicht einen Ablaufplan in Zusammenhang mit der Erkennung von verdächtigen Aktivitäten in Computernetzwerken, die gemäß mindestens einigen hierin dargelegten Ausführungsformen angeordnet sind. 2 kann nachstehend unter Bezugnahme auf die obigen Beschreibungen von 1 beschrieben werden. Der in 2 gezeigte Erkennungsprozess kann eine oder mehrere Operationen, Aktionen oder Funktionen umfassen, wie durch einen oder mehrere der Blöcke 202, 204, 206, 208, 210, 212, 214, 216, 218, 220, 222, 224, 226, 228, 230 und 232 veranschaulicht ist. Wenngleich sie als diskrete Blöcke veranschaulicht sind, können verschiedene Blöcke in Abhängigkeit von der gewünschten Ausführung in zusätzliche Blöcke aufgeteilt, zu einer geringeren Anzahl von Blöcken kombiniert, entfernt oder parallel durchgeführt werden.
-
Der Erkennungsprozess 150 beginnt am Block 202, wo der Prozessor 120 einen oder mehrere Domänennamen in den Benutzereinstellungen 129 abfragt. In Beispielen, in denen das System 100 den Erkennungsprozess 150 als Reaktion auf das Empfangen eines neuen Benutzerprofils ausführt, kann der Prozessor 120 die Domänenname-Abfrage 126 an das DNS 140 senden, um einen Postaustauschdatensatz des Domänennamens in dem neuen Benutzerprofil am Block 202 anzufordern. In einem weiteren Beispiel, in dem der Prozessor 100 den Erkennungsprozess 150 periodisch ausführt, kann der Prozessor 120 die Domänenname-Abfrage 126 an das DNS 140 senden, um Postaustauschdatensätze einer Mehrzahl von Domänennamen in den in der Datenbank 128 gespeicherten Benutzereinstellungen 129 anzufordern. Das DNS 140 gibt Postaustauschdaten 146 zurück, darunter den einen oder die mehreren Postaustauschdatensätze, der/die eine Liste von Postaustauschservern für einen oder mehrere von der Domänenname-Abfrage 126 angegebenen Domänennamen angibt/angeben.
-
Der Erkennungsprozess 150 fährt vom Block 202 zum Block 204 fort, wo der Prozessor 120 die von dem DNS 140 zurückgegebenen Postaustauschdaten 146 analysiert. Zum Beispiel kann der Prozessor 120 die Postaustauschdatensätze in den Postaustauschdaten 146 analysieren, um festzustellen, ob Postserver eines Domänennamens X der E-Mail-Adresse 109 vorhanden sind und ob die Postserver sicher eingerichtet sind. Der Prozessor 120 kann einen Satz von Benutzereinstellungen (z.B. die Benutzereinstellungen 160) als Benutzereinstellungen markieren, die eine E-Mail-Adresse mit gültigen Domänennamen enthalten, und er kann einen Satz von Benutzereinstellungen (z.B. die Benutzereinstellungen 161) als Benutzereinstellungen markieren, die E-Mail-Adressen mit ungültigen Domänennamen enthalten.
-
Der Erkennungsprozess 150 fährt vom Block 204 zum Block 206 fort, wo der Prozessor 120 die E-Mail-Adressen unter den markierten Benutzereinstellungen im Block 204 analysiert, um E-Mail-Adressen mit gültigen Domänennamen von E-Mail-Adressen mit ungültigen Domänennamen zu unterscheiden.
-
Bei E-Mail-Adressen mit ungültigen Domänennamen fährt der Erkennungsprozess 150 vom Block 206 zum Block 208 fort, wo der Prozessor 120 Benutzer, die Benutzereinstellungen entsprechen, welche E-Mail-Adressen mit ungültigen Domänennamen enthalten, am Zugriff auf die Ressourcen 112 hindert. Wenn die E-Mail-Adresse 109 zum Beispiel einen ungültigen Domänennamen enthält, kann der Prozessor 120 eine nachfolgende Anforderung von dem Benutzer 101 für den Zugriff auf die Ressourcen 112 zurückweisen.
-
Bei Benutzereinstellungen, die E-Mail-Adressen mit gültigen Domänennamen enthalten, fährt der Erkennungsprozess 150 vom Block 206 zum Block 210 fort, wo der Prozessor 120 eine Anzahl von E-Mail-Adressen für jeden gültigen Domänennamen unter den Benutzereinstellungen 160 feststellt. In Beispielen, in denen eine einzelne Benutzereinstellung, wie beispielsweise die dem Benutzer 101 entsprechende Benutzereinstellung, in dem Erkennungsprozess 150 analysiert wird, kann der Prozessor 120 unter den Benutzereinstellungen 160 eine Anzahl von E-Mail-Adressen mit demselben Domänennamen wie die E-Mail-Adresse 109 feststellen.
-
Der Erkennungsprozess 150 fährt vom Block 210 zum Block 212 fort, wo der Prozessor 120 Domänennamen ermittelt, die bezogen auf einen in den Anweisungen 124 angegebenen Schwellenwert mehr als eine bestimmte Menge an E-Mail-Adressen haben. In dem in 2 gezeigten Beispiel kann der Prozessor 120 Benutzereinstellungen mit Domänennamen, die weniger als N E-Mail-Adressen enthalten, aus dem Erkennungsprozess 150 herausfiltern, zum Beispiel entfernen. Zum Beispiel kann der Prozessor 120 Benutzereinstellungen, die Domänennamen enthalten, welche über weniger als drei E-Mail-Adressen verfügen, unter den Benutzereinstellungen 160 entfernen. Der Prozessor 120 setzt den Erkennungsprozess 150 mit der Analyse von Benutzereinstellungen mit Domänennamen fort, die N oder mehr (z.B. in dem Beispiel von 2 drei oder mehr) E-Mail-Adressen unter den Benutzereinstellungen 160 haben.
-
Der Erkennungsprozess 150 fährt vom Block 212 zum Block 214 fort, wo der Prozessor 120 für jede E-Mail-Adresse unter den ermittelten Domänennamen aus dem Block 212 einen Unterschied zwischen der E-Mail-Adresse und anderen E-Mail-Adressen mit demselben Domänennamen feststellt. Wenn die E-Mail-Adresse 109 zum Beispiel den Domänennamen X hat, stellt der Prozessor 120 eine Levenshtein-Distanz zwischen der E-Mail-Adresse 109 und einer jeden E-Mail-Adresse mit dem Domänennamen X fest. Nach der Feststellung der Levenshtein-Distanzen stellt der Prozessor 120 einen mit A bezeichneten Mittelwert der Levenshtein-Distanzen zwischen der E-Mail-Adresse 109 und anderen E-Mail-Adressen mit dem Domänennamen X fest. Der Prozessor 120 stellt die Levenshtein-Distanzen und den Mittelwert A für jede E-Mail-Adresse unter den Benutzereinstellungen 160 fest, welche die ermittelten Domänennamen aus dem Block 212 enthalten. In einem Beispiel kann der Prozessor 120 den Mittelwert A im Speicher 122 ablegen, so dass der Prozessor 120 den gespeicherten Mittelwert A aus dem Speicher 122 abrufen kann, um einen Mittelwert A' für eine neue E-Mail-Adresse in einer nachfolgenden Ausführung des Erkennungsprozesses 150 festzustellen. Wenn der Mittelwert A zum Beispiel ein zu fünfzig E-Mail-Adressen des Domänennamens X gehörender Mittelwert ist, kann der Prozessor 120 A' feststellen, indem er A abruft, A mit fünfzig multipliziert, die zu der neuen E-Mail-Adresse gehörende Levenshtein-Distanz addiert und das Ergebnis durch einundfünfzig teilt - anstatt einen Durchschnitt von einundfünfzig Levenshtein-Distanzen zu berechnen.
-
Die Levenshtein-Distanz zwischen einem Paar von E-Mail-Adressen stellt einen Unterschied zwischen dem Paar von E-Mail-Adressen dar. In einem Beispiel kann eine erste mittlere Levenshtein-Distanz zwischen der E-Mail-Adresse 109 und anderen E-Mail-Adressen in dem Domänennamen X gleich A1 sein, und eine zweite mittlere Levenshtein-Distanz zwischen einer weiteren E-Mail-Adresse K und den E-Mail-Adressen im Domänennamen X kann A2 sein. Wenn A1 größer als A2 ist, kann der Prozessor 120 feststellen, dass die Möglichkeit, eine von einem Skript erzeugte E-Mail-Adresse zu sein, bei der E-Mail-Adresse 109 gegebenenfalls geringer ist als bei der E-Mail-Adresse K, da die E-Mail-Adresse K eine größere Ähnlichkeit mit den restlichen E-Mail-Adressen innerhalb der Domäne X hat.
-
Der Erkennungsprozess 150 kann mit dem Block 216 fortgesetzt werden. Die Blöcke 214 und 216 können von dem Prozessor 120 gleichzeitig oder in einer beliebigen Reihenfolge durchgeführt werden. Am Block 216 stellt der Prozessor 120 einen mit B bezeichneten Variationskoeffizienten von Längen der E-Mail-Adressen für jeden im Block 212 ermittelten Domänennamen fest. Der Variationskoeffizient B stellt einen Variationsgrad der Längen von E-Mail-Adressen innerhalb eines Domänennamens dar. Wenn der Variationskoeffizient B1 eines ersten Domänennamens höher als ein Variationskoeffizient B2 eines zweiten Domänennamens ist, ist die Wahrscheinlichkeit bei dem zweiten Domänennamen, dass er über von einem Skript erzeugte E-Mail-Adressen verfügt, möglicherweise größer als bei dem ersten Domänennamen, da unter den E-Mail-Adressen des zweiten Domänennamens eine geringere Längenvariation besteht. In einem Beispiel kann der Prozessor 120 den Variationskoeffizienten B im Speicher 122 ablegen, so dass der Prozessor 120 den gespeicherten Variationskoeffizienten B aus dem Speicher 122 abrufen kann, um einen Variationskoeffizienten B' für eine neue E-Mail-Adresse in einer nachfolgenden Ausführung des Erkennungsprozesses 150 festzustellen.
-
Der Erkennungsprozess 150 kann mit dem Block 218 fortgesetzt werden. Die Blöcke 214, 216 und 218 können von dem Prozessor 120 gleichzeitig oder in einer beliebigen Reihenfolge durchgeführt werden. Am Bock 218 stellt der Prozessor 120 für jede E-Mail-Adresse unter den ermittelten Domänennamen aus dem Block 212 einen Unterschied zwischen der E-Mail-Adresse mit einem Namen (Vornamen und/oder Nachnamen) eines entsprechenden Benutzers fest. Zum Beispiel kann der Prozessor 120 eine Levenshtein-Distanz zwischen der E-Mail-Adresse 109 und einer Kombination aus dem Vor- und Nachnamen des Benutzers 101 feststellen. Die Levenshtein-Distanz zwischen einer E-Mail-Adresse und dem Namen eines entsprechenden Benutzers kann als ein Hinweis zur Feststellung, ob eine E-Mail-Adresse eine von einem Skript erzeugte E-Mail-Adresse ist, in Situationen verwendet werden, in denen Langzeitdaten anzeigen, dass Benutzer dazu tendieren, einen oder mehrere ihrer Vor- und Nachnamen in einer E-Mail-Adresse zu verwenden. Nach der Feststellung der Levenshtein-Distanz zwischen einer jeden E-Mail-Adresse und dem entsprechenden Benutzernamen kann der Prozessor 120 einen mit C bezeichneten Mittelwert der Levenshtein-Distanzen zwischen E-Mail-Adressen und Benutzernamen innerhalb eines jeden Domänennamens feststellen. Zum Beispiel kann der Prozessor 120 einen Mittelwert Cx feststellen, der einen Mittelwert von Levenshtein-Distanzen zwischen E-Mail-Adressen des Domänennamens X mit zugehörigen Benutzernamen darstellt. In einem Beispiel kann der Prozessor 120 den Mittelwert Cx im Speicher 122 ablegen, so dass der Prozessor 120 den gespeicherten Mittelwert Cx auf einen Mittelwert Cx' aktualisieren kann, indem er in einer nachfolgenden Ausführung des Erkennungsprozesses 150 eine neue E-Mail-Adresse verwendet.
-
In einer beispielhaften Ausführungsform können A, B und C als ein Prozentsatz dargestellt werden, wie beispielsweise einen als 100×(Tatsächlicher Unterschied/Maximaler Unterschied) dargestellten unerreichten Prozentsatz. Zum Beispiel kann der Mittelwert A für jede E-Mail-Adresse i als Ai=Durchschnitt[100x(L A ij/ LA max))] bezeichnet werden, wobei LA ij eine Levenshtein-Distanz zwischen der E-Mail-Adresse i und einer weiteren E-Mail-Adresse j mit einem gleichen Domänennamen bezeichnet und LA max eine zwischen einem Paar von E-Mail-Adressen mit dem gleichen Domänennamen festgestellte maximale Levenshtein-Distanz bezeichnet. Wenn der Domänenname X zum Beispiel drei E-Mail-Adressen (i = 1, 2, 3) enthält, kann der Prozessor 120 drei verschiedene Levenshtein-Distanzen LA 12, LA 13, LA 23 feststellen. Der Prozessor 120 kann die Levenshtein-Distanz eines größten Werts ermitteln und die ermittelte Levenshtein-Distanz als LA max zuweisen. Dann kann der Prozessor 120 Ai für jede E-Mail-Adresse auf der Grundlage der zugewiesenen LA max feststellen. Ebenso kann der Variationskoeffizient B als B= Durchschnitt [100×(L B ij/ LB max)] bezeichnet werden, wobei LB ij einen Längenunterschied zwischen der E-Mail-Adresse i und einer weiteren E-Mail-Adresse j mit einem gleichen Domänennamen bezeichnet und LB max einen zwischen einem Paar von E-Mail-Adressen mit dem gleichen Domänennamen festgestellten maximalen Längenunterschied bezeichnet. Ebenso kann der Mittelwert C für jede E-Mail-Adresse i als Ci= Durchschnitt[100×(LC i/ LC max)] bezeichnet werden, wobei LC i eine Levenshtein-Distanz zwischen der E-Mail-Adresse i und einem Namen des Benutzers bezeichnet, der zu der E-Mail-Adresse i gehört, und LC max eine zwischen einer E-Mail-Adresse und einem Namen eines zugehörigen Benutzers innerhalb desselben Domänennamens festgestellte maximale Levenshtein-Distanz bezeichnet. In einem Beispiel ist LA ij null, wenn zwei E-Mail-Adressen (i, j) identisch sind, so dass Ai 0 % beträgt. In einem Beispiel nimmt auch der Wert LA ij zu, wenn der Unterschied zwischen zwei E-Mail-Adressen (i, j) zunimmt. Somit nimmt die Wahrscheinlichkeit, dass eine Benutzereinstellung mit einer Quelle von verdächtigen Aktivitäten in Verbindung gebracht wird, mit der Zunahme des unerreichten Prozentsatzes Ai zu. Desgleichen nimmt die Wahrscheinlichkeit, dass eine Benutzereinstellung mit einer Quelle von verdächtigen Aktivitäten in Verbindung gebracht wird, mit der Zunahme des unerreichten Prozentsatzes B zu. Des Weiteren nimmt die Wahrscheinlichkeit, dass eine Benutzereinstellung mit einer Quelle von verdächtigen Aktivitäten in Verbindung gebracht wird, mit der Abnahme des unerreichten Prozentsatzes Ci zu.
-
Der Erkennungsprozess 150 kann von den Blöcken 214, 216 und/oder 218 zum Block 220 fortgesetzt werden, wo der Prozessor 120 eine mit S bezeichnete Einstufung für jede E-Mail-Adresse feststellt und wobei S = w1A + W2B - W3C. Die Variablen w1, w2 und w3 können Gewichtungen für den Mittelwert A, den Variationskoeffizienten B bzw. den Mittelwert C angeben. Die Gewichtungen w1, w2 und w3 können nach jeder Ausführung des Erkennungsprozesses 150 von dem Prozessor 120 kontinuierlich angepasst werden. Ein Anfangswert der Gewichtungen w1 und w2 kann in den Anweisungen 124 angegeben werden. In einem Beispiel können die Gewichtungen w1, w2 und w3 von Ergebnissen aus Langzeitausführungen des Erkennungsprozesses 150, einem Umfang (z.B. Anzahl der E-Mail-Adressen) eines jeden Domänennamens, der analysiert wird, einer Menge an von einem Skript in der Vergangenheit erzeugter E-Mail-Adressen in jedem Domänennamen, einer Wichtigkeit von einem jeden in den Erkennungsanweisungen 124 definierten A, B und C und/oder anderen Faktoren abhängig sein. Wenn die Erkennungsanweisungen 124 zum Beispiel A als die wichtigste Komponente der Einstufung S angegeben haben, kann w1 so angepasst werden, dass es größer als w2 und w3 ist. In einem weiteren Beispiel kann, wenn eine Streuung einer Verteilung von C größer als eine Streuung einer Verteilung von A ist, die Gewichtung w1 so angepasst werden, dass sie größer als w3 ist, um A eine größere Wichtigkeit zu verleihen. In einem Beispiel kann eine große Streuung der Verteilung von C auf eine Inkonsistenz dahingehend hinweisen, ob Benutzer ihren Vor- und/oder Nachnamen in ihren E-Mail-Adressen verwenden.
-
Der Erkennungsprozess 150 kann von den Blöcken 220 zum Block 222 fortfahren, wo der Prozessor 120 feststellen kann, ob die Einstufung S einer jeden E-Mail-Adresse eine in den Anweisungen 124 angegebene Bedingung erfüllt. Zum Beispiel kann der Prozessor 120 feststellen, ob die Einstufung S der E-Mail-Adresse einen in den Anweisungen 124 angegebenen Schwellenwert unterschreitet. In einem Beispiel erhöht sich die Wahrscheinlichkeit, dass es sich bei einer E-Mail-Adresse um eine von einem Skript erzeugte E-Mail-Adresse handelt, mit der Abnahme des Werts von A und B und der Zunahme des Werts von C. Somit nimmt die Einstufung S mit einer zunehmenden Wahrscheinlichkeit, dass es sich bei der E-Mail-Adresse um eine von einem Skript erzeugte E-Mail-Adresse handelt, ab. Die Anweisung 124 kann einen Schwellenwert für die Einstufung S angeben, wobei der Wert des Schwellenwerts auf einer gewünschten Ausführung des Systems 100 beruht. Zum Beispiel kann das System 100 mit zunehmendem Wert des Schwellenwerts weitere Benutzereinstellungen ermitteln, die eine von einem Skript erzeugte E-Mail-Adresse enthalten können. In einigen Beispielen können die Anweisungen 124 zusätzliche Bedingungen am Block 222 angeben, die auf einer gewünschten Ausführung des Systems 100 beruhen. Zum Beispiel kann die Bedingung neben der Feststellung, ob die Einstufung S den Schwellenwert unterschreitet, des Weiteren eine Feststellung umfassen, ob die Koeffizientenvariable B einen weiteren Schwellenwert unterschreitet, so dass der Benutzer 101, wenn beide Bedingungen in Zusammenhang mit S und B erfüllt sind, von dem Prozessor 120 als verdächtig klassifiziert werden kann.
-
Der Erkennungsprozess 150 schaltet vom Block 222 zum Block 224, wenn die Bedingung im Block 222 erfüllt ist. Am Block 224 schränkt der Prozessor 120 Benutzer ein, die Benutzereinstellungen mit E-Mail-Adressen entsprechen, welche die Bedingungen im Block 222 erfüllt haben. Wenn es sich bei der E-Mail-Adresse 109 zum Beispiel um eine E-Mail-Adresse handelt, die wahrscheinlich von einem Skript erzeugt wurde, kann der Prozessor 120 eine nachfolgende Anforderung von dem Benutzer 101 für den Zugriff auf die Ressourcen 112 zurückweisen.
-
Der Erkennungsprozess 150 schaltet vom Block 222 zum Block 226, wenn die Bedingung im Block 222 nicht erfüllt ist. Am Block 226 entfernt der Prozessor 120 Benutzereinstellungen, die keine Aktivität oder keine aktuelle Aktivität aufweisen, aus dem Erkennungsprozess 150. Zum Beispiel können die Ressourcen 112 aus dem Pool 110 zur Ausführung eines mobilen Spiels genutzt werden. Am Block 226 kann der Prozessor 120 Benutzereinstellungen entfernen, die Benutzern, die sich registriert, das mobile Spiel aber nie gespielt haben, oder Benutzern entsprechen, die das mobile Spiel innerhalb der letzten Woche, innerhalb von zwei Wochen, einem Monat und/oder einem anderen Zeitraum nicht gespielt haben, der von den Anweisungen 124 angegeben werden kann.
-
Der Erkennungsprozess 150 kann vom Block 226 zum Block 228 schalten, wo der Prozessor 120 eine multivariate Analyse an Benutzereinstellungen durchführen kann, die im Block 226 nicht entfernt werden. Die multivariate Analyse kann das Verwenden einer robusten Hauptkomponentenanalyse umfassen, um abnormale Muster beim Nutzungsverhalten zu ermitteln, das diejenigen Benutzer an den Tag legen, die Benutzereinstellungen entsprechen, welche aus dem Block 226 übrig sind. In einigen Beispielen können die Variablen des Nutzungsverhaltens, die von dem Prozessor 120 am Block 228 analysiert werden können, Unterschiede zwischen Standortinformationen in Registrierungsinformationen und einer Internetprotokoll-(IP-)Adresse enthalten, die das Benutzerprofil, User Engagement Scores mit Latenzzeit-, Häufigkeits- und Dauer-Messungen, User Engagement Scores mit Dialogen, die von Konten über eine Customer Messaging Platform des Systems 100 geführt werden, Z-Scores (Standard-Score) der Nutzungsverteilung bereitgestellt hat. In einem Beispiel kann der Prozessor 120 ein abnormales Nutzungsverhalten ermitteln, indem er Einstufungen von Benutzereinstellungen ermittelt, welche die Ressourcen 112 innerhalb eines kurzen Zeitraums übermäßig in Anspruch nahmen. In einigen Beispielen kann der Prozessor 120 die multivariate Analyse unter Verwendung anderer unüberwachter Clustering-Algorithmen durchführen, die sich von der robusten Hauptkomponentenanalyse unterscheiden. In einem weiteren Beispiel kann der Prozessor 120 ein abnormales Nutzungsverhalten auf der Grundlage von Nutzungsattributen ermitteln, die ein Engagement von Benutzern des Pools 110 darstellen, wie beispielsweise Aktualität, Häufigkeit, Dauer und Lebensdauer und/oder anderer Attribute. Aktualität bezieht sich auf eine Zeitspanne (z.B. mehrere Tage) ab einem Zeitpunkt der letzten Aktivität bis zu einem aktuellen Zeitpunkt. Häufigkeit bezieht sich auf eine Menge an Aktivitäten der Benutzer von einem Startzeitpunkt (z.B. einem Zeitpunkt, zu dem ein Benutzer die Ressourcen 112 angefordert hat) bis zum aktuellen Zeitpunkt. Dauer bezieht sich auf eine Zeitspanne von dem Startzeitpunkt bis zu einem erstmaligen Aktivitätsdatum (z.B. wie lange nach der Anforderung hat ein Benutzer mit der Nutzung der Ressourcen 112 begonnen). Lebensdauer bezieht sich auf eine Zeitspanne ab dem Startzeitpunkt bis zum Enddatum der letzten Aktivität. Indem diese Attribute analysiert werden, kann der Prozessor 120 ein abnormales Nutzungsverhalten ermitteln, indem er Benutzer analysiert, die kürzlich eine beliebige Aktion ausgeführt haben, häufig eine beliebige Aktion ausgeführt haben, kurz nach der Registrierung oder einer Anforderung für Ressourcen 112 eine beliebige Aktion ausgeführt haben und verhältnismäßig mehr Zeit mit der Nutzung der Ressourcen 112 verbracht haben.
-
In einigen Beispielen kann die multivariate Analyse auch Vergleiche mit Referenzmodellen umfassen. Der Prozessor 120 kann so konfiguriert sein, dass er mittels Langzeitnutzungsverhaltensweisen ein Referenzmodell erstellt. Zum Beispiel kann der Prozessor 120 ein erstes Modell, das angibt, wie oft Benutzer, die nicht verdächtig sind, die Ressourcen 112 innerhalb von bestimmten Zeiträumen in Anspruch nehmen, und ein zweites Modell erstellen, das angibt, wie oft in der Vergangenheit verdächtige Benutzer die Ressourcen 112 innerhalb derselben bestimmten Zeiträume in Anspruch nehmen. Der Prozessor 120 kann das Nutzungsverhalten der am Block 228 analysierten Benutzereinstellungen mit dem ersten und dem zweiten Modell vergleichen, um festzustellen, ob jedes Benutzerprofil ein abnormales Verhalten an den Tag legt. In einem weiteren Beispiel kann der Prozessor 120 abnormale Nutzungsverhaltensweisen ermitteln, indem er Ähnlichkeits-Einstufungen zwischen dem Nutzungsverhalten, das analysiert wird, und in der Vergangenheit verdächtigen Nutzerverhaltensweisen und/oder anderen Variablen feststellt.
-
Der Erkennungsprozess 150 kann vom Block 228 zum Block 230 schalten, wo der Prozessor 120 Benutzer, die ein abnormales Verhalten an den Tag legen, auf der Grundlage der am Block 228 durchgeführten multivariaten Analyse ermitteln kann.
-
Wenn ein Benutzer ein abnormales Verhalten an den Tag legt, kann der Erkennungsprozess 150 vom Block 230 zum Block 232 schalten, wo der Prozessor 120 den Zugriff des Benutzers auf die Ressourcen 112 einschränken kann. Wenn das Nutzungsverhalten in der Benutzereinstellung 129, die dem Benutzer 101 entspricht, zum Beispiel ein abnormales Verhalten aufweist, kann der Prozessor 120 eine nachfolgende Anforderung von dem Benutzer 101 für den Zugriff auf die Ressourcen 112 zurückweisen.
-
Wenn ein Benutzer kein abnormales Verhalten an den Tag legt, kann der Prozessor 120 den Erkennungsprozess 150 beenden und abschließen und einer nachfolgenden Anforderung des Benutzers den Zugriff auf die Ressourcen 112 gestatten. Der Prozessor 120 kann eine Liste von Quellen verdächtiger Aktivitäten zusammenstellen, wie beispielsweise Benutzer, die an den Blöcken 208, 224, 232 am Zugriff auf die Ressourcen 112 gehindert werden, und er kann die zusammengestellte Liste von Quellen auf einem Bildschirm, in einer Benutzerschnittstelle und/oder an eine andere Einheit ausgeben, die von einem Administrator des Systems 100 gesteuert werden kann, um eine Benachrichtigung sowie Empfehlungen für eine nächste Maßnahme bereitzustellen. Zum Beispiel kann der Prozessor eine Empfehlung ausgeben, die Benutzerprofile zu überprüfen, die der zusammengestellten Liste entsprechen, oder die Benutzer aus der zusammengestellten Liste zu kontaktieren oder sich an für Cybersicherheit zuständige Behörden zu wenden.
-
3 veranschaulicht einen Ablaufplan in Zusammenhang mit der Erkennung von verdächtigen Aktivitäten in Computernetzwerken, die gemäß mindestens einigen hierin dargelegten Ausführungsformen angeordnet sind. Der Prozess in 3 kann zum Beispiel unter Verwendung des vorstehend erörterten Computersystems 100 ausgeführt werden. Ein beispielhafter Prozess kann eine oder mehrere Operationen, Aktionen oder Funktionen umfassen, wie durch einen oder mehrere der Blöcke 302, 304, 306, 308, 310, 312, 314 und/oder 316 veranschaulicht ist. Wenngleich sie als diskrete Blöcke veranschaulicht sind, können verschiedene Blöcke in Abhängigkeit von der gewünschten Ausführung in zusätzliche Blöcke aufgeteilt, zu einer geringeren Anzahl von Blöcken kombiniert, entfernt oder parallel durchgeführt werden.
-
Die Verarbeitung kann am Block 302 beginnen, wo ein Prozessor ein Benutzerprofil eines Benutzers empfängt, der Zugriff auf ein Netzwerk angefordert hat. Das Benutzerprofil weist mindestens eine E-Mail-Adresse und ein Nutzungsverhalten des Benutzers auf, die E-Mail-Adresse weist einen Domänennamen auf und das Nutzungsverhalten zeigt eine Langzeitnutzung des Netzwerks durch den Benutzer an.
-
Die Verarbeitung kann vom Block 302 zum Block 304 fortfahren. Am Block 304 stellt der Prozessor fest, ob der Domänenname gültig ist. Der Prozessor stellt fest, ob der Domänenname gültig ist, indem er eine Abfrage für den Domänennamen an ein Domänennamensystem sendet, und er empfängt einen Postaustauschdatensatz, der eine Zuordnung des Domänennamens zu einer Liste von Servern angibt. Wenn der Postaustauschdatensatz von dem Domänennamensystem an dem Prozessor empfangen wird, stellt der Prozessor fest, dass der Domänenname gültig ist. Wenn der Postaustauschdatensatz von dem Domänennamensystem nicht an dem Prozessor empfangen wird, stellt der Prozessor fest, dass der Domänenname ungültig ist.
-
Wenn der Domänenname ungültig ist, kann die Verarbeitung mit dem Block 306 fortgesetzt werden. Am Block 306, wo der Prozessor den Benutzer als verdächtigen Benutzer klassifiziert. Die Verarbeitung kann vom Block 306 zum Block 316 fortfahren, wo der Prozessor eine nachfolgende Anforderung von dem Benutzer für einen Zugriff auf das Netzwerk zurückweist.
-
Wenn der Domänenname gültig ist, kann die Verarbeitung mit dem Block 308 fortgesetzt werden. Am Block 308 stellt der Prozessor eine Wahrscheinlichkeit fest, dass es sich bei der E-Mail-Adresse um eine von einem Skript erzeugte E-Mail-Adresse handelt. Das Feststellen der Wahrscheinlichkeit beruht auf einem Unterschied zwischen der E-Mail-Adresse und einer Mehrzahl von E-Mail-Adressen, wobei die Mehrzahl der E-Mail-Adressen den Domänennamen aufweist und die Mehrzahl der E-Mail-Adressen anderen Benutzern zugeordnet ist, die Zugriff auf das Netzwerk angefordert haben. In einem Beispiel beruht die Feststellung der Wahrscheinlichkeit auf einem ersten Mittelwert, einem zweiten Mittelwert und einem Variationskoeffizienten von Längen. Der erste Mittelwert ist ein Durchschnitt der Unterschiede zwischen der E-Mail-Adresse und der Mehrzahl der E-Mail-Adressen. Der zweite Mittelwert ist ein Durchschnitt des Unterschieds zwischen der E-Mail-Adresse und einem Namen des Benutzers sowie von Unterschieden zwischen der Mehrzahl der E-Mail-Adressen und Namen von entsprechenden Benutzern. Der Variationskoeffizient von Längen ist eine durchschnittliche Variation von Längen der Mehrzahl der E-Mail-Adressen. Die Wahrscheinlichkeit wird von dem Prozessor auf der Grundlage eines Vergleichs einer Einstufung mit einem Schwellenwert festgestellt, wobei die Einstufung auf dem ersten Mittelwert, dem Variationskoeffizienten von Längen und dem zweiten Mittelwert beruht.
-
Wenn die E-Mail-Adresse eine von einem Skript erzeugte E-Mail-Adresse ist, kann die Verarbeitung mit dem Block 306 fortgesetzt werden, wobei der Prozessor den Benutzer als verdächtigen Benutzer klassifiziert. Die Verarbeitung kann vom Block 306 zum Block 316 fortfahren, wo der Prozessor eine nachfolgende Anforderung von dem Benutzer für einen Zugriff auf das Netzwerk zurückweist. Wenn die E-Mail-Adresse keine von einem Skript erzeugte E-Mail-Adresse ist, kann die Verarbeitung mit dem Block 310 fortgesetzt werden. Am Block 310 vergleicht der Prozessor das Nutzungsverhalten des Benutzers mit einem Referenzmodell. Das Referenzmodell beruht auf einem Nutzungsverhalten, das von den anderen Benutzern an den Tag gelegt wird, die Zugriff auf das Netzwerk angefordert haben. In einigen Beispielen wird der Vergleich des Nutzungsverhaltens mit dem Referenzmodell von dem Prozessor als Reaktion darauf durchgeführt, dass ein Vorhandensein von Aktivitäten erkannt wird, die von dem Benutzer in dem Netzwerk durchgeführt werden. In einigen Beispielen umfasst das Vergleichen des Nutzungsverhaltens mit dem Referenzmodell das Vergleichen des Nutzungsverhaltens mit einem von verdächtigen Benutzern in dem Netzwerk an den Tag gelegten Langzeitnutzungsverhalten.
-
Die Verarbeitung kann vom Block 310 zum Block 312 fortfahren. Am Block 312 stellt der Prozessor auf der Grundlage des Vergleichs fest, ob ein von dem Benutzer in dem Netzwerk an den Tag gelegtes abnormales Nutzungsverhalten vorhanden ist. In einigen Beispielen stellt der Prozessor fest, dass das Vorhandensein eines abnormalen Nutzungsverhaltens das Verwenden einer robusten Hauptkomponentenanalyse umfasst.
-
Wenn der Prozessor ein Vorhandensein eines abnormalen Nutzungsverhaltens feststellt, kann die Verarbeitung mit dem Block 306 fortgesetzt werden, wobei der Prozessor den Benutzer als verdächtigen Benutzer klassifiziert. Die Verarbeitung kann vom Block 306 zum Block 316 fortfahren, wo der Prozessor eine nachfolgende Anforderung von dem Benutzer für einen Zugriff auf das Netzwerk zurückweist. Wenn der Prozessor feststellt, dass kein abnormales Nutzungsverhalten vorhanden ist, kann die Verarbeitung mit dem Block 314 fortgesetzt werden. Am Block 314 gestattet der Prozessor einer nachfolgenden Anforderung von dem Benutzer einen Zugriff auf das Netzwerk.
-
4 veranschaulicht ein Schaubild eines beispielhaften Computer- oder Verarbeitungssystems, das in einer einzelnen Ausführungsform der vorliegenden Offenbarung die Erkennung von verdächtigen Aktivitäten in Computernetzwerken ausführen kann. Das Computersystem ist lediglich ein Beispiel eines geeigneten Verarbeitungssystems und nicht als Hinweis auf eine Einschränkung des Nutzungsumfangs oder der Funktionalität von Ausführungsformen der hierin beschriebenen Methodik zu verstehen. Das gezeigte Verarbeitungssystem kann mit zahlreichen anderen Universal- oder Spezialdatenverarbeitungssystemumgebungen oder -konfigurationen betrieben werden. Zu Beispielen für hinlänglich bekannte Datenverarbeitungssysteme, -umgebungen und/oder -konfigurationen, die für eine Verwendung mit dem in 4 gezeigten Verarbeitungssystem geeignet sein können, können, ohne darauf beschränkt zu sein, Personal-Computer-Systeme, Server-Computersysteme, Thin Clients, Thick Clients, tragbare oder Laptop-Einheiten, Mehrprozessorsysteme, auf einem Mikroprozessor beruhende Systeme, Aufsatzgeräte (Set-Top-Boxen), programmierbare Unterhaltungselektronik, Netzwerk-PCs, Minicomputersysteme, Mainframe-Computersysteme, Supercomputer sowie verteilte Cloud-Computing-Umgebungen, die beliebige der vorstehenden Systeme oder Einheiten enthalten, und dergleichen gehören.
-
Das Computersystem kann in dem allgemeinen Kontext von durch ein Computersystem ausführbaren Anweisungen, wie beispielsweise Programmmodulen, die von einem Computersystem ausgeführt werden, beschrieben werden. Im Allgemeinen können Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen und so weiter umfassen, die bestimmte Aufgaben durchführen oder bestimmte abstrakte Datentypen ausführen. Das Computersystem kann in verteilten Cloud-Computing-Umgebungen in die Praxis umgesetzt werden, in denen Aufgaben von fernen Verarbeitungseinheiten durchgeführt werden, die durch ein Übertragungsnetzwerk miteinander verbunden sind. In einer verteilten Cloud-Computing-Umgebung können sich Programmmodule sowohl in lokalen als auch in fernen Speichermedien eines Computersystems, darunter Hauptspeichereinheiten, befinden.
-
Zu den Komponenten eines Computersystems können, ohne darauf beschränkt zu sein, ein oder mehrere Prozessoren oder Verarbeitungseinheiten 12, ein Systemspeicher 16 und ein Bus 14 gehören, der verschiedene Systemkomponenten verbindet, darunter den Systemspeicher 16 mit dem Prozessor 12. Der Prozessor 12 kann ein Modul 30 (z.B. das Modul 30 zur Erkennung von verdächtigen Aktivitäten) enthalten, das die hierin beschriebenen Verfahren durchführt. Das Modul 30 kann in die integrierten Schaltungen des Prozessors 12 programmiert oder aus dem Speicher 16, der Speichereinheit 18 oder dem Netzwerk 24 oder Kombinationen daraus geladen werden.
-
Der Bus 14 kann eine oder mehrere von beliebigen Busstrukturen von mehreren Arten von Busstrukturen darstellen, darunter einen Speicherbus oder einen Speichercontroller, einen peripheren Bus, einen Accelerated Graphics Port und einen Prozessor- oder lokalen Bus, der beliebige einer Vielfalt an Busarchitekturen verwendet. Beispielhaft, und nicht als Einschränkung, gehören zu solchen Architekturen der Bus „Industry Standard Architecture (ISA)“, der Bus „Micro Channel Architecture (MCA)“, der Bus „Enhanced ISA (EISA)“, der lokale Bus „Video Electronics Standards Association (VESA)“ und der Bus „Peripheral Component Interconnects (PCI)“.
-
Das Computersystem kann eine Vielfalt an durch ein Computersystem lesbaren Datenträgern enthalten. Ein solcher Datenträger kann ein beliebiger verfügbarer Datenträger sein, auf den ein Computersystem zugreifen kann, und er kann sowohl einen flüchtigen und nicht flüchtigen als auch einen austauschbaren und nicht austauschbaren Datenträger umfassen.
-
Zum Systemspeicher 16 können durch ein Computersystem lesbare Datenträger in Form von flüchtigem Speicher, wie beispielsweise ein Direktzugriffsspeicher (RAM) und/oder ein Cache oder andere, gehören. Das Computersystem kann des Weiteren weitere auswechselbare/nicht auswechselbare, flüchtige/nicht flüchtige Speichermedien eines Computersystems enthalten. Lediglich als Beispiel kann das Speichersystem 18 für das Lesen von und das Schreiben auf einen nicht auswechselbaren, nicht flüchtigen Magnetdatenträger (z.B. ein „Festplattenlaufwerk“) bereitgestellt werden. Obgleich nicht gezeigt, können ein Magnetplattenlaufwerk für das Lesen von und das Schreiben auf eine austauschbare, nicht flüchtige Magnetplatte (z.B. eine „Diskette“) und ein optisches Plattenlaufwerk für das Lesen von oder das Schreiben auf eine austauschbare, nicht flüchtige optische Platte, wie beispielsweise ein CD-ROM, DVD-ROM oder andere optische Datenträger, bereitgestellt werden. In diesen Fällen kann jeder Datenträger über eine oder mehrere Datenträgerschnittstellen mit dem Bus 14 verbunden werden.
-
Das Computersystem kann auch mit einer oder mehreren externen Einheiten 26 wie beispielsweise einer Tastatur, einer Zeigereinheit, einem Bildschirm 28 usw.; mit einer oder mehreren Einheiten, die einem Benutzer den Dialogverkehr mit dem Computersystem ermöglichen; und/oder beliebigen Einheiten (z.B. Netzkarte, Modem usw.), die dem Computersystem den Datenaustausch mit einer oder mehreren anderen Datenverarbeitungseinheiten ermöglichen, Daten austauschen. Ein solcher Datenaustausch kann über Eingabe-/Ausgabe-(E/A-)Schnittstellen 20 erfolgen.
-
Dennoch kann das Computersystem mit einem oder mehreren Netzwerken 24 wie beispielsweise einem lokalen Netz (LAN), einem allgemeinen Weitverkehrsnetz (WAN) und/oder einem öffentlichen Netz (z.B. dem Internet) über den Netzwerkadapter 22 Daten austauschen. Wie abgebildet ist, tauscht der Netzwerkadapter 22 mit den anderen Komponenten des Computersystems über den Bus 14 Daten aus. Es sollte klar sein, dass auch andere Hardware- und/oder Software-Komponenten in Verbindung mit dem Computersystem verwendet werden könnten, obgleich diese nicht gezeigt sind. Zu Beispielen gehören, ohne darauf beschränkt zu sein: Mikrocode, Einheitentreiber, redundante Verarbeitungseinheiten, externe Anordnungen von Festplattenlaufwerken, RAID-Systeme, Bandlaufwerke und Speichersysteme zur Datenarchivierung usw.
-
Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder -medien) mit durch einen Computer lesbaren Programmanweisungen darauf umfassen, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
-
Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch ein System zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch kodierte Einheit wie zum Beispiel Lochkarten oder gehobene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. durch ein Glasfaserkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
-
Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
-
Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, im Feld programmierbare Gatter-Anordnungen (FPGA, field-programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
-
Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern bzw. Schaubildern mittels durch einen Computer lesbare Programmanweisungen ausgeführt werden können.
-
Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Informationsverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Informationsverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Informationsverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder bzw. Schaubilder angegebenen Funktion/Schritts umsetzen.
-
Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Informationsverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte umsetzen.
-
Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder bzw. Schaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
-
Die hierin verwendete Terminologie dient lediglich dazu, bestimmte Ausführungsformen zu beschreiben, und sollte nicht als Einschränkung der Erfindung verstanden werden. In der Verwendung hierin sollen die Singular-Formen „ein“, „eine“ und „der“, „die“, „das“ auch die Pluralformen einschließen, sofern der Kontext nicht eindeutig etwas anderes angibt. Es wird des Weiteren darauf hingewiesen, dass die Begriffe „aufweist“ und/oder „aufweisend“, wenn sie in dieser Beschreibung verwendet werden, das Vorhandensein von angegebenen Merkmalen, ganzen Zahlen, Schritten, Operationen, Elementen und/oder Komponenten bezeichnen, das Vorhandensein oder das Hinzufügen von einem oder mehreren anderen/weiteren Merkmalen, ganzen Zahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen davon jedoch nicht ausschließen.
-
5 stellt eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung dar. Es sollte darauf hingewiesen werden, dass das Umsetzen der hierin angeführten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist, obgleich diese Offenbarung eine ausführliche Beschreibung von Cloud-Computing enthält. Stattdessen können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jeder beliebigen weiteren Art von jetzt bekannter oder später erfundener Datenverarbeitungsumgebung umgesetzt werden.
-
Cloud-Computing ist ein Servicebereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Hauptspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Service schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften enthalten, mindestens drei Dienstmodelle und mindestens vier Implementierungsmodelle.
-
Bei den Eigenschaften handelt es sich um die folgenden:
- On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicher sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter der Dienste erforderlich ist.
-
Broad Network Access: Es sind Funktionen über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, welche die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
-
Resource-Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
-
Rapid Elasticity: Funktionen können für eine schnelle horizontale Skalierung (scale out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
-
Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Der Ressourcen-Verbrauch kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz geschaffen wird.
-
Bei den Dienstmodellen handelt es sich um die folgenden:
- Software as a Service (SaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende E-Mail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten benutzerspezifischen Anwendungskonfigurationseinstellungen.
-
Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen des Application Hosting Environment.
-
Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Funktion besteht darin, das Verarbeiten, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
-
Bei den Einsatzmodellen handelt es sich um die folgenden:
- Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
- Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Angelegenheiten hat (z.B. Mission, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und kann in den eigenen Räumen oder fremden Räumen stehen.
- Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und sie gehört einer Cloud-Dienste verkaufenden Organisation.
- Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Benutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die Daten- und Anwendungsportierbarkeit ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
-
Eine Cloud-Computing-Umgebung ist dienstorientiert mit Fokus auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität. Im Herzen von Cloud-Computing liegt eine Infrastruktur, die ein Netzwerk aus zusammengeschalteten Knoten aufweist.
-
Unter Bezugnahme auf 5 ist eine veranschaulichende Cloud-Computing-Umgebung 50 dargestellt. Wie gezeigt ist, enthält die Cloud-Computing-Umgebung 50 einen oder mehrere Cloud-Computing-Knoten 10, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie zum Beispiel der elektronische Assistent (PDA, personal digital assistant) oder das Mobiltelefon 54A, der Desktop-Computer 54B, der Laptop-Computer 54C und/oder das Automobil-Computer-System 54N Daten austauschen können. Die Knoten 10 können miteinander Daten austauschen. Sie können physisch oder virtuell in ein oder mehrere Netzwerke wie private, Benutzergemeinschafts-, öffentliche oder hybride Clouds gruppiert werden (nicht gezeigt), wie vorstehend beschrieben wurde, oder in eine Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 50, Infrastruktur, Plattformen und/oder Software als Dienst anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sei darauf hingewiesen, dass die Arten von in 5 gezeigten Datenverarbeitungseinheiten 54A bis N lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 10 und die Cloud-Computing-Umgebung 50 über eine beliebige Art Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
-
6 stellt Ebenen eines Abstraktionsmodells gemäß einer Ausführungsform der vorliegenden Erfindung dar. Unter Bezugnahme auf 6 wird ein Satz von funktionalen Abstraktionsschichten gezeigt, die durch die Cloud-Computing-Umgebung 50 (5) bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 6 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie abgebildet ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
-
Eine Hardware- und Software-Schicht 60 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: Mainframe-Computer 61; auf der RISC-(Reduced-Instruction-Set-Computer-)Architektur beruhende Server 62; Server 63; Blade-Server 64; Speichereinheiten 65; und Netzwerke sowie Netzwerkkomponenten 66. In einigen Ausführungsformen umfassen Software-Komponenten eine Netzwerk-Anwendungsserver-Software 67 und Datenbank-Software 68.
-
Die Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 71; virtueller Speicher 72; virtuelle Netzwerke 73, darunter virtuelle private Netzwerke; virtuelle Anwendungen und Betriebssysteme 74; und virtuelle Clients 75.
-
In einem Beispiel kann die Verwaltungsschicht 80 die nachstehend beschriebenen Funktionen bereitstellen. Eine Ressourcen-Bereitstellung 81 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung verwendet werden. Ein Messen und eine Preisfindung 82 stellen die Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Anwendungs-Software-Lizenzen aufweisen. Die Sicherheit stellt die Identitätsüberprüfung für Cloud-Nutzer und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 83 stellt Nutzern und Systemadministratoren den Zugang zu der Cloud-Computing-Umgebung bereit. Eine Verwaltung des Dienstumfangs 84 stellt die Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die benötigten Dienstziele erreicht werden. Ein Planen und Erfüllen von Vereinbarungen zum Dienstumfang (SLA, Service Level Agreement) 85 stellt die Anordnung vorab und die Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einem SLA bereit.
-
Eine Arbeitslastschicht 90 stellt Beispiele für die Funktionalität bereit, für welche die Cloud-Computing-Umgebung verwendet werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, gehören: Abbildung und Navigation 91; Software-Entwicklung und Lebenszyklusverwaltung 92; Bereitstellung von Ausbildung in virtuellen Klassenzimmern 93; Datenanalytikverarbeitung 94; Transaktionsverarbeitung 95; und Erkennung von verdächtigen Aktivitäten 96.
-
Die entsprechenden Strukturen, Materialien, Vorgänge und Äquivalente von allen Mitteln oder Schritt-plus-Funktion-Elementen (step plus function elements), sofern vorhanden, in den nachstehenden Ansprüchen sollen jedwede Struktur, jedwedes Material oder jedweden Vorgang zur Durchführung der Funktion in Kombination mit anderen beanspruchten Elementen, die im Einzelnen beansprucht werden, mit einschließen. Die Beschreibung der vorliegenden Erfindung erfolgte zum Zweck der Veranschaulichung und Erläuterung, soll aber nicht erschöpfend oder auf die Erfindung in der offenbarten Form beschränkt sein. Viele Änderungen und Varianten sind für den Fachmann erkennbar, ohne vom Umfang und Wesen der Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um die Grundgedanken der Erfindung und die praktische Anwendung bestmöglich zu erklären und um anderen Fachleuten das Verständnis der Erfindung hinsichtlich verschiedener Ausführungsformen mit verschiedenen Änderungen, wie sie für die jeweilige vorgesehene Verwendung geeignet sind, zu ermöglichen.