-
HINTERGRUND
-
Der Einsatz von Computersystemen und computerbezogenen Technologien nimmt weiterhin in rasantem Tempo zu. Die expansive Nutzung von Computersystemen hat die Fortschritte, die bei computerbezogenen Technologien gemacht worden sind, beeinflusst. Computersysteme sind zunehmend zu einem integralen Bestandteil der Geschäftswelt und der Aktivitäten von einzelnen Verbrauchern geworden. Computersysteme können eingesetzt werden, um verschiedene geschäftliche, industrielle und akademische Unterfangen durchzuführen.
-
Die weit verbreitete Verwendung von Computern und mobilen Geräten hat ein vermehrtes Auftreten von böswilligen Verhalten bewirkt, einschließlich Datendiebstahl, das Einbetten von Schadprogrammen (oder Malware) und Viren, und dergleichen. Schadprogramme können Software (z. B. Prozesse, ausführbare Dateien, Datenobjekte usw.) umfassen, die darauf abzielt, Computersysteme zu beschädigen oder zu blockieren (oder zu deaktivieren). Sicherheitsverfahren zur Erkennung von Schadprogrammen können vorteilhaft sein, um zu verhindern, dass Schadprogramme diese Systeme oder Geräte beschädigen.
-
ZUSAMMENFASSUNG
-
Die beschriebenen Techniken beziehen sich auf verbesserte Verfahren, Systeme, Computereinrichtungen und Systeme, die Fingerabdrücke des Verhaltens von Anwendungen (oder anwendungsverhaltensbezogene Fingerabdrücke) unterstützen, um Daten und die Geräte gegen bösartige Programme zu schützen, wie etwa Erpressungstrojaner (ransomware), Viren, Computerwürmer, Trojaner, Rootkits, Grayware, Spähprogramme (spyware), Tasten-Protokollierer (keylogger), neben anderen. Beispielsweise kann eine Computereinrichtung Fingerabdrücke des Verhaltens von Anwendungen (z.B. ein Satz von Folgen (oder Sequenzen) von Bits) erstellen, aggregieren (oder anhäufen), erzwingen oder eine beliebige Kombination davon. Die Computereinrichtung (oder die Computereinrichtung) kann einen partiellen (oder teilweisen) Fingerabdruck erzeugen auf der Grundlage eines Computerverhaltens (z.B. ein Prozess, ein Merkmal, eine Aktion usw.) von einer Anwendung oder einem Prozess. Die Computereinrichtung kann einen digitalen Fingerabdruck für die Anwendung anhand von einem oder mehreren partiellen Fingerabdrücken erzeugen. In einigen Beispielen kann die Computereinrichtung oder ein Netzwerkgerät einen oder mehrere Fingerabdrücke, die einer Anwendung zugeordnet sind, in einem breiteren digitalen Fingerabdruck aggregieren (oder ansammeln) (z. B. ein digitaler Fingerabdruck, der ein Computerverhalten enthält, das als normal angesehen wird). In einigen Beispielen kann die Computereinrichtung oder eine andere Computereinrichtung ein überwachtes Computerverhalten mit dem breiteren Fingerabdruck vergleichen und bestimmen, ob das Computerverhalten ein normales oder ein anormales Computerverhalten ist. Beispielsweise kann die Computereinrichtung bestimmen, dass es sich bei dem Computerverhalten um ein anormales Computerverhalten handelt, und kann eine Sicherheitsaktion ausführen, um die Computereinrichtung vor dem anormalen Computerverhalten. der Anwendung, oder beidem zu schützen. Vorteile der vorliegenden Offenbarung können eine robuste, effiziente und automatische Bedrohungserkennung beinhalten, indem sie die Erzeugung, den Zugriff und die Nutzung von anwendungsverhaltensbezogenen Fingerabdrücken ermöglicht.
-
Es wird ein Verfahren zum Schützen gegen anormales Computerverhalten beschrieben. Das Verfahren kann von einer oder mehreren Computereinrichtungen, die mindestens einen Prozessor enthalten, ausgeführt werden. Das Verfahren kann folgendes aufweisen: Überwachen eines Computerprozesses, der in Bezug zu einer Anwendung steht, die auf einer Computereinrichtung von der einen oder den mehreren Computereinrichtungen läuft, Analysieren einer Datenbank, die einen Satz von digitalen Fingerabdrücken enthält, wobei ein digitaler Fingerabdruck des Satzes von digitalen Fingerabdrücken in Bezug zu der Anwendung steht, wobei der digitale Fingerabdruck einen Hinweis enthält auf einen Satz von Computerprozessen, die in Bezug zu der Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind, auf der Grundlage des Analysierens (z.B. Computerprozess, der sich auf die Anwendung bezieht, ein anormaler Computerprozess ist, und auf der Grundlage des Bestimmens, Ausführen einer Sicherheitsaktion (oder Sicherheitsmaßnahme) auf der Computereinrichtung, um die Computereinrichtung gegen den anormalen Computerprozess zu schützen.
-
Es wird ein System zum Schützen gegen anormales Computerverhalten von einer oder mehreren Computereinrichtungen beschrieben. Das System kann einen Prozessor, Datenspeicher in elektronischer Kommunikation mit dem Prozessor und in dem Datenspeicher gespeicherte Befehle aufweisen. Die Befehle können von dem Prozessor ausführbar sein, um das System zu folgendem zu veranlassen: Überwachen einer Computerprozesses, der in Bezug zu der Anwendung steht, die auf einer Computereinrichtung von der einen oder den mehreren Computereinrichtungen läuft, Analysieren einer Datenbank, die einen Satz von digitalen Fingerabdrücken enthält, wobei ein digitaler Fingerabdruck des Satzes von digitalen Fingerabdrücken in Bezug zu der Anwendung steht, wobei der digitale Fingerabdruck einen Hinweis enthält auf einen Satz von Computerprozessen, die in Bezug zu der Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind, auf der Grundlage des digitalen Fingerabdrucks der Anwendung, Bestimmen, dass der Computerprozess, der sich auf die Anwendung bezieht, ein anormaler Computerprozess ist, und auf der Grundlage des Bestimmens, Ausführen einer Sicherheitsaktion (oder Sicherheitsmaßnahme) auf der Computereinrichtung, um die Computereinrichtung gegen den anormalen Computerprozess zu schützen.
-
Es wird ein weiteres System zum Schützen gegen anormale Computerverhalten beschrieben. Das System kann Mittel aufweisen zu folgendem: zum Überwachen eines Computerprozesses, der in Bezug zu der Anwendung steht, die auf einer Computereinrichtung von einer oder mehreren der Computereinrichtungen läuft, zum Analysieren einer Datenbank, die einen Satzes von digitalen Fingerabdrücken enthält, wobei ein digitaler Fingerabdruck von dem Satzes von digitalen Fingerabdrücken in Bezug zu der Anwendung steht, wobei der digitale Fingerabdruck einen Hinweis enthält auf einen Satz von Computerprozessen, die in Bezug zu der Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind, zum Bestimmen, auf der Grundlage des digitalen Fingerabdrucks der Anwendung, dass der Computerprozess, der sich auf die Anwendung bezieht, ein anormaler Computerprozess ist, und zum Ausführen, auf der Grundlage des Bestimmens, einer Sicherheitsaktion (oder Sicherheitsmaßnahme) auf der Computereinrichtung, um die Computereinrichtung gegen den anormalen Computerprozess zu schützen.
-
Es wird ein nichtflüchtiges computerlesbares Medium beschrieben, das Code speichert zum Schützen von einer oder mehreren Computereinrichtungen gegen anormales Computerverhalten. Der Code kann Anweisungen enthalten, die von einem Prozessor ausführbar sind, um: einen Computerprozess zu überwachen, der in Bezug zu einer Anwendung steht, die auf einer Computereinrichtung von der einen oder den mehreren Computereinrichtungen läuft, eine Datenbank zu analysieren, die einen Satz von digitalen Fingerabdrücke enthält, wobei ein digitaler Fingerabdruck des Satzes von digitalen Fingerabdrücken in Bezug zu der Anwendung steht, wobei der digitale Fingerabdruck einen Hinweis enthält auf einen Satz von Computerprozessen, die in Bezug zu der Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind, auf der Grundlage des digitalen Fingerabdrucks der Anwendung, zu bestimmen, dass der Computerprozess, der sich auf die Anwendung bezieht, ein anormaler Computerprozess ist, und auf der Grundlage des Bestimmens, eine Sicherheitsaktion auf der Computereinrichtung durchzuführen, um die Computereinrichtung gegen den anormalen Computerprozess zu schützen.
-
In einigen Beispielen des Verfahrens, der Systeme und des nichtflüchtigen, computerlesbaren Mediums, die hierin beschriebenen sind, enthält der Hinweis eine Bitfolge (oder Bitsequenz), wobei ein oder mehrere Bits der Bitfolge einem Computerprozess von dem Satz von Computerprozessen entsprechen. In einigen Beispielen des Verfahrens, der Geräte und des nichtflüchtigen computerlesbaren Mediums, die hierin beschrieben sind, enthält die Bitfolge einen partiellen digitalen Fingerabdruck in Bezug auf die Anwendung.
-
In einigen Beispielen des Verfahrens, der System und des nichtflüchtigen, computerlesbaren Mediums, die hierin beschrieben sind, enthält der digitale Fingerabdruck einen zusätzlichen Hinweis auf einen Satz von zusätzlichen Computerprozessen, die dem Satz von Computerprozessen zugeordnet sind, wobei der Satz von zusätzlichen Computerprozessen als zusätzliche normale Computerprozesse klassifiziert sind, die dem Satz von Computerprozessen zugeordnet sind.
-
Einige Beispiele der Verfahren, der Systeme und des nichtflüchtigen, computerlesbaren Mediums, die hierin beschrieben sind, können darüber hinaus Operationen, Merkmale, Mittel oder Anweisungen enthalten zum automatischen Erzeugen der Datenbank, die die digitalen Fingerabdrücke enthält.
-
In einigen Beispielen des Verfahrens, der System und des nichtflüchtigen, computerlesbaren Mediums, die hierin beschrieben sind, kann das automatische Erzeugen der Datenbank, die den Satz von digitalen Fingerabdrücken enthält, Operationen, Merkmale, Mittel oder Anweisungen enthalten zum Überwachen eines Satzes von Computerprozess-Verhaltensweisen, die dem Satz von Computerprozessen zugeordnet sind, Erzeugen einer Bitfolge, die dem Satz von Computerprozessen entspricht, auf der Grundlage des Satzes von Computerprozess-Verhaltensweisen, wobei ein oder mehrere Bits der Bitfolge einem Computerprozess von dem Satz von Computerprozessen entsprechen, und Empfangen, von einer oder mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen, von einer oder mehreren zusätzlichen Bitfolgen, die dem Satz von Computerprozessen entsprechen, und zwar auf der Grundlage von einem zusätzlichen Satz von Computerprozess-Verhaltensweisen.
-
In einigen Beispielen des Verfahrens, der System und des nichtflüchtigen, computerlesbaren Mediums, die hierin beschrieben sind, kann das Empfangen, von der einen oder den mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen, von der einen oder den mehreren zusätzlichen Bitfolgen, die dem Satz von Computerprozessen entsprechen, Operationen, Merkmale, Mittel oder Anweisungen enthalten zum Überwachen, durch die eine oder die mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen, des zusätzlichen Satzes von Computerprozess-Verhalten, der dem Satz von Computerprozessen zugeordnet ist, und Erzeugen, durch die eine oder die mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen, der einen oder der mehreren zusätzlichen Bitfolgen, die dem Satz von Computerprozessen entsprechen, und zwar auf der Grundlage des zusätzlichen Satzes von Computerprozess-Verhalten.
-
In einigen Beispielen des Verfahrens, der Systeme und des nichtflüchtigen, computerlesbaren Mediums, die hierin beschrieben sind, enthalten die eine oder die mehreren zusätzlichen Bitfolgen, die von der einen oder den mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen erzeugt werden, einen oder mehrere zusätzliche partielle digitale Fingerabdrücke, die in Bezug zu der Anwendung stehen.
-
Einige Beispiele für das Verfahren, die Systeme und das nichtflüchtige, computerlesbare Medium, die hierin beschrieben sind, können ferner Operationen, Merkmale, Mittel oder Anweisungen enthalten zum Durchführen einer Analyse auf der Bitfolge, die dem Satz von Computerprozess-Verhaltensweisen entspricht, der von der Computereinrichtung erzeugt wird, und auf der einen oder den mehreren zusätzlichen Bitfolgen, die dem Satz von Computerprozess-Verhaltensweisen entsprechen, die von der einen oder den mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen erzeugt werden, wobei die Analyse folgendes aufweist: Bestimmen, dass der Satz von Computerprozessen als die normalen Computerprozesse für die Anwendung klassifiziert sind, auf der Grundlage einer Korrelation zwischen der Bitfolge, die dem Satz von Computerprozess-Verhalten entspricht, und die durch die Computereinrichtung erzeugt wird, und der einen oder den mehreren zusätzlichen Bitfolgen, die dem Satz von Computerprozess-Verhalten entsprechen und die durch die eine oder die mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen erzeugt werden, und Erzeugen des digitalen Fingerabdrucks, der in Bezug zu der Anwendung steht, auf der Grundlage der Korrelation.
-
In einigen Beispielen des Verfahrens, der System und des nichtflüchtigen, computerlesbaren Mediums, die hierin beschrieben sind, kann das Erzeugen des digitalen Fingerabdrucks, der in Bezug zu der Anwendung steht, ferner Operationen, Merkmale, Mittel oder Anweisungen enthalten zum Aggregieren, auf der Grundlage der Korrelation, von übereinstimmenden Computerprozess-Verhaltensweisen, die dem Satz von Computerprozessen zugeordnet sind, und zum Verwerfen, auf der Grundlage der Korrelation, von nicht übereinstimmenden Computerprozess-Verhaltensweisen, die dem Satz von Computerprozessen zu geordnet sind.
-
In einigen Beispielen des Verfahrens, der Geräte und des nichtflüchtigen computerlesbaren Mediums, die hierin beschrieben sind, kann das Ausführen der Sicherheitsaktion Operationen, Merkmale, Mittel oder Anweisungen enthalten zum Übertragen von einem Bericht mit Informationen über den anormalen Computerprozess, der in Bezug zu der Computereinrichtung steht, an die Computereinrichtung.
-
Einige Beispiele des Verfahrens, des Systems und des nichtflüchtige, computerlesbare, Mediums, die hierin beschrieben sind, können ferner Operationen, Merkmale, Mittel oder Anweisungen enthalten zum Einbeziehen (zum Aufnehmen) von einer wählbaren Option, um eine zusätzliche Sicherheitsaktion auszuführen, die mindestens eines der folgenden umfasst: Verhindern von Zugriff auf ein Netzwerkgerät für die Computereinrichtung, Verhindern von Zugriff auf eines oder mehrere Merkmale der Computereinrichtung oder Ausführen einer Schadprogramm-Suche (oder Scans) auf der Computereinrichtung, oder eine beliebige Kombination davon.
-
Einige Beispiele für das Verfahren, die Systeme und das nichtflüchtige computerlesbare Medium, die hierin beschrieben sind, können ferner Operationen, Merkmale, Mittel oder Anweisungen enthalten zum Ausführen der Sicherheitsaktion, die mindestens eines der folgenden umfasst: unter Quarantäne Stellen von der Anwendung auf der Computereinrichtung, Verhindern von Zugriff auf ein Netzwerkgerät für die Computereinrichtung, Verhindern von Zugriff auf ein oder mehrere Merkmale der Computereinrichtung, Ausführen einer Schadprogramm-Suche auf der Computereinrichtung, oder eine beliebige Kombination davon.
-
In einigen Beispielen für das Verfahren, die Systeme und das nichtflüchtige, computerlesbare Medium, die hierin beschrieben sind, kann das Ausführen der Sicherheitsaktion Operationen, Merkmale, Mittel oder Anweisungen enthalten zum Übertragen an eine Computereinrichtung, die einem Informationssicherheits-Nutzer zugeordnet sein kann, von einem Bericht mit Informationen über den anormalen Computerprozess, der in Bezug zu der Anwendung steht, und eine wählbare Option um eine zusätzliche Sicherheitsaktion auszuführen, die mindestens eines der folgenden aufweist: Verhindern von Zugriff auf ein Netzwerkgerät für die Computereinrichtung, Verhindern von Zugriff auf eines oder mehrere Merkmale der Computereinrichtung oder Ausführen einer Schadprogramm-Suche auf der Computereinrichtung, oder eine beliebige Kombination davon.
-
Figurenliste
-
- 1 veranschaulicht ein Beispiel für eine Umgebung, die Fingerabdrücke von Verhaltensweisen von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung.
- 2 veranschaulicht ein Beispiel für einen Prozessablauf, der Fingerabdrücke von Verhaltensweisen von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung.
- 3 und 4 zeigen Blockdiagramme von Computereinrichtungen, die Fingerabdrücke von Verhaltensweisen von Anwendungen unterstützen, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung.
- 5 zeigt ein Blockdiagramm eines Fingerabdruck-Managers, der Fingerabdrücke von Verhaltensweisen von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung.
- 6 zeigt ein Diagramm eines Systems mit einer Computereinrichtung, die Fingerabdrücke von Verhaltensweisen von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung.
- 7 und 8 zeigen Ablaufdiagramme, die Verfahren veranschaulichen, die Fingerabdrücke von Verhaltensweisen von Anwendungen unterstützen, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung.
- 9 zeigt ein Blockdiagramm eines Computersystems, das Fingerabdrücke von Verhaltensweisen von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung.
- 10 zeigt ein Blockdiagramm einer beispielhaften Netzwerkarchitektur, in der Client-Systeme und Server an ein Netzwerk gekoppelt werden können, um die Fingerabdrücke von Verhaltensweisen von Anwendungen zu unterstützen, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung.
-
Während die hierin beschriebenen Fälle verschiedenen Modifikationen und alternativen Ausführungen unterworfen sind, sind spezifische Fälle in den Zeichnungen beispielhaft gezeigt und werden hierin ausführlich beschrieben. Jedoch sind die hierin beispielhaft beschriebenen Fälle nicht dazu gedacht, auf die offenbarten, bestimmten Ausführungen beschränkt zu sein. Vielmehr umfasst die sofortige Offenbarung alle Modifikationen, Äquivalente und Alternativen, die in den Schutzbereich der beigefügten Patentansprüche fallen.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Die beschriebenen Techniken beziehen sich auf verbesserte Verfahren, Systeme oder Einrichtungen, die die Erkennung von Sicherheitsbedrohungen unterstützen. Einige der vorliegenden Techniken können effektiv sein beim Verhindern von Sicherheitsbedrohungen, einschließlich Datendiebstahl, dem Einbetten von Schadprogrammen (oder Malware) und Viren und dergleichen auf verschiedenen Nutzereinrichtungen. Beispielsweise können die hierin beschriebenen Verfahren, Systeme oder Einrichtungen das Erstellen (oder Aufbauen), das Aggregieren (oder Ansammeln) oder das Erzwingen (oder Durchsetzen) von Fingerabdrücken von Verhaltensweisen von Anwendungen (oder anwendungsverhaltensbezogene Fingerabdrücke) unterstützen. Diese Fingerabdrücke können das Erkennen von anormalen Computerverhaltensweisen (z. B. von einer Anwendung, die auf einer Computereinrichtung ausgeführt wird) ermöglichen. Dieses Erkennen kann das Erkennen und Verhindern des anormalen Computerverhaltens ermöglichen, z. B. die Performanz (oder Durchführung) einer Aktion zum Schutz eines Systems oder einer Einrichtung vor dem anormalen Computerverhalten.
-
Eine Computereinrichtung (oder eine Computereinrichtung, oder ein EDV-Gerät) kann beispielsweise eine Anwendung, wie etwa ein Softwareprogramm, ein Anwendungsprogramm oder einen anderen Computerprozess ablaufen lassen. Die Computereinrichtung und/oder eine entfernte Computereinrichtung (remote computing device) kann die Anwendung auf Verhaltensweisen des Computers (oder Computerverhalten) überwachen (z.B. in Echtzeit überwachen). In einigen Beispielen kann das Computerverhalten Computerprozesse, Computeroperationen, Computeraktionen, Computerdaten oder Computerfunktionen, die in Bezug zu einer Anwendung stehen, sein. Beispielsweise kann eine Computereinrichtung eine Anwendung ausführen und die Anwendung auf Computerprozesse überwachen, wie etwa das Laden, Speichern oder Zugreifen auf Dateien (z.B. Zugreifen auf eine oder mehrere Dynamic Link Library Dateien (.dll-Dateien), eine Nutzerschnittstelle (UI, user interface), die der Anwendung zugeordnet ist, Aktionen, wie etwa das Laden oder Speichern von Daten in eine Zwischenablage, Zugreifen auf ein Netzwerk, oder beliebige andere Computerprozesse der Anwendung.
-
In einigen Beispielen können die vorliegenden Techniken das Erstellen von einem oder mehreren Fingerabdrücken des Anwendungsverhaltens auf der Grundlage des Überwachens umfassen. Beispielsweise können die vorliegenden Techniken das Nachverfolgen des Computerverhaltens einer Anwendung und Erzeugen eines Fingerabdrucks (auch als digitaler Fingerabdruck bezeichnet), der dem nachverfolgten Computerverhalten zugeordnet ist, umfassen. In einigen Beispielen kann der digitale Fingerabdruck aus Daten bestehen, die dem nachverfolgten Computerverhalten einer Anwendung zugeordnet sind. Beispielsweise kann der digitale Fingerabdruck eine Bitfolge enthalten, die die Computerverhaltensweisen (z.B. Computerprozesse, Computeraktionen und dergleichen) beschreibt, die die Anwendung oder der Computerprozess ausführt oder von denen erwartet wird, dass sie/er es ausführt. In einigen Beispielen kann die Computereinrichtung einen partiellen digitalen Fingerabdruck erzeugen, der ein Computerverhalten oder einen Computerprozess der Anwendung anzeigt. Beispielsweise kann der partielle digitale Fingerabdruck mindestens ein Bit sein, das ein Computerverhalten anzeigt oder einem Computerverhalten zugeordnet ist, und die Computereinrichtung kann das mindestens eine Bit in die Bitfolge (z.B. den digitalen Fingerabdruck, der den Computerverhaltensweisen der Anwendung zugeordnet ist) aufnehmen. Die vorliegenden Techniken können eine Kombination von mehrerer partiellen digitalen Fingerabdrücken, um einen digitalen Fingerabdruck (z.B. die Folge des Bits) der Anwendung zu erzeugen, umfassen.
-
In einigen Beispielen können die vorliegenden Techniken das Aggregieren von einem oder mehreren Fingerabdrücken des Anwendungsverhaltens umfassen. Beispielsweise kann eine Computereinrichtung (z.B. lokale Computereinrichtung, entfernte Computereinrichtung, Backend-Server) einen oder mehrere digitale Fingerabdrücke des Anwendungsverhaltens von einer oder mehreren anderen Computereinrichtungen empfangen. Die vorliegenden Techniken können das Aggregieren der empfangenen digitalen Fingerabdrücke beinhalten und können einen aggregierten digitalen Fingerabdruck eines erwarteten Computerverhaltens auf der Grundlage der aggregierten digitalen Fingerabdrücke erzeugen. Beispielsweise kann der aggregierte digitale Fingerabdruck eine Folge von Bits enthalten, die dem normalen oder erwarteten Computerverhalten der Anwendung zugeordnet ist. Die vorliegenden Techniken können ein Bestimmen umfassen, ob ein Computerverhalten normal oder erwartet ist, auf der Grundlage der aggregierten digitalen Fingerabdrücke.
-
In einigen Beispielen können die vorliegenden Techniken ein Ausführen eines Algorithmus umfassen, um die häufigsten Computerverhaltensweisen (z.B. Bits, die dem Computerverhalten zugeordnet sind) aus den aggregierten digitalen Fingerabdrücken zu extrahieren. Die vorliegenden Techniken können ein Erzeugen des aggregierten digitalen Fingerabdrucks (z. B. eine Folge von Bits, die den häufigsten Computerverhaltensweisen zugeordnet sind) auf der Grundlage des Algorithmus umfassen. In einigen Fällen kann ein digitaler Fingerabdruck eine oder mehrere bekannte oder erwartete Computerverhaltensweisen einer Anwendung beschreiben (z.B. normale Computerverhalten, anormale Computerverhalten, auf Schadprogramme hinweisendes (oder Malware-indikatives) Computerverhalten). In einigen Fällen kann ein erster digitaler Fingerabdruck eine oder mehrere Computerverhaltensweisen einer Anwendung beschreiben und ein zweiter digitaler Fingerabdruck kann eine oder mehrere andere Computerverhaltensweisen der Anwendung beschreiben. In einigen Fällen kann ein Computerverhalten als ein digitaler Fingerabdruck definiert sein (z. B. enthalten in einer Datenbank mit digitalen Fingerabdrücken), wenn das Computerverhalten einen Schwellenwert erfüllt (z. B. die gängigsten Computerverhalten). In einem Beispiel kann ein Computerverhalten als ein digitaler Fingerabdruck definiert werden, sobald das Computerverhalten auf einer bestimmten Anzahl von Computereinrichtungen auftretend oder mit einer bestimmten Häufigkeit auf einer bestimmten Anzahl von Computereinrichtungen auftretend beobachtet wird. Zusätzlich oder alternativ kann ein Computerverhalten als ein digitaler Fingerabdruck definiert werden, sobald das Computerverhalten eine bestimmte Anzahl von Malen oder mit einer bestimmten Häufigkeit auf einer bestimmten Computereinrichtung auftretend beobachtet wird.
-
In anderen Beispielen können die vorliegenden Techniken ein Erzeugen des aggregierten digitalen Fingerabdrucks auf andere Weise umfassen, beispielsweise durch manuelles Auswählen von des normalen/erwarteten Computerverhalten mit Verwendung von statistischer Analyse, um Ausreißer des Computerverhaltens aus den aggregierten digitalen Fingerabdrücken zu entfernen, oder andere Verfahren. In einigen Beispielen können die vorliegenden Techniken ein Erstellen von einer Datenbank der digitalen Fingerabdrücke umfassen. Beispielsweise können die vorliegenden Techniken ein Erstellen von einer Datenbank, die eine oder mehrere Anwendungen und zu jeder Anwendung deren eine oder mehreren zugehörigen, aggregierten, digitalen Fingerabdrücke umfassen. Die vorliegenden Techniken können ein Verfügbarmachen der Datenbank zur Nutzung (z.B. Abfragen) durch andere Computereinrichtungen umfassen und können Daten in der Datenbank an andere Computereinrichtungen übertragen (z.B. auf der Grundlage einer Anfrage von einer anderen Computereinrichtung, für Daten, die auf eine Anwendung und einen zugehörigen aggregierten digitalen Fingerabdruck hinweisen).
-
In einigen Beispielen können die vorliegenden Techniken ein Vergleichen eines Computerverhaltens einer Anwendung oder eines Computerprozesses mit einem zugehörigen digitalen anwendungsverhaltensbezogenen Fingerabdruck (z.B. einem aggregierten digitalen Fingerabdruck) umfassen. Beispielsweise kann eine Computereinrichtung das Computerverhalten (z.B. eine Computeraktion, einen Computerprozess, Computerdaten usw.) einer Anwendung, die auf der Computereinrichtung oder einer entfernten Computereinrichtung ausgeführt wird, überwachen und bestimmen, ob das Computerverhalten in einem Computerverhalten eines aggregierten digitalen Fingerabdrucks, der der Anwendung zugeordnet ist, enthalten ist oder mit diesem übereinstimmt. In einigen Beispielen kann die Computereinrichtung den aggregierten digitalen Fingerabdruck (z.B. die Bitfolge, die mit einem oder mehreren normalen/erwarteten Computerverhalten der Anwendung verbunden ist) nach einem Computerverhalten durchsuchen, das mit dem überwachten Computerverhalten (z.B. mindestens ein Bit, das dem Computerverhalten zugeordnet ist) übereinstimmt. Die Computereinrichtung kann auf der Grundlage der Analyse feststellen, dass das überwachte Computerverhalten ein normales Computerverhalten ist. In einigen anderen Beispielen kann die Computereinrichtung auf der Grundlage der Analyse feststellen, dass das überwachte Computerverhalten ein anormales Computerverhalten ist. In einigen Fällen kann die Computereinrichtung feststellen, dass das überwachte Computerverhalten unbekannt ist (z.B. das überwachte Computerverhalten wird nicht in dem aggregierten digitalen Fingerabdruck gefunden).
-
In einigen Beispielen kann die Computereinrichtung eine Sicherheitsaktion ausführen. In einem Beispiel kann die Computereinrichtung feststellen, dass ein überwachtes Computerverhalten ein anormales Computerverhalten ist. Die Computereinrichtung kann bestimmen, das anormale Computerverhalten zu verhindern oder zu blockieren. In einem Beispiel kann die Computereinrichtung detektieren, dass ein überwachtes Computerverhalten ein unbekanntes Computerverhalten ist. In einigen Fällen kann die Computereinrichtung auf der Grundlage des Detektierens des unbekannten Computerverhaltens eine Benachrichtigung oder eine Warnung erzeugen. Beispielsweise kann die Computereinrichtung eine Warnung auf einem Bildschirm anzeigen, der der Computereinrichtung zugeordnet ist, die das unbekannte Computerverhalten erzeugt. In einigen Fällen kann die Computereinrichtung eine Benachrichtigung an eine Computereinrichtung eines Informationssicherheits-Nutzers senden. In einigen Fällen kann die Benachrichtigung Informationen bezüglich der Anwendung und des unbekannten Computerverhaltens enthalten. Die in der Benachrichtigung enthaltenen Informationen können mindestens eines der folgenden umfassen: einen Namen der Anwendung, einen Namen der betroffenen Computereinrichtung, auf der die Anwendung ausgeführt wird, Benutzerkontoinformation, Computercode von der Anwendung oder dem Prozess der Anwendung, die dem unbekannten Computerverhalten zugeordnet ist, einen Screenshot des unbekannten Computerverhaltens, eine Bildschirmaufzeichnung, die Videoaufnahmen des unbekannten Computerverhaltens aufnimmt, Tastatureingabeinformationen, die dem unbekannten Computerverhalten zugeordnet sind, oder Mauseingabeinformationen, die dem unbekannten Computerverhalten zugeordnet sind, oder eine beliebige Kombination davon.
-
In einem Beispiel kann die Computereinrichtung eine Sicherheitsaktion als Antwort auf ein Detektieren des anormalen Computerverhaltens ausführen. In einigen Beispielen kann eine Sicherheitsaktion folgendes umfassen: Erzeugen, Übertragen oder Anzeigen eines Berichts, der Informationen in Bezug zu dem anormalen Computerverhalten angibt, unter Quarantäne Stellen der Anwendung oder des anormalen Computerverhaltens (z. B. Beenden von einem oder mehreren Computerprozessen der Anwendung), Verhindern von Zugriff der Anwendung auf ein Netzwerkgerät für die Computereinrichtung, Verhindern von Zugriff durch die Anwendung (oder auf die Anwendung), Verhindern von einem oder mehreren Merkmalen (oder Funktionen) der betroffenen Computereinrichtung oder eines Betriebssystems der betroffenen Computereinrichtung (z. B. Programme, Dateien, Speicher usw.), Ausführen einer Schadprogramm-Suche auf der Anwendung oder der betroffenen Computereinrichtung, oder eine beliebige Kombination davon. Beispielsweise können die vorliegenden Techniken ein Übermitteln eines Berichts mit einer wählbaren Option zum Ausführen von einer oder mehreren zusätzlichen Sicherheitsaktionen umfassen. Zusätzlich oder alternativ dazu können die vorliegenden Techniken ein Bestimmen beinhalten, eine Sicherheitsaktion vor dem Übermitteln eines Berichts auszuführen, oder kann eine Sicherheitsaktion ausführen, ohne einen Bericht zu übermitteln.
-
Bestimmte Aspekte der in dieser Offenbarung beschriebenen Gegenstände können umgesetzt werden, um einen oder mehrere der folgenden potenziellen Vorteile zu realisieren. Die beschriebenen Schemata für anwendungsverhaltensbezogene Fingerabdrücke können, neben anderen Vorteilen, Verbesserungen bei der Erkennung von Sicherheitsbedrohungen unterstützen. Unterstützte Schemata können Merkmale (oder Funktionen) für ein effizientes Erstellen, Aggregieren oder Erzwingen (oder Durchsetzen) von Fingerabdrücken umfassen. Die beschriebenen Techniken können auch ein zunehmendes Erkennen von anormalen Verhaltensweisen unterstützen, und kann in einigen Beispielen das Durchsetzen des anormalen Verhaltens fördern, z.B. das Ausführen einer Sicherheitsaktion um ein System oder eine Einrichtung vor dem anormalen Verhalten zu schützen, neben anderen Vorteilen.
-
Aspekte der Offenbarung werden zunächst im Zusammenhang mit einer Umgebung (z.B. einer Netzwerkarchitektur) beschrieben, die anwendungsverhaltensbezogene Fingerabdrücke unterstützt. Aspekte der Offenbarung werden weiter im Kontext eines Prozessablaufs dargestellt, der sich auf Aspekte für anwendungsverhaltensbezogene Fingerabdrücke bezieht. Aspekte der Offenbarung werden ferner veranschaulicht und beschrieben mit Verweis auf Schaubilder von Computereinrichtungen, Systemschaubilder und Ablaufdiagramme, die sich auf anwendungsverhaltensbezogene Fingerabdrücke beziehen.
-
1 veranschaulicht ein Beispiel für eine Umgebung 100, die Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Wie dargestellt, kann die Umgebung 100 eine Computereinrichtung 105-a, eine Computereinrichtung 105-b, eine Computereinrichtung 105-c, einen Server 120 und eine Datenbank 125 umfassen. Die hierin beschriebenen Techniken können auf einer Einrichtung (z.B. einer Computereinrichtung 105 oder dem Server 120 oder beiden) durchgeführt werden. In der dargestellten Ausführungsform können die Computereinrichtung 105, der Server 120 und die Datenbank 125 über ein Netzwerk 130 kommunikativ gekoppelt sein (z.B. über Kommunikationsverbindungen 155).
-
Als Beispiel können die Computereinrichtungen 105 in der Umgebung 100 verwendet werden. Während die Umgebung 100 drei Computereinrichtungen 105 zeigt, gilt die vorliegende Offenbarung für jede Systemarchitektur mit einer oder mehreren Computereinrichtungen 105. Während ein einzelnes Netzwerk mit den Computereinrichtungen 105, dem Server 120 und der Datenbank 125 gekoppelt ist, gilt die vorliegende Offenbarung für jede Systemarchitektur mit einer beliebigen Anzahl von Netzwerken, die kommunikativ mit den Computereinrichtungen 105, dem Server 120 und der Datenbank 125 gekoppelt werden können. In ähnlicher Weise, während die Umgebung 100 einen einzelnen Server zeigt, gilt die vorliegende Offenbarung für jede Systemarchitektur mit einem oder mehreren Servern.
-
In einigen Beispielen können die Computereinrichtungen 105, der Server 120 und die Datenbank 125 ein persönliches elektronisches Gerät, wie etwa ein Mobiltelefon, einen persönlichen digitalen Assistenten (PDA, personal digital assistent), einen Tablet-Computer, einen Laptop-Computer oder einen Personal Computer umfassen. In einigen Beispielen können auf den Computereinrichtungen 105 eine oder mehrere Anwendungen installiert sein. Beispielsweise kann die Computereinrichtung 105-a eine Anwendung 110-a, die Computereinrichtung 105-b eine Anwendung 110-b und die Computereinrichtung 105-c eine Anwendung 110-c enthalten. Die Anwendungen 110 können eine gleiche oder eine andere Anwendung sein, die heruntergeladen, installiert und auf den Computereinrichtungen 105 ausgeführt werden. In einigen anderen Beispielen können auf den Computereinrichtungen 105 eine oder mehrere zusätzliche Anwendungen installiert sein. In einigen Beispielen kann die Computereinrichtung 105-a einen Fingerabdruck-Manager 115-a enthalten, die Computereinrichtung 105-b kann ebenfalls einen Fingerabdruck-Manager 115-b enthalten, und die Computereinrichtung 105-c kann ebenfalls einen Fingerabdruck-Manager 115-c enthalten. Während die Umgebung 100 die Computereinrichtungen 105 illustriert, die jeweils einen Fingerabdruck-Manager 115 enthalten, gilt die vorliegende Offenbarung für jede beliebige der Computereinrichtungen 105 (z.B. mindestens eine), die optional einen Fingerabdruck-Manager aufweist.
-
In einigen Beispielen können die Computereinrichtungen 105, der Server 120 oder beide einen Fingerabdruck-Manager 115 enthalten, wobei mindestens ein Teil der Funktionen des Fingerabdruck-Managers 115 separat oder gleichzeitig auf den Computereinrichtungen 105 oder dem Server 120 oder beiden ausgeführt werden. In ähnlicher Weise kann in einigen Fällen eine Person auf die Funktionen der Computereinrichtungen 105 zugreifen (direkt oder über die Computereinrichtung 105 über den Fingerabdruck-Manager 115). Beispielsweise können die Computereinrichtungen 105 eine mobil-basierte Anwendung enthalten, die mit einer oder mehreren Funktionen des Fingerabdruck-Managers 115 oder des Servers 120 über eine Schnittstelle verbunden ist).
-
Es wird darauf hingewiesen, dass in einigen Fällen die Computereinrichtungen 105, der Server 120 oder beide keinen Fingerabdruck-Manager 115 enthalten. Beispielsweise können die Computereinrichtungen 105 die Anwendungen 110 enthalten, die es den Computereinrichtungen 105 ermöglicht, eine Schnittstelle mit einem Fingerabdruck-Manager 115 herzustellen, der sich auf einer anderen Computereinrichtung oder dem Server 120 befinden kann. Obwohl die Komponenten der Computereinrichtungen 105 so dargestellt sind, dass sie sich innerhalb der Computereinrichtungen 105 befinden, wird davon ausgegangen, dass sich eine oder mehrere der Komponenten außerhalb der Computereinrichtungen 105 befinden können und mit den Computereinrichtungen 105 über verdrahtete oder drahtlose Verbindungen oder beides (z.B. über die Kommunikationsverbindungen 155) verbunden sein können.
-
Der Server 120 kann ein Computersystem oder eine Anwendung sein, die ein Zwischenknoten in der Umgebung 100 zwischen den Computereinrichtungen 105 oder der Datenbank 125 sein kann. Der Server 120 kann eine beliebige Kombination umfassen von: einem Server für soziale Netzwerke, einem Datenserver, einem Cloud-Server, einem mit einem Automationsdienstanbieter verbundenen Server, einem Proxy-Server, einem Mailserver, einem Webserver, einem Anwendungsserver, einem Datenbankserver, einem Kommunikationsserver, einem Dateiserver, einem Heimserver, einem mobilen Server, einem Namensserver, oder einer beliebigen Kombination davon sein. In einigen Fällen kann der Server 120 eine Anwendungsverteilungsplattform umfassen. In einigen Beispielen kann der Server 120 einen Fingerabdruck-Manager 115-d umfassen.
-
Der Server 120 kann eine Anfrage von einer oder mehreren der Computereinrichtungen 105 erhalten, die Ressourcen von dem Server 120 und/oder der Datenbank 125 suchen. In einigen Fällen können die Computereinrichtungen 105 mit dem Server 120 über das Netzwerk 130 kommunizieren. Beispiele für das Netzwerk 130 können jede beliebige Kombination umfassen von: Cloud-Netzwerken, lokalen Netzwerken (LAN, local area network), Weitverkehrsnetzwerken (WAN, wide area network), virtuellen privaten Netzwerken (VPN, virtual private network), drahtlosen Netzwerken (z.B. unter Verwendung von 802.11), zellularen Netzwerken (z.B. unter Verwendung von Systemen der dritten Generation (3G), der vierten Generation (4G) (z.B. Long-Term Evolution (LTE)) oder neue Funk (NR, new radio)-System der fünften Generation (5G) usw.) sein. In einigen Beispielen kann das Netz 130 das Internet einschließen. In einigen Beispielen kann der Server 120 über eine Kommunikationsverbindung 160 mit der Datenbank 125 gekoppelt sein. Die Kommunikationsverbindung 160 kann eine drahtgebundene Verbindung oder eine drahtlose Verbindung sein.
-
Die Datenbank 125 kann Fingerabdrücke speichern, die den Anwendungen 110 entsprechen. Beispielsweise kann die Datenbank 125 eine relationale Datenbank sein und eine Tabelle mit einem Satz von Datenelementen (z. B. Fingerabdruckinformationen) enthalten. Die Tabelle kann z. B. eine Anzahl von Spalten und eine Anzahl von Zeilen enthalten. Jede Zeile kann einer Anwendung zugeordnet sein, und jede Spalte kann Fingerabdruckinformationen enthalten (z.B. ein Bit oder eine Folge von Bits, die einem Prozess, einer Aktion usw. einer Anwendung 110 entsprechen). In einigen Beispielen kann die Datenbank 125 Fingerabdrücke, die den Anwendungen 110 entsprechen, mit einem zeitlichen Bezeichner (z.B. Zeitstempel) korrelieren.
-
In einigen Beispielen kann die Computereinrichtung 105-a die Anwendung 110-a ausführen. Die Computereinrichtung 105-a kann auch eine oder mehrere Funktionen des Fingerabdruck-Managers 115-a implementieren. Beispielsweise kann die Computereinrichtung 105-a den Fingerabdruck-Manager 115-a verwenden, um die Anwendung 110-a auf das Computerverhalten zu überwachen. In einigen Beispielen können die Computerverhalten Prozesse, Operationen, Aktionen, Daten oder Funktionen sein, die der Anwendung 110a zugeordnet sind. Beispielsweise kann die Computereinrichtung 105-a die Anwendung 110-a überwachen auf Computerprozesse, wie etwa das Laden von, Speichern von oder Zugreifen auf Dateien (z.B. Zugreifen auf eine oder mehrere .dll-Dateien), ein der Anwendung zugeordnetes UI (user interface), Aktionen, wie etwa das Laden oder Speichern von Daten in eine Zwischenablage, Zugreifen auf ein Netzwerk oder andere Anwendungsprozesse. In einigen Beispielen kann die Computereinrichtung 105-a das Verhalten von einzelnen Computerverhalten überwachen oder von Gruppen von Computerverhalten überwachen. Beispielsweise kann eine Gruppe von Computerverhalten einen oder mehrere Computerprozesse, Operationen, Aktionen, Daten oder Merkmale einer Anwendung 110 (z.B. Computerprozesse einer Anwendung 110-a) oder mehrere Anwendungen 110 (z.B. Überwachen auf Verhaltensweisen wie etwa das Zugreifen auf ein Netzwerk für mehrere Anwendungen 110) umfassen. Als Beispiel kann die Anwendung 110-a eine Rechneranwendung (z.B. calc.exe) sein. Die Computereinrichtung 105-a kann ein Computerverhalten oder eine Gruppe von Computerverhalten der Rechneranwendung überwachen, wie etwa Feststellen, dass die Rechneranwendung ein UI enthält, auf eine oder mehrere .dll-Dateien zugreift, Daten in eine oder aus einer Zwischenablage lädt, und dergleichen.
-
In einigen Beispielen können eine Computereinrichtung 105, der Server 120 oder beide einen oder mehrere anwendungsverhaltensbezogene Fingerabdrücke erzeugen. Beispielsweise kann die Computereinrichtung 105-a (z.B. unter Verwendung des Fingerabdruck-Managers 115-a) das Computerverhalten der Anwendung 110-a überwachen und einen Fingerabdruck erstellen, der den Computerverhalten zugeordnet ist. In einigen Beispielen kann der Fingerabdruck aus Daten bestehen, die dem nachverfolgten Computerverhalten der Anwendung 110-a zugeordnet sind. Beispielsweise kann der Fingerabdruck eine Bitfolge enthalten, die die Computerverhaltensweisen (z.B. Computerprozesse, Aktionen und dergleichen) beschreibt, die eine Anwendung oder ein Prozess (z.B. Anwendung 110-a) ausführt oder von denen erwartet wird, dass sie/er ausgeführt wird. In einigen Beispielen kann die Computereinrichtung 105-a einen partiellen Fingerabdruck erzeugen, der ein Computerverhalten oder einen Computerprozess der Anwendung 110-a anzeigt. Beispielsweise kann der partielle Fingerabdruck mindestens ein Bit sein, das ein Computerverhalten anzeigt oder diesem zugeordnet ist, und die Computereinrichtung 105-a kann das mindestens eine Bit in die Bitfolge aufnehmen (d.h. den Fingerabdruck, der den Computerverhalten der Anwendung 110-a zugeordnet ist).
-
Die Computereinrichtung 105-a kann mehrere partielle Fingerabdrücke kombinieren, um einen Fingerabdruck (z.B. die Folge von Bits) der Anwendung 110-a zu erzeugen. Als Beispiel kann die Computereinrichtung 105-1 die Computerverhalten einer Rechneranwendung überwachen, so wie das hierin beschrieben worden ist. Beispielsweise kann die Computereinrichtung 105-a feststellen, dass die Rechneranwendung eine bestimmte Datei lädt (z.B. eine .dll-Datei). Die Computereinrichtung 105-a kann das Laden nachverfolgen und einen partiellen Fingerabdruck für das Computerverhalten erzeugen (z.B. mindestens ein Bit, das das Laden, die geladene Datei und andere dem Computerverhalten zugeordnete Daten anzeigt). Die Computereinrichtung 105-a kann einen partiellen Fingerabdruck für mehrere Computerverhalten der Rechneranwendung erzeugen und kann die partiellen Fingerabdrücke zu einem Fingerabdruck der Rechneranwendung kombinieren (z.B. eine Folge von Bits, die die Computerverhalten der Rechneranwendung beschreibt).
-
In einigen Beispielen können ein Rechnergerät 105, ein Netzwerkgerät (z.B. der Server 120) oder beide einen oder mehrere anwendungsverhaltensbezogene Fingerabdrücke aggregieren. Beispielsweise kann die Computereinrichtung 105-b einen oder mehrere anwendungsverhaltensbezogene Fingerabdrücke von anderen Computereinrichtungen 105 empfangen. In einigen Beispielen kann die Computereinrichtung 105-b von dem Rechengerät 105-a einen der Anwendung 110-a zugeordneten Fingerabdruck empfangen. Die Computereinrichtung 105-b kann ebenfalls einen Fingerabdruck von der Computereinrichtung 105-c erhalten (z.B. ein Fingerabdruck der Anwendung 110-c, die auf der Computereinrichtung 105-c ausführt/überwacht wird). Die Computereinrichtung 105-b kann die empfangenen Fingerabdrücke aggregieren und einen aggregierten Fingerabdruck erzeugen. Der aggregierte Fingerabdruck kann eine Folge von Bits enthalten, die dem normalen Computerverhalten einer Anwendung 110) (z.B. der Anwendung 110-a) zugeordnet sind. In einigen Beispielen kann die Computereinrichtung 105-b einen Algorithmus ausführen, um zumindest die häufigsten (oder gängigsten) Computerverhalten (d.h. Bits, die ein Computerverhalten anzeigen) zu extrahieren und einen aggregierten Fingerabdrücke für zumindest die häufigsten Computerverhalten zu erzeugen. Die Computereinrichtung 105-b kann den aggregierten Fingerabdruck (z.B. eine Folge von Bits, die den häufigsten Computerverhaltensweisen zugeordnet sind) auf der Grundlage des Algorithmus erzeugen. In einigen Beispielen kann die Computereinrichtung 105-b den aggregierten Fingerabdruck auf andere Weise erzeugen (z.B. manuelles Auswählen von normalen Computerverhalten, Verwenden von statistischen Analysen, Ausreißer von Computerverhaltensweisen aus den aggregierten Fingerabdrücken zu entfernen, oder andere Verfahren). Die Computereinrichtung 105-b kann beispielsweise einen Satz von Computerverhalten oder Computerprozessen als normales Computerverhalten oder Computerprozesse klassifizieren, und zwar auf der Grundlage einer Korrelation zwischen den aggregierten Fingerabdrücken.
-
Als Beispiel kann die Computereinrichtung 105-b von jeder der Computereinrichtungen 105-a, 105-c einen einer Rechneranwendung zugeordneten Fingerabdruck erhalten. Die Computereinrichtung 105-b kann die Fingerabdrücke aggregieren und einen aggregierten Fingerabdruck für die Rechneranwendung erzeugen. Der aggregierte Fingerabdruck kann einen Satz von Computerverhalten (z.B. eine Folge von Bits) der Rechneranwendung enthalten, die als normal bestimmt wurden (z.B. durch Verwendung eines Algorithmus, um die gebräuchlichsten Computerverhaltensweisen zu bestimmen).
-
In einigen Beispielen kann die Computereinrichtung 105-b die Datenbank 125 erstellen oder aktualisieren. Beispielsweise kann die Datenbank 125 so aktualisiert werden, dass sie einen Dateneintrag des aggregierten Fingerabdruck und einen Hinweis auf die Anwendung 110-a enthält. Die Datenbank 125 kann Hinweise auf andere Anwendungen 110) (z.B. die Anwendungen 110-b, 110-c) und jeder Anwendung 110 zugeordneten, aggregierten Fingerabdruck enthalten. Die Datenbank 125 kann von einer Einrichtung (z.B. einer Computereinrichtung 105, dem Server 120 oder beiden) zur Nutzung durch die Computereinrichtungen 105 hochgeladen oder gepflegt werden. Zusätzlich oder alternativ kann eine Einrichtung Daten in der Datenbank 125 (z.B. den Dateneintrag von einer Anwendung 110 und einem zugehörigen aggregierten Fingerabdruck) an andere Computereinrichtungen 105 übertragen (z.B. auf der Grundlage einer Anforderung von einer Computereinrichtung 105 für Daten, die auf eine Anwendung 110 und einen zugehörigen aggregierten Fingerabdruck hinweisen).
-
In einigen Beispielen können eine Computereinrichtung 105, ein Netzwerkgerät (z.B. der Server 120) oder beide ein Computerverhalten von einer Anwendung oder einem Prozess (z.B. einer Anwendung 110) mit einem zugeordneten, anwendungsverhaltensbezogenen Fingerabdruck vergleichen. Beispielsweise kann die Computereinrichtung 105-c ein Computerverhalten einer Anwendung 110-c mit einem zugeordneten, anwendungsverhaltensbezogenen Fingerabdruck vergleichen. Die Computereinrichtung 105-c kann ein Computerverhalten (z.B. eine Aktion, einen Prozess, Daten usw.) der Anwendung 110-c überwachen. Die Computereinrichtung 105-c kann einen aggregierten Fingerabdruck bestimmen, der der Anwendung 110-c zugeordnet ist (z.B. durch Anfordern von Daten aus der Datenbank 125). Die Computereinrichtung 105-c kann bestimmen, ob das überwachte Computerverhalten (z.B. mindestens ein Bit, das das überwachte Computerverhalten anzeigt) in einem aggregierten Fingerabdruck (z.B. eine Folge von Bits, die normales Verhalten anzeigt) der Anwendung 110-c enthalten ist. In einigen Beispielen kann die Computereinrichtung 105-c den aggregierten Fingerabdruck nach einem übereinstimmenden Computerverhalten oder einem Hinweis auf ein mit dem überwachten Computerverhalten übereinstimmendes Computerverhalten durchsuchen. In einigen anderen Beispielen kann die Computereinrichtung 105-c einen Fingerabdruck an einen Durchsetzungs-Agenten (enforcement agent) (z.B. Fingerabdruck-Manager 115-c, Fingerabdruck-Manager 115-d usw.) übermitteln.
-
In einigen Fällen kann der Durchsetzungs-Agent den Prozess oder die Anwendung 110-c auf Abweichungen von dem Fingerabdruck überwachen (z.B. eine Änderung der Computerprozesse oder der Computerverhalten des in dem aggregierten Fingerabdruck enthaltenen Satzes von Computerverhalten). In einigen Beispielen kann die Computereinrichtung 105-c feststellen, dass das überwachte Computerverhalten ein normales Computerverhalten ist. In anderen Beispielen kann die Computereinrichtung 105-c feststellen, dass das überwachte Computerverhalten ein anormales Computerverhalten ist. Beispielsweise kann die Computereinrichtung 105-c möglicherweise nicht in der Lage sein, das Computerverhalten (z.B. einen Hinweis auf das Computerverhalten, das mindestens ein Bit enthält) in dem aggregierten Fingerabdruck zu finden, oder sie kann feststellen, dass eine Abweichung von Computerverhalten (z.B. von einem aggregierten Fingerabdruck der Anwendung 110-c) aufgetreten ist. Als Beispiel kann die Computereinrichtung 105-c ein Computerverhalten einer Rechneranwendung (z.B. Zugreifen auf ein Netzwerk) mit einem Fingerabdruck (z.B. einem aggregierten Fingerabdruck) der Rechneranwendung vergleichen. Die Computereinrichtung 105-c kann feststellen, dass das Computerverhalten nicht in dem Fingerabdruck enthalten ist. Beispielsweise kann die Computereinrichtung 105-c feststellen, dass die auf ein Netzwerk zugreifende Rechneranwendung ein anormales Computerverhalten ist, auf der Grundlage davon, dass ein auf ein Netzwerk zugreifendes Computerverhalten nicht in dem aggregierten Fingerabdruck der Rechneranwendung angezeigt oder gefunden wird. In einigen Fällen kann ein Fingerabdruck ein oder mehrere vorbestimmte anormale Computerverhaltensweisen enthalten. In einigen Fällen kann ein anormales Computerverhalten erkannt werden, wenn eine Analyse eines überwachten Computerverhaltens anzeigt, dass das überwachte Computerverhalten mit dem in einem Fingerabdruck enthaltenen anormalen Computerverhalten übereinstimmt.
-
In einigen Beispielen können eine Computereinrichtung 105, ein Netzwerkgerät (z. B. der Server 120) oder beide eine Sicherheitsaktion ausführen. Beispielsweise kann die Computereinrichtung 105-c detektieren, dass ein überwachtes Computerverhalten ein anormales Computerverhalten ist, so wie das hierin beschrieben ist. Die Computereinrichtung 105-c kann bestimmen, das anormale Computerverhalten zu erzwingen. Beispielsweise kann die Computereinrichtung 105-c eine Sicherheitsaktion ausführen als Antwort auf das Detektieren des anormalen Computerverhaltens der Anwendung 110-c. In einigen Beispielen kann eine Sicherheitsaktion folgendes umfassen: das Erzeugen, Übertragen oder Anzeigen eines Berichts, der Informationen in Bezug auf das anormale Computerverhalten angibt, unter Quarantäne Stellen der Anwendung 110-c oder des anormalen Computerverhaltens (z.B. Beenden von einem oder mehreren Computerprozessen der Anwendung 100-c), Verhindern von Zugriff der Anwendung 110-c auf ein Netzwerkgerät für die Computereinrichtung 105-c, Verhindern von Zugriff der Anwendung 110-c auf eines oder mehrere Merkmale (oder Funktionen) (z.B. Programme, Dateien, Speicher usw.) der Computereinrichtung 105-c, Ausführen einer Schadprogramm-Suche auf der Anwendung 110-c oder der Computereinrichtung 105-c, oder eine beliebige Kombination davon. Beispielsweise kann die Computereinrichtung 105-c einen Bericht übermitteln, der eine wählbare Option zum Ausführen von einer oder mehreren zusätzlichen Sicherheitsaktionen enthält. In einigen Beispielen können ein Sicherheitsagent oder ein Administrator den Bericht erhalten und eine Sicherheitsaktion aus einer Liste von Sicherheitsaktionen, die auf der Computereinrichtung 105-c ausgeführt werden sollen, auswählen. Zusätzlich oder alternativ kann die Computereinrichtung 105-c bestimmen, dass vor dem Übertragen eines Berichts eine Sicherheitsaktion ausgeführt werden soll, oder kann eine Sicherheitsaktion ausführen, ohne einen Bericht zu übertragen. Beispielsweise kann die Computereinrichtung 105-c ein anormales Computerverhalten (z.B. Zugreifen auf ein Netzwerk) einer Rechneranwendung detektieren. Die Computereinrichtung 105-c kann eine Sicherheitsaktion ausführen auf der Grundlage des Detektierens. Beispielsweise kann die Computereinrichtung 105-c bestimmen, den Zugriff der Rechneranwendung auf das Netzwerk 130 zu verhindern.
-
In einigen Beispielen kann die Computereinrichtung 105-c eine Anwendung 110-c ausführen, wie etwa eine Sicherheitsanwendung, eine Durchsetzungsanwendung (z.B. einschließlich eines Durchsetzungsagenten), eine Datenverlust-Anwendung (z.B. eine Anwendung zur Wiederherstellung von verlorenen Daten, wie etwa von einem böswilligen Angriff) usw. Beispielsweise kann die Computereinrichtung 105-c eine Durchsetzungsanwendung ausführen, um einige der Aspekte dieser Offenbarung durchzuführen, wie etwa das Ausführen einer Sicherheitsaktion. In einigen Beispielen kann die Durchsetzungsanwendung Richtliniendefinitionen (policy definitions) enthalten.
-
In einigen Beispielen können die Richtliniendefinitionen eine Reihe von Richtlinien bezüglich der Durchsetzung von einer oder mehreren Anwendungen 110 der Computereinrichtung 105-c sein. Die Richtliniendefinitionen können beispielsweise Regeln zum Überwachen einer Anwendung 110 (z.B. wie oft die Computerverhalten der Anwendung 110 überwacht werden sollen, welche Anwendungen 110 überwacht werden sollen, und dergleichen), Regeln zum Durchsetzen einer Anwendung 110 (z.B. welche Sicherheitsaktionen für eine Anwendung 110 durchgeführt werden sollen), und dergleichen umfassen. In einigen Beispielen kann die Computereinrichtung 105-c ein anormales Computerverhalten erkennen und die Richtliniendefinitionen aktualisieren. Beispielsweise kann die Computereinrichtung 105-c bestimmen, die der Anwendung 110-c zugeordneten Richtliniendefinitionen auf strengere Richtliniendefinitionen zu aktualisieren, auf der Grundlage des Detektierens eines anormalen Computerverhaltens der Anwendung 110-c. Beispielsweise kann die Computereinrichtung 105-c (z.B. die Durchsetzungsanwendung) die Richtliniendefinitionen aktualisieren, um die Anwendung 110-c öfter zu überwachen, um die Anwendung 110-c sofort unter Quarantäne zu stellen, wenn ein anormales Computerverhalten auftritt oder andauert, usw.
-
Derartige Richtlinienaktualisierungen können eine dynamische Sicherheitsverbesserung auf der Grundlage der anwendungsverhaltensbezogenen Fingerabdrücke ermöglichen. Beispielsweise kann die Computereinrichtung 105-c bestimmen, dass keine anormale Computerverhalten für die Anwendung 110-c vorliegen, und kann die Anwendung 110-c weniger häufig überwachen, um den Stromverbrauch oder die Speichernutzung zu reduzieren. Zusätzlich oder alternativ dazu kann die Computereinrichtung 105-c ein anormales Computerverhalten der Anwendung 110-c identifizieren und eine strengere Sicherheitsdurchsetzung und/oder vermehrtes Überwachen (z.B. erhöhte Überwachungsfrequenz) durchführen, um eine robustere Erkennung und Sicherheitsverbesserung zu ermöglichen.
-
So wie das hierin beschrieben ist, können die Computereinrichtungen 105 und der Server 120 einen oder mehrere der folgenden potenziellen Vorteile realisieren. Die Computereinrichtungen 105 und Server 120 können, neben anderen Vorteilen, Verbesserungen bei der Erkennung von Sicherheitsbedrohungen unterstützen. Beispielsweise können die Computereinrichtungen 105 und der Server 120 ein effizientes Erstellen, Aggregieren und Durchsetzen von anwendungsverhaltensbezogenen Fingerabdrücken fördern. Daher können die Computereinrichtungen 105 und der Server 120 auch ein verstärktes Detektieren (oder Erkennen) von anormalem Computerverhalten unterstützen, und können in einigen Beispielen die Durchsetzung von anormalen Computerverhalten fördern, z. B. das Ausführen einer Sicherheitsaktion, um die Computereinrichtungen 105 und den Server 120 vor dem anormalen Computerverhalten zu schützen, neben anderen Vorteilen. Dabei können die hierin beschriebenen Techniken beispielsweise Verbesserungen für den Betrieb der Computereinrichtungen 105 und den Server 120 bringen, wie etwa verbesserter Prozessorbetrieb, reduzierter Stromverbrauch, verbesserte Speichernutzung, neben anderen Vorteilen, indem sie anwendungsverhaltensbezogene Fingerabdrücke ermöglichen.
-
2 veranschaulicht ein Beispiel für einen Prozessablauf 200, der Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. In einigen Beispielen kann der Prozessablauf 200) Aspekte der Umgebung 100 implementieren. Die Computereinrichtung 105-a, die Computereinrichtung 105-b und die Computereinrichtung 105-c können Beispiele für entsprechende Einrichtungen sein, die mit Verweis auf 1 beschrieben worden sind. In einigen Beispielen kann der Prozessablauf 200 durch eine Computereinrichtung 105, einen Fingerabdruck-Manager 115, einen Server 120 oder eine beliebige Kombination davon implementiert werden.
-
In der folgenden Beschreibung des Prozessablaufs 200 können die Operationen zwischen der Computereinrichtung 105-a, der Computereinrichtung 105-b und der Computereinrichtung 105-c in einer anderen Reihenfolge als der beispielhaft gezeigten übertragen werden, oder die von der Computereinrichtung 105-a, der Computereinrichtung 105-b und der Computereinrichtung 105-c ausgeführten Operationen können in anderer Reihenfolge oder zu anderen Zeiten ausgeführt werden. Bestimmte Operationen können auch aus dem Prozessablauf 200 herausgelassen werden, oder andere Operationen können dem Prozessablauf 200 hinzugefügt werden. Zusätzlich können andere Geräte als die Computereinrichtung 105 einige der im Prozessablauf 200 beschriebenen Operationen ausführen.
-
Bei 205 kann die Computereinrichtung 105-a eine Anwendung überwachen, die auf der Computereinrichtung 105-a und/oder auf einer anderen Computereinrichtung ausgeführt wird. Die Rechenanlage 105-a kann das Computerverhalten der Anwendung auf der Grundlage der Überwachung nachverfolgen, wie z.B. Aktionen oder Prozesse (z.B. Computerprozesse), die von der Anwendung ausgeführt werden oder von denen erwartet wird, dass sie von der Anwendung ausgeführt werden, Merkmale der Anwendung (z.B. eine Ul), Daten, die von der Anwendung geladen oder gespeichert werden oder auf die die Anwendung zugreift, usw. Bei 210 kann die Computereinrichtung 105-a einen digitalen Fingerabdruck für die Anwendung erstellen. In einigen Beispielen kann die Computereinrichtung 105-a einen partiellen digitalen Fingerabdruck (z.B. mindestens ein Bit) für ein nachverfolgtes Computerverhalten der Anwendung erzeugen, und kann solche partiellen digitalen Fingerabdrücke kombinieren, um einen digitalen Fingerabdruck (z.B. eine Bitfolge) zu erzeugen, der das nachverfolgte Computerverhalten der Anwendung beschreibt oder angibt. Bei 215 kann die Computereinrichtung 105-a den digitalen Fingerabdruck übertragen. Beispielsweise kann die Computereinrichtung 105-a die Bitfolge, die das überwachte (z.B. nachverfolgte) Computerverhalten der Anwendung beschreibt, an eine anderes Computereinrichtung 105, ein Netzwerkgerät, wie etwa einen Server 120, eine Datenbank, wie etwa eine Datenbank 125, oder eine beliebige Kombination davon übertragen.
-
Bei 220 kann die Computereinrichtung 105-b einen Satz von digitalen Fingerabdrücke aggregieren. Beispielsweise kann die Computereinrichtung 105-b einen Satz von digitalen Fingerabdrücken, die in Bezug zu der Anwendung stehen, empfangen. In einigen Fällen kann die Computereinrichtung 105-b den Satz digitaler Fingerabdrücke von einer anderen Einrichtung (z.B. einem Server 120 mit Zugriff auf die Datenbank 125) anfordern, kann den Satz digitaler Fingerabdrücke direkt von anderen Computereinrichtung 105 empfangen, oder beides. In einigen Fällen können zumindest einige digitale Fingerabdrücke aus dem Satz von digitalen Fingerabdrücken aus Telemetriedaten erzeugt werden (z.B. Daten, die bei der Überwachung der Anwendungsnutzung auf einer oder mehreren Computereinrichtungen, wie etwa der Computereinrichtung 105-a gesammelt werden).
-
Die Computereinrichtung 105-b kann einen aggregierten digitalen Fingerabdruck der Anwendung erzeugen. Beispielsweise kann die Computereinrichtung 105-b einen Algorithmus oder einen anderen Computerprozess ausführen, um einen Satz normaler Computerverhalten aus dem Satz von digitalen Fingerabdrücken zu bestimmen (z.B. Bestimmen, dass eine oder mehrere Computerverhaltensweisen in einem Teil des Satzes von digitalen Fingerabdrücken Ausreißer sind, und diese aus dem Satz normaler oder üblicher Computerverhaltensweisen der Anwendung entfernen). In einigen Beispielen kann die Computereinrichtung 105-b eine Datenbank aktualisieren mit einem Hinweis auf die Anwendung und den zugehörigen aggregierten digitalen Fingerabdruck (z.B. eine Folge von Bits, die den Satz normaler Computerverhaltensweisen anzeigt). In einigen Fällen kann ein aggregierter digitaler Fingerabdruck eine oder mehrere anormale Computerverhaltensweisen enthalten.
-
Bei 225 kann die Computereinrichtung 105-c ein Computerverhalten oder einen Prozess der Anwendung überwachen. Beispielsweise kann die Computereinrichtung 105-c ein Computerverhalten der Anwendung nachverfolgen, wie z. B. ein Zugreifen auf ein Netzwerk. Bei 235 kann die Computereinrichtung 105-c feststellen, dass das Computerverhalten oder der Prozess der Anwendung anormal ist, auf der Grundlage des Satzes von digitalen Fingerabdrücken. Beispielsweise kann die Computereinrichtung 105-c den aggregierten digitalen Fingerabdruck empfangen oder erzeugen (z.B. eine Folge von Bits, die einen Satz normaler Computerverhaltensweisen für die Anwendung anzeigt, oder eine Bitfolge, die einen Satz anormaler Computerverhaltensweisen für die Anwendung anzeigt, oder beides). In einigen Beispielen kann die Computereinrichtung 105-c den aggregierten digitalen Fingerabdruck von einer Datenbank 125 oder einer anderen Einrichtung, wie der Computereinrichtung 105-b oder dem Server 120 empfangen. In einigen anderen Beispielen kann die Computereinrichtung 105-c den aggregierten digitalen Fingerabdruck aus dem Satz von digitalen Fingerabdrücken erzeugen.
-
Die Computereinrichtung 105-c kann das überwachte oder nachverfolgte Computerverhalten mit dem aggregierten digitalen Fingerabdruck vergleichen. Beispielsweise kann die Computereinrichtung 105-c feststellen, dass das nachverfolgte Computerverhalten des Zugreifens auf das Netzwerk nicht in dem aggregierten digitalen Fingerabdruck enthalten ist oder nicht darin angezeigt wird. Die Computereinrichtung 105-c kann feststellen, dass das nachverfolgte Computerverhalten ein anormales Computerverhalten der Anwendung ist. Bei 240 kann die Computereinrichtung 105-c eine Sicherheitsaktion ausführen. Beispielsweise kann die Computereinrichtung 105-c das anormale Computerverhalten durchsetzen (oder erzwingen), indem sie das Computerverhalten oder die Anwendung unter Quarantäne stellt, einen Bericht über das anormale Computerverhalten und alle damit verbundenen Informationen erzeugt, überträgt oder anzeigt (z.B. Anzeigen eines Berichts an einen Benutzer der Computereinrichtung 105-c einschließlich einer wählbaren Option zum Ausführen von einer oder mehreren zusätzlichen Sicherheitsaktionen), und dergleichen.
-
Die Operationen, die von den Computereinrichtungen 105 als Teil des Prozessablaufs 200 durchgeführt werden, aber nicht darauf beschränkt sind, können neben anderen Vorteilen Verbesserungen bei der Erkennung von Sicherheitsbedrohungen bereitstellen. Darüber hinaus können die Operationen, die von den Computereinrichtungen 105 als Teil des Prozessflusses 200 ausgeführt werden, aber nicht darauf beschränkt sind, Vorteile und Verbesserungen für den Betrieb der Computereinrichtungen 105 bieten. Beispielsweise können die Computereinrichtungen 105 das effiziente Erstellen, Aggregieren und Durchsetzen von anwendungsverhaltensbezogenen Fingerabdrücken fördern. Daher können die Computereinrichtungen 105 auch ein verstärktes Erkennen von anormalem Computerverhalten unterstützen, und in einigen Beispielen das Durchsetzen des anormalen Computerverhaltens fördern, z.B. das Ausführen einer Sicherheitsaktion, um die Computereinrichtungen 105 vor dem anormalen Computerverhalten zu schützen, neben anderen Vorteilen. Dadurch wird der Betrieb der Computereinrichtungen 105 weiter verbessert, z.B. wie etwa verbesserter Prozessorbetrieb, geringerer Stromverbrauch, verbesserte Speichernutzung, neben anderen Vorteilen durch Ermöglichen von anwendungsverhaltensbezogenen Fingerabdrücken.
-
3 zeigt ein Blockdiagramm 300 eines Rechengeräts 305, das Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Die Computereinrichtung 305 kann ein Beispiel für die hierin beschriebenen Aspekte einer Computereinrichtung sein. Die Computereinrichtung 305 kann einen Empfänger 310, einen Fingerabdruck-Manager 315 und einen Sender 320 enthalten. Die Computereinrichtung 305 kann auch einen oder mehrere Prozessoren enthalten. Jede dieser Komponenten kann miteinander in Kommunikation sein (z.B. über einen oder mehrere Busse).
-
Der Empfänger 310 kann Informationen, wie etwa Pakete, Nutzerdaten oder Steuerungsinformationen empfangen, die verschiedenen Informationskanälen zugeordnet sind (z.B. Steuerkanäle, Datenkanäle und Informationen in Bezug auf anwendungsverhaltensbezogene Fingerabdrücke usw.). Informationen können an andere Komponenten des Rechengeräts 305 weitergegeben werden. Der Empfänger 310 kann ein Beispiel für Aspekte des Sender-Empfängers 620 sein, der mit Verweis auf 6 beschrieben wird. Der Empfänger 310 kann eine einzelne Antenne oder einen Satz von Antennen verwenden.
-
Der Fingerabdruck-Manager 315 kann einen Computerprozess überwachen, der sich auf eine Anwendung bezieht, die auf einer Computereinrichtung von der einen oder den mehreren Computereinrichtungen läuft, eine Datenbank analysieren, die einen Satz digitaler Fingerabdrücke enthält, wobei sich ein digitaler Fingerabdruck des Satzes von digitalen Fingerabdrücken auf die Anwendung bezieht, wobei der digitale Fingerabdruck einen Hinweis auf einen Satz von Computerprozessen enthält, die sich auf die Anwendung beziehen und die als normale Computerprozesse für die Anwendung klassifiziert sind, auf der Grundlage des digitalen Fingerabdrucks der Anwendung bestimmen, dass der Computerprozess, der sich auf die Anwendung bezieht, ein anormaler Computerprozess ist, und auf der Grundlage des Bestimmens eine Sicherheitsaktion ausführen, um die Computereinrichtung gegen den anormalen Computerprozess zu schützen. Der Fingerabdruck-Manager 315 kann ein Beispiel für Aspekte des hierin beschriebenen Fingerabdruck-Managers 610 sein.
-
Der Fingerabdruck-Manager 315 oder seine Unterkomponenten können in Hardware, in Code (z.B. Software oder Firmware), die von einem Prozessor ausgeführt wird, oder eine beliebige Kombination davon, implementiert werden. Wenn er als ein von einem Prozessor ausgeführter Code implementiert ist, können die Funktionen des Fingerabdruck-Managers 315 oder seiner Unterkomponenten von einem Allzweckprozessor, einem digitalen Signalprozessor (DSP), einem anwendungsspezifischen integrierten Schaltkreis (ASIC, application specific integrated circuit), einem FPGA (field programmable gate array) oder einem anderen programmierbaren Logikbaustein (PLD, programmable logic device), einer diskreten Gate- oder Transistorlogik, diskreten Hardwarekomponenten, oder einer beliebigen Kombination davon ausgeführt werden, die dazu entworfen sind, die in dieser Offenbarung beschriebenen Funktionen zu erfüllen.
-
Der Fingerabdruck-Manager 315 oder seine Unterkomponenten können sich physisch an verschiedenen Positionen befinden, einschließlich solcher, die so verteilt sind, dass Teile der Funktionen an verschiedenen physischen Orten durch eine oder mehrere physische Komponenten implementiert sind. In einigen Beispielen können der Fingerabdruck-Manager 315 oder seine Unterkomponenten eine separate und eine eigenständige Komponente sein, in Übereinstimmung mit verschiedenen Aspekten der vorliegenden Offenbarung. In einigen Beispielen können der Fingerabdruck-Manager 315 oder seine Unterkomponenten mit einer oder mehreren anderen Hardware-Komponenten kombiniert werden, einschließlich, aber nicht beschränkt auf eine Ein-/Ausgabe-Komponente (I/O), einen Sender-Empfänger, einen Netzwerkserver, eine andere Computereinrichtung, eine oder mehrere andere Komponenten, die in der vorliegenden Offenbarung beschrieben werden, oder eine Kombination davon, in Übereinstimmung mit verschiedenen Aspekten der vorliegenden Offenbarung.
-
Der Sender 320 kann Signale übertragen, die von anderen Komponenten der Computereinrichtung 305 erzeugt werden. In einigen Beispielen kann der Sender 320 zusammen mit einem Empfänger 310 in einem Sender-Empfänger-Modul angeordnet sein. Beispielsweise kann der Sender 320 ein Beispiel für Aspekte des Sender-Empfängers 620 sein, die mit Verweis auf 6 beschrieben werden. Der Sender 320 kann eine einzelne Antenne oder einen Satz von Antennen verwenden.
-
4 zeigt ein Blockdiagramm 400 einer Computereinrichtung 405, die Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Die Computereinrichtung 405 kann ein Beispiel für Aspekte einer Computereinrichtungen 305 oder einer Computereinrichtungen 105, wie hierin beschrieben, sein. Die Computereinrichtung 405 kann einen Empfänger 410, einen Fingerabdruck-Manager 415 und einen Sender 435 enthalten. Die Computereinrichtung 405 kann auch einen oder mehrere Prozessoren enthalten. Jede dieser Komponenten kann miteinander in Kommunikation sein (z.B. über einen oder mehrere Busse).
-
Der Empfänger 410 kann Informationen, wie etwa Pakete, Nutzerdaten oder Steuerungsinformationen empfangen, die verschiedenen Informationskanälen zugeordnet sind (z.B. Steuerungskanäle, Datenkanäle und Informationen in Bezug auf anwendungsverhaltensbezogene Fingerabdrücke usw.). Die Informationen können an andere Komponenten des Computereinrichtung 405 weitergegeben werden. Der Empfänger 410 kann ein Beispiel für Aspekte des Sender-Empfängers 620 sein, der mit Verweis auf 6 beschrieben wird. Der Empfänger 410 kann eine einzelne Antenne oder einen Satz von Antennen verwenden.
-
Der Fingerabdruck-Manager 415 kann ein Beispiel für Aspekte des Fingerabdruck-Managers 315 sein, so wie er hierin beschrieben ist. Der Fingerabdruck-Manager 415 kann eine Überwachungskomponente 420, eine Analysekomponente 425 und eine Sicherheitskomponente 430 enthalten. Der Fingerabdruck-Manager 415 kann ein Beispiel für die hierin beschriebenen Aspekte des Fingerabdruck-Managers 610 sein. Die Überwachungskomponente 420 kann einen Computerprozess überwachen, der sich auf eine Anwendung bezieht, die auf einer Computereinrichtung von einer oder mehreren der Computereinrichtungen läuft. Die Analysekomponente 425 kann eine Datenbank analysieren, die einen Satz von digitalen Fingerabdrücken enthält, wobei sich ein digitaler Fingerabdruck des Satzes von digitalen Fingerabdrücken auf die Anwendung bezieht, wobei der digitale Fingerabdruck einen Hinweis auf einen Satz von Computerprozessen enthält, die in Bezug zu der Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind, und auf der Grundlage des digitalen Fingerabdrucks der Anwendung, bestimmen, dass der Computerprozess im Zusammenhang mit der Anwendung ein anormaler Computerprozess ist. Die Sicherheitskomponente 430 kann, auf der Grundlage des Bestimmens, eine Sicherheitsaktion ausführen, um die Computereinrichtung vor dem anormalen Computerprozess zu schützen.
-
Der Sender 435 kann Signale übertragen, die von anderen Komponenten der Computereinrichtung 405 erzeugt werden. In einigen Beispielen kann der Sender 435 zusammen mit einem Empfänger 410 in einem Sender-Empfänger-Modul angeordnet sein. Beispielsweise kann der Sender 435 ein Beispiel für Aspekte des Sender-Empfängers 620 sein, der mit Verweis auf 6 beschrieben wird. Der Sender 435 kann eine einzelne Antenne oder einen Satz von Antennen verwenden.
-
5 zeigt ein Blockdiagramm 500 eines Fingerabdruck-Managers 505, der Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Der Fingerabdruck-Manager 505 kann ein Beispiel für die hierin beschriebenen Aspekte eines Fingerabdruck-Managers 315, eines Fingerabdruck-Managers 415 oder eines Fingerabdruck-Managers 610 sein. Der Fingerabdruck-Manager 505 kann eine Überwachungskomponente 510, eine Analysekomponente 515, eine Sicherheitskomponente 520, eine Datenbankkomponente 525, eine Aggregationskomponente 530, eine Verwerfen-Komponente 535 und eine Berichtskomponente 540 enthalten. Jedes dieser Module kann direkt oder indirekt miteinander kommunizieren (z.B. über einen oder mehrere Busse).
-
Die Überwachungskomponente 510 kann einen Computerprozess, der in Bezug zu einer Anwendung überwachen, die auf einer Computereinrichtung von der einen oder den mehreren Computereinrichtungen läuft. Die Analysekomponente 515 kann eine Datenbank analysieren, die einen Satz von digitalen Fingerabdrücken enthält, wobei ein digitaler Fingerabdruck von dem Satz von digitalen Fingerabdrücken in Bezug zu der Anwendung steht, wobei der digitale Fingerabdruck einen Hinweis enthält auf einen Satz von Computerprozessen, die in Bezug zu der Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind. In einigen Beispielen kann die Analysekomponente 515 auf der Grundlage des digitalen Fingerabdrucks der Anwendung bestimmen, dass Computerprozess, der in Bezug zu der Anwendung steht, ein anormaler Computerprozess ist. In einigen Beispielen weist der Hinweis eine Bitfolge auf, wobei ein oder mehrere Bits der Bitfolge einem Computerprozess des Satzes von Computerprozessen entsprechen. In einigen Beispielen enthält der digitale Fingerabdruck einen zusätzlichen Hinweis auf einen Satz von zusätzlichen Computerprozessen, die dem Satz von Computerprozessen zugeordnet sind, und der Satz von zusätzlichen Computerprozessen sind als zusätzliche normale Computerprozesse klassifiziert, die dem Satz von Computerprozessen zugeordnet sind.
-
In einigen Beispielen kann die Analysekomponente 515 eine Analyse durchführen auf der Bitfolge, die dem Satz von Computerprozess-Verhaltensweisen entspricht und die von der Computereinrichtung erzeugt wird, und auf der einen oder den mehreren zusätzlichen Bitfolgen, die dem Satz von Computerprozess-Verhalten entsprechen und die von der einen oder den mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen erzeugt werden. In einigen Beispielen kann die Analysekomponente 515 bestimmen, dass der Satz von Computerprozessen als die normalen Computerprozesse für die Anwendung klassifiziert sind, und zwar auf der Grundlage einer Korrelation zwischen der Bitfolge, die dem Satz von Computerprozess-Verhalten entspricht und die von der Computereinrichtung erzeugt wird, und der einen oder den mehreren zusätzlichen Bitfolgen, die dem Satz von Computerprozess-Verhalten entsprechen und die von der einen oder den mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen erzeugt werden. In einigen Beispielen kann die Analysekomponente 515 auf der Grundlage der Korrelation den digitalen Fingerabdruck, der in Bezug zu der Anwendung steht, erzeugen.
-
Die Sicherheitskomponente 520, auf der Grundlage des Bestimmens, eine Sicherheitsaktion auf der Computereinrichtung von der einen oder den mehreren Computereinrichtungen ausführen, um die Computereinrichtung gegen den anormalen Computerprozess zu schützen. In einigen Beispielen kann die Sicherheitskomponente 520) mindestens eines der folgenden durchführen: unter Quarantäne Stellen der Anwendung auf der Computereinrichtung, Verhindern von Zugriff auf ein Netzwerkgerät für die Computereinrichtung, Verhindern von Zugriff auf eines oder mehrere Merkmale (oder Funktionen) der Computereinrichtung, Durchführen einer Schadprogramm-Suche auf der Computereinrichtung, oder eine beliebige Kombination davon. In einigen Beispielen kann die Sicherheitskomponente 520 an eine Computereinrichtung, die einem Informationssicherheits-Nutzer zugeordnet ist, einen Bericht übermitteln, der Informationen enthält über den anormalen Computerprozess, der in Bezug zu der auf der Computereinrichtung laufenden Anwendung steht, und eine wählbare Option zum Ausführen einer zusätzlichen Sicherheitsaktion, die mindestens eine der folgenden aufweist: Verhindern von Zugriff auf ein Netzwerkgerät für die Computereinrichtung, Verhindern von Zugriff auf eines oder mehrere Merkmale (oder Funktionen) der Computereinrichtung oder Durchführung einer Schadprogramm-Suche auf der Computereinrichtung, oder eine beliebige Kombination davon. In einigen Fällen können die eine oder die mehreren Computereinrichtungen auch die Computereinrichtung umfassen, die dem Informationssicherheits-Nutzer zugeordnet ist.
-
Die Datenbankkomponente 525 kann automatisch die Datenbank einschließlich des Satzes von digitalen Fingerabdrücken erzeugen. In einigen Beispielen kann die Datenbankkomponente 525 einen Satz von Computerprozess-Verhaltensweisen überwachen, die dem Satz von Computerprozessen zugeordnet sind. In einigen Beispielen kann die Datenbankkomponente 525 auf der Grundlage des Satzes von Computerprozess-Verhaltensweisen eine Bitfolge erzeugen, die dem Satz von Computerprozessen entspricht, wobei ein oder mehrere Bits der Bitfolge einem Computerprozess von dem Satz von Computerprozessen entsprechen. In einigen Beispielen kann die Datenbankkomponente 525 von einer oder mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen eine oder mehrere zusätzliche Bitfolgen erhalten, die dem Satz von Computerprozessen entsprechen, auf der Grundlage eines zusätzlichen Satzes von Computerprozess-Verhaltensweisen.
-
In einigen Beispielen kann die Datenbankkomponente 525 durch die eine oder die mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen den zusätzlichen Satz von Computerprozess-Verhaltensweisen überwachen, der dem Satz von Computerprozessen zugeordnet ist. In einigen Beispielen kann die Datenbankkomponente 525 auf der Grundlage des zusätzlichen Satzes von Computerprozess-Verhaltensweisen die eine oder die mehreren zusätzlichen Bitfolgen erzeugen, die dem Satz von Computerprozessen entsprechen. In einigen Fällen enthält die Bitfolge, die von der Computereinrichtung von der einen oder den mehreren Computereinrichtungen erzeugt wird, einen partiellen digitalen Fingerabdruck, der sich auf die Anwendung bezieht. In einigen Fällen enthält die eine oder die mehreren zusätzlichen Bitfolgen, die von der einen oder den mehreren zusätzlichen Computereinrichtungen von der einen oder den mehreren Computereinrichtungen erzeugt werden, einen oder mehrere zusätzliche partielle digitale Fingerabdrücke, die sich auf die Anwendung beziehen.
-
Die Aggregationskomponente 530 kann, auf der Grundlage der Korrelation, übereinstimmende Computerprozess-Verhaltensweisen, die dem Satz von Computerprozessen zugeordnet sind, aggregieren. Die Verwerfen-Komponente 535 kann, auf der Grundlage der Korrelation, nicht übereinstimmende Computerprozess-Verhaltensweisen, die dem Satz von Computerprozessen zugeordnet sind, verwerfen. Die Berichtskomponente 540 kann an die Computereinrichtung von der einen oder den mehreren Computereinrichtungen einen Bericht übertragen, der Informationen über den anormalen Computerprozess, der in Bezug zu der auf der Computereinrichtung laufenden Anwendung steht, aufweisen. In einigen Beispielen kann die Berichtskomponente 540 in dem Bericht eine wählbare Option aufnehmen zum Ausführen einer zusätzlichen Sicherheitsaktion, die mindestens eine der folgenden umfasst: Verhindern von Zugriff auf ein Netzwerkgerät für die Computereinrichtung, Verhindern von Zugriff auf eines oder mehrere Merkmale (oder Funktionen) der Computereinrichtung oder Durchführen einer Schadprogramm-Suche auf der Computereinrichtung, oder eine beliebige Kombination davon.
-
6 zeigt ein Schaubild eines Systems 600 einschließlich einer Computereinrichtung 605, die Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Die Computereinrichtung 605 kann ein Beispiel für die Komponenten der Computereinrichtung 305, der Computereinrichtung 405 oder einer Computereinrichtung, so wie diese hierin beschrieben ist, sein oder diese enthalten. Die Computereinrichtung 605 kann Komponenten für bidirektionale Sprach- und Datenkommunikation enthalten, einschließlich Komponenten zum Senden und Empfangen von Kommunikationen, einschließlich eines Fingerabdruck-Managers 610, einer Eingabe-/Ausgabe-Steuereinrichtung 615, eines Sender-Empfängers 620, einer Antenne 625, Datenspeicher 630 und eines Prozessors 640. Diese Komponenten können über einen oder mehrere Busse (z.B. Bus 645) in elektronischer Kommunikation sein.
-
Der Fingerabdruck-Manager 610 kann einen Computerprozess überwachen, der sich auf eine Anwendung bezieht, die auf einer Computereinrichtung von der einen oder den mehreren Computereinrichtungen läuft, eine Datenbank analysieren, die einen Satz von digitalen Fingerabdrücken enthält, wobei ein digitaler Fingerabdruck des Satzes von digitalen Fingerabdrücken in Bezug zu der Anwendung steht, wobei der digitale Fingerabdruck einen Hinweis enthält auf einen Satz von Computerprozessen, die in Bezug zu der Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind, auf der Grundlage des digitalen Fingerabdrucks der Anwendung, bestimmen, dass der mit der Anwendung verbundene Prozess ein anormaler Computerprozess ist, und, auf der Grundlage des Bestimmens, eine Sicherheitsaktion ausführen, um die Computereinrichtung gegen den anormalen Computerprozess zu schützen.
-
Die Eingabe-/Ausgabe-Steuereinrichtung 615 kann Eingangs- und Ausgangssignale für die Computereinrichtung 605 verwalten. Die Eingabe-/Ausgabe-Steuereinrichtung 615 kann auch Peripheriegeräte verwalten, die nicht in die Computereinrichtung 605 integriert sind. In einigen Fällen kann die Eingabe-/Ausgabe-Steuereinrichtung 615 eine physische Verbindung oder einen Port zu einem externen Peripheriegerät darstellen. In einigen Fällen kann die Eingabe-/Ausgabe-Steuereinrichtung 615 ein Betriebssystem, wie etwa iOS, ANDROID, MS-DOS, MS-WINDOWS, OS/2, UNIX, LINUX oder ein anderes bekanntes Betriebssystem verwenden. In anderen Fällen kann die Eingabe-/Ausgabe-Steuereinrichtung 615 ein Modem, eine Tastatur, eine Maus, einen Touchscreen oder eine ähnliche Computereinrichtung darstellen oder mit dieser interagieren. In einigen Fällen kann der E/A-Controller 615 als Teil eines Prozessors implementiert sein. In einigen Fällen kann ein Benutzer über die Eingabe-/Ausgabe-Steuereinrichtung 615 oder über Hardwarekomponenten, die von der Eingabe-/Ausgabe-Steuereinrichtung 615 gesteuert werden, mit der Computereinrichtung 605 interagieren.
-
Der Sender-Empfänger (oder Transceiver) 620 kann bidirektional kommunizieren, über eine oder mehrere Antennen, drahtgebunden oder drahtlos, wie oben beschrieben. Beispielsweise kann der Sender-Empfänger 620 einen drahtlosen Sender-Empfänger darstellen und mit einem anderen drahtlosen Sender-Empfänger bidirektional kommunizieren. Der Sender-Empfänger 620 kann auch ein Modem enthalten, um die Pakete zu modulieren und die modulierten Pakete den Antennen zur Übertragung bereitzustellen und die von den Antennen empfangenen Pakete zu demodulieren. In einigen Fällen kann die Computereinrichtung 605 eine einzelne Antenne 625 enthalten. In einigen Fällen kann die Computereinrichtung 605 jedoch mehr als eine Antenne 625 haben, die in der Lage sein kann, mehrere drahtlose Übertragungen gleichzeitig zu senden oder zu empfangen.
-
Der Datenspeicher 630 kann einen Direktzugriffsspeicher (RAM) und einen Festwertspeicher (ROM) enthalten. Der Datenspeicher 630 kann computerlesbaren, computerausführbaren Code 635 speichern, einschließlich Befehlen, die bei ihrer Ausführung bewirken, dass der Prozessor verschiedene hierin beschriebene Funktionen ausführt. In einigen Fällen kann der Datenspeicher 630 unter anderem ein grundlegendes Ein-/Ausgabesystem (BIOS, basic input/output system) enthalten, das grundlegende Hardware- oder Softwarefunktionen, wie etwa die Interaktion mit Peripheriekomponenten oder Computereinrichtungen, steuern kann. Der Code 635 kann Anweisungen enthalten, um Aspekte der vorliegenden Offenbarung zu implementieren, einschließlich Anweisungen zum Unterstützen des Schutzes gegen anormales Verhalten. Der Code 635 kann in einem nichtflüchtigen computerlesbaren Medium, wie etwa einem Systemspeicher oder einer anderen Art von Speicher gespeichert sein. In einigen Fällen ist der Code 635 möglicherweise nicht direkt durch den Prozessor 640 ausführbar, kann aber einen Computer (z.B. wenn er kompiliert und ausgeführt wird) veranlassen, hierin beschriebene Funktionen auszuführen.
-
Der Prozessor 640 kann eine intelligente Hardwarevorrichtung enthalten (z.B. einen Allzweckprozessor, ein DSP, eine CPU, einen Mikrocontroller, ein ASIC, ein FPGA, eine programmierbare Logikeinrichtung (PLD), eine diskrete Gate- oder Transistor-Logikkomponente, eine diskrete Hardwarekomponente, oder eine beliebige Kombination davon). In einigen Fällen kann der Prozessor 640 so konfiguriert sein, dass er eine Speicheranordnung (memory array) unter Verwendung einer Speicher-Steuereinrichtung betreibt. In anderen Fällen kann eine Speicher-Steuereinrichtung in den Prozessor 640 integriert sein. Der Prozessor 640 kann so konfiguriert werden, dass er in einem Speicher (z.B. dem Speicher 630) gespeicherte computerlesbare Befehle ausführt, um die Computereinrichtung 605 zu veranlassen, verschiedene Funktionen auszuführen (z.B. Funktionen oder Aufgaben, die anwendungsverhaltensbezogene Fingerabdrücke unterstützen).
-
7 zeigt ein Ablaufdiagramm, das ein Verfahren 700 veranschaulicht, das Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Die Operationen des Verfahrens 700 können durch eine Computereinrichtung oder seine Komponenten wie hierin beschrieben implementiert werden. Beispielsweise können die Operationen des Verfahrens 700 von einem Fingerabdruck-Manager durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist. In einigen Beispielen kann eine Computereinrichtung einen Satz von Befehlen ausführen, um die Funktionselemente der Computereinrichtung so zu steuern, dass sie die unten beschriebenen Funktionen ausführen. Zusätzlich oder alternativ kann eine Computereinrichtung Aspekte der unten beschriebenen Funktionen unter Verwendung von Spezial-Hardware ausführen.
-
Bei 705 kann die Computereinrichtung einen Computerprozess überwachen, der sich auf eine Anwendung bezieht, die auf einer Computereinrichtung von einer oder mehreren Computereinrichtungen läuft. Die Operationen von 705 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 705 durch eine Überwachungskomponente durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
Bei 710 kann die Computereinrichtung eine Datenbank analysieren, die einen Satz von digitalen Fingerabdrücken enthält, wobei ein digitaler Fingerabdruck von dem Satz von digitalen Fingerabdrücken in Bezug zu der Anwendung steht, wobei der digitale Fingerabdruck einen Hinweis enthält auf einen Satz von Computerprozessen, die in Bezug zu der Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind. Die Operationen von 710 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 710 durch eine Analysekomponente durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
Bei 715 kann die Computereinrichtung auf der Grundlage des Analysierens bestimmen, dass der in Bezug zu der Anwendung stehende Computerprozess ein anormale Computerprozess ist. Die Operationen von 715 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 715 durch eine Analysekomponente durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
Bei 720 kann die Computereinrichtung, auf der Grundlage des Bestimmens, eine Sicherheitsaktion ausführen, um die Computereinrichtung vor dem anormalen Computerprozess zu schützen. Die Operationen von 720 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 720 durch eine Sicherheitskomponente durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
8 zeigt ein Ablaufdiagramm, das ein Verfahren 800 veranschaulicht, das Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Die Operationen des Verfahrens 800 können durch eine Computereinrichtung oder seine Komponenten, wie hierin beschrieben, implementiert werden. Beispielsweise können die Operationen des Verfahrens 800 durch einen Fingerabdruck-Manager durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist. In einigen Beispielen kann eine Computereinrichtung eine Reihe von Anweisungen zum Steuern der Funktionselemente der Computereinrichtung ausführen, um die unten beschriebenen Funktionen auszuführen. Zusätzlich oder alternativ kann eine Computereinrichtung Aspekte der unten beschriebenen Funktionen unter Verwendung von Spezial-Hardware ausführen.
-
Bei 805 kann die Computereinrichtung eine Reihe von Computerprozess-Verhaltensweisen überwachen, die einem Satz von Computerprozessen zugeordnet sind, die in Bezug zu einer Anwendung stehen. Die Operationen von 805 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 805 von einer Datenbankkomponente durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
Bei 810 kann die Computereinrichtung auf der Grundlage des Satzes von Computerprozess-Verhaltensweisen eine Bitfolge erzeugen, die dem Satz von Computerprozessen entspricht, wobei ein oder mehrere Bits von der Bitfolge einem Computerprozess von dem Satz von Computerprozessen entsprechen. Die Operationen von 810 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 810 durch eine Datenbankkomponente durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
Bei 815 kann die Computereinrichtung von einer oder mehreren zusätzlichen Computereinrichtungen eine oder mehrere zusätzlichen Bitfolgen erhalten, die dem Satz von Computerprozessen entsprechen, auf der Grundlage von einem zusätzlichen Satz von Computerprozess-Verhaltensweisen. Die Operationen von 815 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 815 durch eine Datenbankkomponente ausgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
Bei 820 kann die Computereinrichtung eine Analyse durchführen auf der Bitfolge, die dem Satz von Computerprozess-Verhalten entspricht und die durch die Computereinrichtung erzeugt wird, und auf der einen oder den mehreren zusätzlichen Bitfolgen, die dem Satz von Computerprozess-Verhalten entsprechen und die durch die eine oder die mehreren zusätzlichen Computereinrichtungen erzeugt werden. Die Operationen von 820 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 820 durch eine Datenbankkomponente durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
Bei 825 kann die Computereinrichtung auf der Grundlage der Analyse einen in Bezug zu der Anwendung stehenden, digitalen Fingerabdruck erzeugen. Die Operationen von 825 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 825 durch eine Datenbankkomponente durchgeführt werden, wie sie mit Bezug auf 3 bis 6 beschrieben sind.
-
Bei 830 kann die Einrichtung automatisch eine Datenbank erzeugen, die einen Satz digitaler Fingerabdrücke enthält, einschließlich des digitalen Fingerabdrucks, der in Bezug zu der Anwendung steht. Die Operationen von 830 können gemäß den hierin beschriebenen Verfahren durchgeführt werden. In einigen Beispielen können Aspekte der Operationen von 830 durch eine Datenbankkomponente durchgeführt werden, so wie das mit Verweis auf die 3 bis 6 beschrieben ist.
-
Es sollte angemerkt werden, dass die hierin beschriebenen Verfahren mögliche Implementierungen beschreiben, und dass die Operationen und Schritte neu angeordnet oder anderweitig modifiziert werden können und dass andere Implementierungen möglich sind. Ferner können Aspekte aus zwei oder mehreren der Verfahren kombiniert werden.
-
9 zeigt ein Blockschaubild eines Computersystems 900, das Fingerabdrücke des Verhaltens von Anwendungen unterstützt, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Beispielsweise kann das gesamte oder ein Teil des Computersystems 900 eine oder mehrere der hierin beschriebenen Operationen (wie etwa eine oder mehrere der Operationen, die in den 1 bis 8 beschrieben sind) allein oder in Kombination mit anderen Elementen durchführen oder ein Mittel dazu sein. Das gesamte oder ein Teil des Computersystems 900 kann auch andere hierin beschriebene und veranschaulichte Operationen, Verfahren oder Prozesse ausführen oder ein Mittel zu deren Ausführung sein.
-
Das Computersystem 900 kann eine Einzel- oder Multiprozessor-Computereinrichtung oder ein Einzel- oder Multiprozessor-Computersystem sein, die/das in der Lage ist, computerlesbare Befehle auszuführen. Das Computersystem 900 kann ein Beispiel für die Computereinrichtung 105 oder den Server 120 sein, die mit Verweis auf 1 beschrieben sind. Beispielsweise kann das Computersystem 900 folgendes umfassen, ist jedoch nicht darauf beschränkt: Arbeitsstationen, Laptops, Client-seitige Endgeräte (oder Terminals), Server, verteilte Computersysteme, Handgeräte oder jedes beliebige Computersystem oder Gerät. In einigen Fällen kann das Computersystem 900 mindestens einen Zentralprozessor 910 und einen Systemspeicher 915 enthalten. Der Zentralprozessor 910 kann jede Art oder Form einer physikalischen Verarbeitungseinheit (z.B. eine hardwareimplementierte Zentralverarbeitungseinheit (central processing unit)) enthalten, die in der Lage ist, Daten zu verarbeiten oder Anweisungen zu interpretieren und auszuführen. In einigen Fällen kann der Zentralprozessor 910 Anweisungen von einer Computersoftwareanwendung empfangen. Diese Anweisungen können den Zentralprozessor 910 veranlassen, die Funktionen von einem oder mehreren der hier beispielhaft beschriebenen und veranschaulichten Fälle auszuführen. Der Systemspeicher 915 kann jede Art oder Form von flüchtigem oder nichtflüchtigem Speichergerät oder Medium enthalten, das in der Lage ist, Daten und andere computerlesbare Befehle zu speichern. Beispiele für den Systemspeicher 915 sind RAM, ROM, Flash-Speicher oder jedes andere geeignete Speichergerät. In einem Beispiel kann ein Fingerabdruck-Manager 115-e in den Systemspeicher 915 geladen werden.
-
In einigen Fällen kann das Computersystem 900 einen Bus (oder ein Bussystem) 905 enthalten, der wichtige Untersysteme des Computersystems 900 miteinander verbindet, wie z.B. den Zentralprozessor 910, den Systemspeicher 915, eine Eingabe-/Ausgabe-Steuereinrichtung 920, ein externes Audiogerät, wie etwa ein Lautsprechersystem 925, über eine Audioausgabeschnittstelle 930, ein externes Gerät, wie etwa einen Anzeigeschirm 935 über einen Bildschirmadapter 940, ein Eingabegerät 945 (z.B. ein Fernbedienungsgerät, das mit einer Eingabe-Steuereinrichtung 950 als Schnittstelle verbunden ist), mehrere USB (universal serial bus) -Geräte 965 (verbunden mit einer USB-Steuereinrichtung 970 als Schnittstelle verbunden sind) und eine Speicherschnittstelle 980. Ebenfalls enthalten sind mindestens ein Sensor 955, der über eine Sensor-Steuereinrichtung 960 an den Bus 905 angeschlossen ist, und eine Netzwerkschnittstelle 985, direkt an den Bus 905 angeschlossen ist.
-
Der Bus 905 ermöglicht die Datenkommunikation zwischen dem Zentralprozessor 910 und dem Systemspeicher 915, der einen ROM- oder Flash-Speicher und ein RAM enthalten kann, so wie das bereits erwähnt worden ist. Der RAM ist im Allgemeinen der Hauptspeicher, in den das Betriebssystem und die Anwendungsprogramme geladen werden. Der ROM- oder Flash-Speicher kann neben anderem Code auch ein BIOS oder UEFI enthalten, das grundlegende Hardwarefunktionen, wie etwa die Interaktion mit peripheren Komponenten (oder Peripheriegeräten) oder Geräten steuert. Anwendungen (z.B. die Anwendungen 110), die in dem Computersystem 900 resident sind, können im Allgemeinen auf einem nichtflüchtigen computerlesbaren Medium, wie etwa einem Festplattenlaufwerk (z.B. einer Festplatte 975) oder einem anderen Speichermedium, gespeichert sein und darauf zugegriffen werden. Zusätzlich können Anwendungen in Form von elektronischen Signalen vorliegen, die in Übereinstimmung mit der Anwendung und der Datenkommunikationstechnologie moduliert werden, wenn auf sie über die Schnittstelle 985 zugegriffen wird.
-
Die Speicherschnittstelle 980 kann, wie die anderen Speicherschnittstellen des Computersystems 900, an ein computerlesbares Standardmedium zum Speichern und/oder Abrufen von Informationen angeschlossen werden, wie etwa das Festplattenlaufwerk 975. Das Festplattenlaufwerk 975 kann ein Teil des Computersystems 900 sein, oder separat und über andere Schnittstellensysteme zugänglich sein. Die Netzwerkschnittstelle 985 kann eine direkte Verbindung zu einem entfernten Server über eine direkte Netzwerkverbindung zum Internet über einen POP (point of presence) herstellen. Die Netzwerkschnittstelle 985 kann eine solche Verbindung unter Verwendung drahtloser Techniken bereitstellen, einschließlich einer digitalen zellularen Telefonverbindung, einer CDPD (cellular digital packet data) -Verbindung, einer digitalen Satellitendatenverbindung oder dergleichen.
-
Viele andere Geräte oder Untersysteme können auf ähnliche Weise angeschlossen werden (z.B. ein Unterhaltungssystem, eine Computereinrichtung, eine ferngesteuerte Kameras, ein drahtloser Schlüsselanhänger, an der Wand montierte Nutzerschnittstelleneinrichtungen, ein Zellfunkmodul, eine Batterie, eine Alarmsirene, ein Türschloss, ein Beleuchtungssystem, ein Thermostat, ein Bildschirm (oder Monitor) für Haushaltsgeräte, ein Bildschirm (oder Monitor) für Versorgungseinrichtungen usw.). Umgekehrt müssen nicht alle in 9 gezeigten Geräte vorhanden sein, um die vorliegenden Techniken zu praktizieren. Die Geräte und Subsysteme können auf andere Weise miteinander verbunden werden als in 9 dargestellt. Der Aspekt einiger Operationen eines Systems wie dem in 9 gezeigten ist im Stand der Technik ohne weiteres bekannt und wird in dieser Anmeldung nicht in Einzelheiten besprochen. Der Code zum Implementieren der vorliegenden Offenbarung kann in einem nichtflüchtigen computerlesbaren Medium, wie etwa einem oder mehreren von den Systemspeichern 915 oder der Festplatte 975 gespeichert werden. Das auf dem Computersystem 900 bereitgestellte Betriebssystem kann iOS, ANDROID, MS-DOS, MS-WINDOWS, OS/2, UNIX®, LINUX oder ein anderes bekanntes Betriebssystem sein.
-
Darüber hinaus werden in Bezug auf die hierin beschriebenen Signale die Fachleute in dem technischen Gebiet, erkennen, dass ein Signal direkt von einem ersten Block zu einem zweiten Block übertragen werden kann oder dass ein Signal zwischen den Blöcken modifiziert (z.B. verstärkt, gedämpft, verzögert, zwischengespeichert, gepuffert, invertiert, gefiltert oder anderweitig modifiziert) werden kann. Obwohl die Signale der oben beschriebenen Verkörperung als von einem Block zum nächsten übertragen charakterisiert werden, können andere Fälle der vorliegenden Techniken modifizierte Signale anstelle solcher direkt übertragenen Signale enthalten, solange der informationelle und/oder funktionelle Aspekt des Signals zwischen den Blöcken übertragen wird. Bis zu einem gewissen Grad kann ein Signaleingang an einem zweiten Block als ein zweites Signal konzeptualisiert werden, das von einem ersten Signalausgang eines ersten Blocks ausgegeben wird aufgrund von physikalischen Beschränkungen der beteiligten Schaltungstechnik (z.B. wird es zwangsläufig eine gewisse Dämpfung und Verzögerung geben). Daher schließt ein zweites, von einem ersten Signal abgeleitetes Signal, wie es hierin verwendet wird, das erste Signal oder irgendwelche Modifikationen des ersten Signals ein, sei es aufgrund von Schaltungsbeschränkungen oder aufgrund des Durchgangs durch andere Schaltungselemente, die den informationellen und/oder funktionellen finalen Aspekt des ersten Signals nicht verändern.
-
Die dem Computersystem 900 zugeordneten Signale können drahtlose Kommunikationssignale, wie Funkfrequenz, Elektromagnetik, Local Area Network (LAN), Wide Area Network (WAN), Metropolitan Area Network (MAN), Virtual Private Network (VPN), drahtloses Netzwerk (z.B. unter Verwendung von 802.11), zellulares Netzwerk (z.B. unter Verwendung von 3G, Long Term Evolution (LTE), Next Generation 5G New Radio (NR)) und/oder andere Signale umfassen. Die Netzwerkschnittstelle 985 kann eines oder mehrere der folgenden Signale ermöglichen: drahtloses WAN (WWAN) (z.B. GSM, CDMA und WCDMA), drahtloses LAN (WLAN) (z.B. einschließlich BLUETOOTH® und Wi-Fi), WMAN (WiMAX) für mobile Kommunikationen, Antennen für WPAN (wireless personal area network) -Anwendungen (einschließlich Radiofrequenz-Identifikation (RFID) und UWB) usw.
-
Die Eingabe-/Ausgabe-Steuereinrichtung 920 kann in Verbindung mit der Netzwerkschnittstelle 1085 oder der Speicherschnittstelle 980 oder mit beiden arbeiten. Die Netzwerkschnittstelle 985 kann das Computersystem 900 ertüchtigen mit der Fähigkeit, mit Client-Geräten (z.B. Einrichtung 105 von 1) oder anderen Geräten über das Netz 130 von 1 oder beiden zu kommunizieren. Die Netzwerkschnittstelle 985 kann drahtgebundene oder drahtlose Netzwerkverbindungen oder beides bereitstellen. In einigen Fällen kann die Netzwerkschnittstelle 985 einen Ethernet-Adapter oder Fiber-Channel-Adapter enthalten. Die Speicherschnittstelle 980 kann es dem Computersystem 900 ermöglichen, auf eines oder mehrere Datenspeichergeräte zuzugreifen. Das eine oder die mehreren Datenspeichergeräte können jeweils zwei oder mehr Datenschichten enthalten. Die Speicherschnittstelle 980 kann einen oder mehrere Ethernet-Adapter, einen Fiber-Channel-Adapter, einen FCP (fiber channel protocol) -Adapter, einen SCSI (small Computer system interface) - Adapter und einen Internet-SCSI (iSCSI) -Protokolladapter enthalten.
-
10 zeigt ein Blockschaubild von einer beispielhaften Netzwerkarchitektur 1000, in der Client-Systeme 1005, 1010, 1015 und Server 1020-a, 1020-b an ein Netzwerk 1030 gekoppelt sein können, um die Fingerabdrücke des Verhaltens von Anwendungen zu unterstützen, in Übereinstimmung mit Aspekten der vorliegenden Offenbarung. Wie oben vorgesehen, kann die gesamte oder ein Teil der Netzwerkarchitektur 1000 entweder allein oder in Kombination mit anderen Elementen eine oder mehrere der hier offengelegten Operationen durchführen oder ein Mittel zu deren Durchführung sein (wie etwa eine oder mehrere der in den 2, 7 oder 8 dargestellten Operationen). Die gesamte oder ein Teil der Netzwerkarchitektur 1000 kann auch verwendet werden, um andere in dieser Offenbarung dargelegten Operationen und Merkmale durchzuführen oder ein Mittel zu deren Durchführung zu sein.
-
Die Client-Systeme 1005, 1010, 1015 können jede Art oder Form von Computereinrichtung oder -system darstellen, wie etwa beispielhaft in dem Computersystem 900 in 9. In ähnlicher Weise können die Server 1020-a, 1020-b Computereinrichtungen oder -systeme darstellen, wie z.B. Anwendungsserver oder Datenbankserver, die eingerichtet sind, um verschiedene Datenbankdienste bereitzustellen und Softwareanwendungen auszuführen. Das Netzwerk 1030 kann jedes Telekommunikations- oder Computernetzwerk repräsentieren, einschließlich z.B. ein Intranet, ein WAN, ein LAN, ein Personal Area Network (PAN), ein zellulares Netzwerk (z.B. LTE, LTE-Advanced (LTE-A), Next Generation 5G NR Netzwerk oder das Internet. In einigen Fällen können die Client-Systeme 1005, 1010, 1015 und der Server 1020-a, 1020-b die gesamte oder einen Teil der Umgebung 100 aus 1 umfassen.
-
Der Fingerabdruck-Manager 115-f kann sich innerhalb von einem der Client-Systeme 1005, 1010 oder 1015 oder einer beliebigen Kombination davon befinden, um die vorliegenden Techniken zu implementieren. Der Fingerabdruck-Manager 115-g kann ein Beispiel für die in den 1, 3 bis 6 und 9 dargestellten und beschriebenen Fingerabdruck-Manager 115 sein. Der Fingerabdruck-Manager 115-f kann einen Computerprozess überwachen, der in Bezug zu einer Anwendung steht, die auf einem Client-System (z.B. dem Client-System 1005) läuft, und eine Datenbank analysieren, die einen Satz von digitalen Fingerabdrücken enthält, wobei ein digitaler Fingerabdruck von dem Satz von digitalen Fingerabdrücken in Bezug zu der Anwendung steht. Der digitale Fingerabdruck kann einen Hinweis enthalten auf einen Satz von Computerprozessen, die in Bezug zu der auf dem Client-System (z.B. dem Client-System 1005) laufenden Anwendung stehen und die als normale Computerprozesse für die Anwendung klassifiziert sind. In einigen Fällen kann der Fingerabdruck-Manager 115-f, zumindest teilweise auf der Grundlage des digitalen Fingerabdrucks der Anwendung, bestimmen, dass der Computerprozess, der zu der auf dem Client-System (z.B. dem Client-System 1005) laufenden Anwendung in Bezug steht, ein anormaler Computerprozess ist, und, zumindest teilweise auf der Grundlage des Bestimmens, eine Sicherheitsaktion auf dem Client-System (z.B. dem Client-System 1005) ausführen, um das Client-System vor dem anormalen Computerprozess zu schützen. Alternativ kann sich der Fingerabdruck-Manager 115-f wahlweise in einem der Server 1020-a oder 1020-b befinden, um die vorliegenden Techniken zu implementieren. Der Fingerabdruck-Manager 115-g kann ein Beispiel für den in den 1, 3 bis 6 oder 9 dargestellten und beschriebenen Fingerabdruck-Manager 115 sein.
-
Der Server 1020-a kann ferner so dargestellt sein, dass er die Speichergeräte 1025-a-1 bis 1025-a-1 direkt angeschlossen aufweist, und der Server 1020-b ist mit den Speichergeräten 1025-b-1 bis 1025-b-k, die direkt angeschlossen sind, dargestellt. Die SAN Struktur 1040 unterstützt den Zugriff auf die Speichergeräte 1035-1 bis 1035-m durch die Server 1020-a, 1020-b und somit durch die Client-Systeme 1005, 1010 und 1015 über das Netzwerk 1030. Die intelligente Speicheranordnung (intelligent memory array) 1045 ist auch als Beispiel gezeigt für eine bestimmte Speichereinrichtung, die über die SAN Struktur 1040 zugreifbar ist. Mit Verweis auf das Computersystem 900 können die Netzwerkschnittstelle 985 oder ein anderes Mittel oder ein anderes Verfahren verwendet werden, um die Konnektivität von jedem der Client-Systeme 1005, 1010 und 1015 zu dem Netzwerk 1030 herzustellen.
-
Mit Verweis auf das Computersystem 600 können der Sender-Empfänger 620 oder ein anderes Mittel oder Verfahren verwendet werden, um die Konnektivität von jedem der Client-Systeme 1005, 1010 und 1015 zu dem Netzwerk 1030 herzustellen. Die Client-Systeme 1005, 1010 und 1015 sind in der Lage, auf Informationen auf dem Server 1020-a oder dem Server 1020-b zuzugreifen, z.B. mit einem Web-Browser oder einer anderen Client-Software. Ein solcher Client ermöglicht es den Client-Systemen 1005, 1010 und 1015, auf Daten zuzugreifen, die auf dem Server 1020-a oder 1020-b oder einem der Speichergeräte 1025-a-1 bis 1025-a-j, 1025-b-1 bis 1025-b-k, 1035-1 bis 1035-m oder der intelligenten Speicheranordnung 1045 gehostet werden. 10 zeigt die Nutzung eines Netzwerks, wie etwa das Internet, für den Datenaustausch, jedoch sind die vorliegenden Techniken nicht auf das Internet oder eine bestimmte netzwerkbasierte Umgebung beschränkt.
-
In einigen Fällen können alle oder ein Teil von einem oder mehreren der hierin offenbarten, beispielhaften Fälle als Computerprogramm kodiert sein und auf den Server 1020-a oder Server 1020-b oder die Speichergeräte 1025-a-1 bis 1025-a-j, die Speichergeräte 1035-1 bis 1035-m, die intelligente Speicheranordnung 1045 oder eine beliebige Kombination davon geladen und ausgeführt werden. Alle oder ein Teil von einem oder mehreren der hierin offenbarten, beispielhaften Fälle können auch als Computerprogramm kodiert werden, das von dem Server 1020-a ausgeführt wird oder in dem Server 1020-b gespeichert ist und über das Netzwerk 1030 an die Client-Systeme 1005, 1010 und 1015 verteilt wird. Wie oben ausgeführt, können das Computersystem 900 und/oder eine oder mehrere Komponenten der Netzwerkarchitektur 1000 allein oder in Kombination mit anderen Elementen eine oder mehrere Operationen eines beispielhaften Verfahrens zum Verhindern von Schadprogrammen auf Computereinrichtungen ausführen und/oder ein Mittel zu deren Ausführung sein.
-
Während die vorstehende Offenbarung verschiedene Fälle unter Verwendung von spezifischen Blockschaubildern, Ablaufdiagrammen, und Beispielen darstellt, kann jede Komponente eines Blockdiagramm, jeder Schritt eines Ablaufdiagramms, jede Operation und/oder jede Komponente, die hierin beschrieben und/oder veranschaulicht sind, einzeln und/oder kollektiv unter Verwendung von einer breiten Palette von Hardware-, Software- oder Firmware-Konfigurationen (oder einer Kombination davon) implementiert werden. Zusätzlich sollte jede Offenbarung von Komponenten, die in anderen Komponenten enthalten sind, als beispielhaft angesehen werden, da viele andere Architekturen implementiert werden können, um die gleiche Funktionalität zu erreichen.
-
Die hierin beschriebenen und/oder veranschaulichten Prozessparameter und Schrittfolgen sind nur hierin als Beispiel angegeben und/oder veranschaulicht und können variiert werden, so wie das gewünscht wird. Während beispielsweise die hier dargestellten und/oder beschriebenen Schritte in einer bestimmten Reihenfolge gezeigt oder besprochen sind, müssen diese Schritte nicht unbedingt in der dargestellten oder besprochenen Reihenfolge durchgeführt werden. Die verschiedenen beispielhaften Verfahren, die hierin beschrieben und/oder veranschaulicht werden, können auch einen oder mehrere der hierin beschriebenen oder veranschaulichten Schritte auslassen oder zusätzliche Schritte zusätzlich zu den angegebenen enthalten.
-
Des Weiteren, während hierin verschiedene Fälle im Zusammenhang mit voll funktionsfähigen Computersystemen beschrieben und/oder veranschaulicht wurden, können einer oder mehrere dieser exemplarischen Fälle als Programmprodukt in einer Vielfalt von Formen verbreitet (oder verteilt) werden, unabhängig von der bestimmten Art der computerlesbaren Medien, die zum tatsächlichen Durchführen der Verbreitung (oder Verteilung) verwendet werden. Die hierin offengelegten Fälle können auch unter Verwendung von Softwarekomponenten implementiert werden, die bestimmte Aufgaben erfüllen. Diese Softwarekomponenten können Skript-, Stapel- oder andere ausführbare Dateien umfassen, die auf einem computerlesbaren Speichermedium oder in einem Computersystem gespeichert sein können. In einigen Fällen können diese Softwarekomponenten ein Computersystem so konfigurieren, dass es einen oder mehrere der hierin offenbarten, beispielhaften Fälle ausführt.
-
Die verschiedenen veranschaulichenden Blöcke und Module, die im Zusammenhang mit der Offenbarung hierin beschrieben werden, können implementiert oder ausgeführt werden mit: einem Allzweckprozessor, einem DSP, einem ASIC, einem FPGA oder einer anderen programmierbaren Logikeinrichtung (PLD), diskreter Gate- oder Transistorlogik, diskreten Hardwarekomponenten oder einer beliebigen Kombination davon, die dazu bestimmt sind, die hierin beschriebenen Funktionen zu erfüllen. Ein Allzweckprozessor kann ein Mikroprozessor sein, aber alternativ kann der Prozessor jeder herkömmliche Prozessor, Controller, Mikrocontroller oder Zustandmaschine sein. Ein Prozessor kann auch als eine Kombination von Computereinrichtungen implementiert sein (z.B. eine Kombination aus einem DSP und einem Mikroprozessor, mehrere Mikroprozessoren, ein oder mehrere Mikroprozessoren in Verbindung mit einem DSP-Kern oder jede andere derartige Konfiguration).
-
Die hierin beschriebenen Funktionen können in Hardware, Software, die von einem Prozessor ausgeführt wird, Firmware oder einer beliebigen Kombination davon implementiert sein. Wenn sie in Software implementiert sind, die von einem Prozessor ausgeführt wird, können die Funktionen auf einem computerlesbaren Medium gespeichert oder als eine oder mehrere Instruktionen oder Code übertragen werden. Weitere Beispiele und Implementierungen fallen in den Schutzbereich der Offenbarung und der beigefügten Ansprüche. Beispielsweise können aufgrund der Art der Software die oben beschriebenen Funktionen mit Hilfe von Software, die von einem Prozessor ausgeführt wird, Hardware, Firmware, Festverdrahtung oder Kombinationen davon implementiert werden. Merkmale, die Funktionen implementieren, können sich auch physisch an verschiedenen Positionen befinden, einschließlich dass sie so verteilt sind, dass Teile der Funktionen an verschiedenen physischen Orten implementiert sind.
-
Zu den computerlesbaren Medien gehören sowohl nichtflüchtige Computerspeichermedien als auch Kommunikationsmedien einschließlich jedes beliebigen Mediums, das die Übertragung eines Computerprogramms von einem Ort zum anderen erleichtert. Ein nichtflüchtiges Speichermedium kann jedes verfügbare Medium sein, auf das von einem Computer für allgemeine oder spezielle Zwecke zugegriffen werden kann. Als Beispiele, ohne Einschränkung, können nichtflüchtige computerlesbare Medien folgendes umfassen: RAM, Nur-Lese-Speicher (ROM, read only memory), elektrisch löschbarer programmierbarer Nur-Lese-Speicher (EEPROM, electrically erasable programmable read only memory), Flash-Speicher, Compact-Disk (CD) -ROM oder andere optische Plattenspeicher, Magnetplattenspeicher oder andere magnetische Speichergeräte oder jedes andere nichtflüchtige Medium sein, das zum Übertragen oder Speichern von gewünschten Programmcodemittel in Form von Befehlen oder Datenstrukturen verwendet werden kann und auf das von einem Allzweck-Computer (general purpose computer) oder Spezialzweck-Computer (special purpose computer) oder einem Allzweck-Prozessor oder Spezialzweck-Prozessor zugegriffen werden kann. Außerdem wird jede Verbindung ordnungsgemäß als computerlesbares Medium bezeichnet. Wenn die Software beispielsweise von einer Website, einem Server oder einer anderen entfernten Quelle unter Verwendung eines Koaxialkabels, Glasfaserkabels, einer verdrillten Zweidrahtleitung, einer digitalen Teilnehmerleitung (DSL) oder drahtloser Technologien, wie etwa Infrarot, Funk und Mikrowelle übertragen wird, dann sind das Koaxialkabel, das Glasfaserkabel, die verdrillte Zweidrahtleitung, DSL oder die drahtlosen Technologien, wie etwa Infrarot, Funk und Mikrowelle, in der Definition des Mediums enthalten. Platten und Datenträger, wie sie hierin verwendet werden, umfassen CD, Laserplatte, optische Platte, DVD (digital versatile disc), Diskette und Blu-ray Disc, wobei Platten (disks) Daten normalerweise magnetisch reproduzieren, während Platten (discs) Daten optisch mit Lasern reproduzieren. Kombinationen der oben genannten Elemente sind ebenfalls im Bereich der computerlesbaren Medien enthalten.
-
Die vorstehende Beschreibung wurde zum Zweck von Erläuterungen mit Bezug auf spezifische Fälle beschrieben. Die vorstehenden Erläuterungen sollen jedoch weder erschöpfend sein noch die Erfindung auf die genauen Formen der Offenbarung beschränken. Viele Modifikationen und Variationen sind im Hinblick auf die obigen Lehren möglich. Die Fälle wurden ausgewählt und beschrieben, um die Prinzipien der vorliegenden Techniken und ihre praktischen Anwendungen so gut wie möglich zu erläutern, damit andere Fachleute auf diesem technischen Gebiet befähigt werden, die vorliegenden Techniken und die verschiedenen Fälle mit den verschiedenen Modifikationen, die für die in Betracht gezogene besondere Verwendung geeignet sind, bestmöglich nutzen können.
-
Sofern nicht anders angegeben, sind die Begriffe „ein“ oder „eine“, wie sie in der Beschreibung und in den Patentansprüchen verwendet werden, so zu verstehen, dass sie „mindestens eines von“ bedeuten. Zusätzlich dazu sind aus Gründen der Benutzerfreundlichkeit die Wörter „einschließlich“ und „mit“, wie sie in der Beschreibung und in den Patentansprüchen verwendet werden, austauschbar mit dem Wort „umfassend“ und haben dieselbe Bedeutung wie dieses. Darüber hinaus ist der Begriff „auf der Grundlage von“, wie er in der Beschreibung und in den Patentansprüchen verwendet wird, so auszulegen, dass er „auf der Grundlage von zumindest“ bedeutet.
-
So wie er hierin verwendet wird, kann sich der Begriff „Sicherheitsaktion“ (oder Sicherheitsmaßnahme) eine beliebige Anzahl von Aktionen bezeichnen, die die hierin beschriebenen Systeme nach dem Bestimmen einer Paketinjektion durchführen können. Beispielsweise kann es zu den Arten von Sicherheitsaktionen gehören, das Paket daran zu hindern, irgendwelche Aktionen auf der Computereinrichtung durchzuführen, einen Administrator auf die potenzielle Bösartigkeit der Verbindung hinzuweisen, eine sich auf die Verbindung beziehende Datei unter Quarantäne zu stellen, die Datei zu löschen, einen Download der Datei zu blockieren und/oder einen Nutzer vor der Verbindung zu warnen. Zusätzlich können die hierin beschriebenen Systeme die Sicherheitsaktion auf anderen Objekten als Dateien ausführen. Beispielsweise können die hierin beschriebenen Systeme bösartige URLs und/oder Internet-Protokoll-Adressen (IP-Adressen) auf eine schwarze Liste setzen. Somit können die Sicherheitsaktionen in Verbindung mit den hierin beschriebenen Verfahren und Systemen die Sicherheit und Betriebsintegrität von einer oder mehreren Computereinrichtungen verbessern, indem sie die Hardware, Firmware, Software oder eine Kombination davon vor böswilligen Angriffen schützen. Es wird darauf hingewiesen, dass dies keine erschöpfende Liste der Arten von Sicherheitsmaßnahmen ist, die von den hierin beschriebenen Systemen durchgeführt werden können. Andere Sicherheitsaktionen sind ebenfalls in dieser Offenbarung enthalten.