DE112021004808T5 - Erkennen von malware durch analyse verteilter telemetriedaten - Google Patents

Erkennen von malware durch analyse verteilter telemetriedaten Download PDF

Info

Publication number
DE112021004808T5
DE112021004808T5 DE112021004808.2T DE112021004808T DE112021004808T5 DE 112021004808 T5 DE112021004808 T5 DE 112021004808T5 DE 112021004808 T DE112021004808 T DE 112021004808T DE 112021004808 T5 DE112021004808 T5 DE 112021004808T5
Authority
DE
Germany
Prior art keywords
neural network
federated
trained neural
processors
network system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112021004808.2T
Other languages
English (en)
Inventor
Arjun Udupi Raghavendra
Tim Uwe Scheideler
Matthias SEUL
Andrea Giovannini
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyndryl Inc
Original Assignee
Kyndryl Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kyndryl Inc filed Critical Kyndryl Inc
Publication of DE112021004808T5 publication Critical patent/DE112021004808T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/098Distributed learning, e.g. federated learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Virology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Es werden ein Verfahren, ein Computerprogrammprodukt und ein System zum Erkennen eines bösartigen Prozesses durch eine ausgewählte Instanz eines Anti-Malware-Systems bereitgestellt. Das Verfahren beinhaltet das Untersuchen eines Prozesses durch einen oder mehrere Prozessoren auf Indicators of Compromise für den Prozess. Die Verfahren beinhalten ferner das Ermitteln einer Kategorisierung des Prozesses durch einen oder mehrere Prozessoren, basierend auf einem Ergebnis der Untersuchung. In Reaktion auf das Ermitteln, dass die Kategorisierung des Prozesses nicht mit einem bekannten wohlwollenden Prozess und einem bekannten bösartigen Prozess übereinstimmt, beinhaltet das Verfahren ferner das Ausführen des Prozesses in einer sicheren Enklave durch einen oder mehrere Prozessoren. Die Verfahren beinhaltet ferner das Erfassen von Telemetriedaten aus der Ausführung des Prozesses in der sicheren Enklave durch einen oder mehrere Prozessoren. Das Verfahren beinhaltet ferner das Übergeben der erfassten Telemetriedaten durch einen oder mehrere Prozessoren an ein Lokal-Trainiertes-Neuronales-Netz-System.

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich allgemein auf das Gebiet der Erkennung von Malware und insbesondere auf das Erkennen eines bösartigen Prozesses durch eine ausgewählte Instanz eines Anti-Malware-Systems.
  • Cyber-Sicherheitsangriffe gehören seit Jahren zu den obersten Prioritäten von Regierungsorganisationen und Organisationen und Unternehmen der Informationstechnologie (IT). Die Rolle des Chief Information Security Officer (CISO) ist in jeder IT-Organisation gegeben. Die meisten der auf dem Markt erhältlichen Lösungen für die Überwachung von Sicherheitsinformationen und Ereignissen (security Information and event monitoring, SIEM) erfordern eine Reihe komplexer Korrelationsregeln, die von hochqualifiziertem Personal überwacht und abgestimmt werden, um potenzielle Sicherheitsbedrohungen zu erkennen, die zumindest in einem Teil des Unternehmens zu Sicherheitsvorfällen führen können. Gemäß der Datenschutz-Grundverordnung (general and data security regulation, GDPR) können Unternehmen, die in der Europäischen Union operieren, hohen Geldstrafen gegenüberstehen, wenn sie es versäumen, Kunden- und/oder Mitarbeiterdaten zu schützen. Der Schutz von Unternehmensdaten ist jedoch nicht lediglich ein Thema für in Europa ansässige Unternehmen und Regierungsorganisationen, sondern für alle Einrichtungen, die weltweit mit Daten zu tun haben.
  • Typischerweise kann Malware über eine Netzwerkverbindung oder ein lokal angeschlossenes Speichermedium empfangen und durch eine Art von Ereignis aktiviert werden. Zum Beispiel wird ein Programm in der Datenverarbeitungsumgebung (d.h. als Prozess des Betriebssystems) gestartet. Eine Möglichkeit, solche potenziell unerlaubten Prozesse zu kontrollieren, ist das so genannte Sandboxing, bei dem unbekannte Prozesse in einer geschützten Umgebung ausgeführt werden können (d. h. in einer Datenverarbeitungsumgebung, die die übrigen Prozesse, das Betriebssystem und die Daten nicht infiziert) und möglicherweise eliminiert werden können, ohne dem zugrunde liegenden Computersystem zu schaden. Häufig wird die Malware-Sandbox und die Ausführung unbekannter Dateien/Prozesse als zentralisierte Sandbox umgesetzt, in der Regel in einer virtuellen Appliance, wobei die unbekannten Dateien und Codes ausgeführt werden, um das Verhalten der unbekannten Dateien und der Prozessausführung zu verstehen und auch Indicators of Compromise (loC) im Zusammenhang mit unbekannter Malware zu erfassen und das Malware-Verhalten ferner zu analysieren.
  • Solche zentralen Umsetzungen können auch ein Problem erstellen, da das zentrale Malware-Sandboxing-System zu einem Engpass für das Testen der Ausführung unbekannter Dateien werden kann, da die parallele Ausführung unbekannter Dateien in einer sicheren Enklave eine leistungsfähigere CPU, mehr Speicher und möglicherweise auch einen größeren Speicher erfordert. Eine zentrale Umsetzung kann auch die Größe und die Ressourcen von zentralisierten Sandboxen einschränken, da die Menge der Systemressourcen für parallele sichere Enklave-Ausführungen überproportional wachsen kann.
  • Außerdem kann fortgeschrittene Malware selbst eine zentralisierte Sandbox-Ausführung erkennen und das Malware-Verhalten als legitime Prozesse maskieren. Dementsprechend besteht bei der Entwicklung von zentralisierten Sandbox-Systemen für die Analyse von Malware und unbekannten Dateien/Prozessen ein hohes Risiko von Engpässen, und die Menge an verfügbaren Systemressourcen, die im Gegenzug zur Anzahl der vom zentralisierten Sandbox-System ausgeführten sicheren Enklave-Ausführungen benötigt wird, kann verschwindend gering sein.
  • Das Dokument US 2019/0319977 A1 offenbart eine Vorrichtung, ein System und Verfahren zum Fingerprinting und zur Klassifizierung des Anwendungsverhaltens unter Verwendung von Telemetrie. Eine beispielhafte Vorrichtung beinhaltet einen Trace-Prozessor zur Verarbeitung von Ereignissen in einem Prozessor-Trace, um das Ausführungsverhalten einer Anwendung zu erfassen, sowie einen Fingerprint-Extraktor, um einen ersten Fingerprint aus dem erfassten Ausführungsverhalten der Anwendung und den Informationen der Leistungsüberwachung zu extrahieren.
  • Außerdem offenbart das Dokument US 10,148,686 B2 Systeme, Verfahren und Computerprogramme zur Analyse von Telemetriedaten von physischen Prozesssensoren, um eine Zahl zu erkennen, die sich innerhalb des physischen Prozesses befindet. Ein Telemetrie-Analytik-System ist als ein System zur Erkennung von Anomalien auf Prozessebene offenbart, das auf operativer Telemetrie und domänenspezifischem Wissen basiert und cyber-physikalische Geräte gegen Zero-Day-Exploits schützt, die nicht durch andere System Log- oder Netzwerk-Paketinspektionen erkannt werden können.
  • Die Probleme mit zentralisiertem Sandboxing bestehen jedoch darin, dass zentralisiertes Sandboxing zu viele Ressourcen eines Host Systems erfordern kann. Daher kann es notwendig sein, diesen Engpass zu überwinden und ein Verfahren zur Identifizierung bösartiger Prozesse auf einem Host bereitzustellen, das (i) von herkömmlichen Systemen zur Erkennung von Malware nicht erkannt werden kann und (ii) deutlich weniger Ressourcen benötigt als zentralisierte Sandboxing-Ansätze.
  • KURZDARSTELLUNG
  • Aspekte der vorliegenden Erfindung offenbaren ein Verfahren, ein Computerprogrammprodukt und ein System zum Erkennen eines bösartigen Prozesses durch eine ausgewählte Instanz eines Anti-Malware-Systems. Die Verfahren beinhalten das Untersuchen eines Prozesses durch einen oder mehrere Prozessoren auf Indicators of Compromise für den Prozess. Die Verfahren beinhalten ferner das Ermitteln einer Kategorisierung des Prozesses durch einen oder mehrere Prozessoren, basierend auf einem Ergebnis der Untersuchung. In Reaktion auf die Ermittlung, dass die Kategorisierung des Prozesses nicht mit einem bekannten wohlwollenden Prozess und einem bekannten bösartigen Prozess übereinstimmt, beinhaltet das Verfahren ferner das Ausführen des Prozesses in einer sicheren Enklave durch einen oder mehrere Prozessoren. Die Verfahren beinhaltet ferner das Erfassen von Telemetriedaten aus der Ausführung des Prozesses in der sicheren Enklave durch einen oder mehrere Prozessoren. Das Verfahren beinhaltet ferner das Übergeben der erfassten Telemetriedaten durch einen oder mehrere Prozessoren an ein Lokal-Trainiertes-Neuronales-Netz-System. Die Trainingsdaten des Lokal-Trainiertes-Neuronales-Netz-Systems umfassen Telemetriedaten aus Prozessen, die auf einem Host-System ausgeführt werden, das dem Lokal-Trainiertes-Neuronales-Netz-System unterliegt. Das Verfahren beinhaltet ferner das Ermitteln eines Ergebnisses einer ersten Verlustfunktion für das Lokal-Trainiertes-Neuronales-Netz-System durch einen oder mehrere Prozessoren. Das Verfahren beinhaltet ferner das Vergleichen des Ergebnisses mit einem Ergebnis der Verlustfunktion am Ende eines Trainierens des Lokal-Trainiertes-Neuronales-Netz-Systems durch einen oder mehrere Prozessoren.
  • In einem weiteren Aspekt beinhaltet das Verfahren ferner das Übergeben der erfassten Telemetriedaten an ein föderiertes Trainiertes-Neuronales-Netz-System durch einen oder mehrere Prozessoren. Das föderierte Trainiertes-Neuronales-Netz-System ist dazu ausgebildet, ein föderiertes Trainiertes-Neuronales-Netz-Modell zu empfangen. Das Verfahren beinhaltet ferner die Ermittlung eines Ergebnisses einer zweiten Verlustfunktion für das föderierte Trainiertes-Neuronales-Netz-System. Das Verfahren beinhaltet ferner den Vergleich des Ergebnisses mit einem Ergebnis der Verlustfunktion des empfangenen föderierten Trainiertes-Neuronales-Netz-Modells des föderierten Trainiertes-Neuronales-Netz-Systems. Das Verfahren beinhaltet ferner die Aggregation der Ergebnisse der ersten Verlustfunktion und der zweiten Verlustfunktion durch einen oder mehrere Prozessoren. Das Verfahren beinhaltet ferner die Ermittlung, durch einen oder mehrere Prozessoren, ob der Prozess anomal ist, auf Grundlage der aggregierten Ergebnisse.
  • Das vorgeschlagene Verfahren zum Erkennen eines bösartigen Prozesses durch eine ausgewählte Instanz eines Anti-Malware-Systems kann mehrere Vorteile, technische Effekte, Beiträge und/oder Verbesserungen bieten.
  • Zuerst kann eine einzige zentrale Herangehensweise zum Erkennen bösartiger Prozesse vermieden werden. Herangehensweise kann der Bedarf an Systemressourcen zum Erkennen bösartiger Prozesse im Vergleich zu herkömmlichen Ansätzen erheblich verringert werden. Insbesondere kann der Bedarf an Zentralverarbeitungseinheits (central processing unit, CPU)-leistung, Speicher und Speicherplatz verringert werden, der erforderlich ist, um hochempfindliche Intrusion-Erkennungs-Systeme auf einem bestimmten Host umzusetzen.
  • Unter Verwendung von Telemetriedaten kann zusätzlich zum herkömmlichen Erkennen von Indicators of Compromise eine Anpassung an individuelle Umgebungen erfolgen, indem den einzelnen Komponenten der Telemetriedaten unterschiedliche Gewichtungen zugeordnet werden. Zusätzlich können die Telemetriedaten sowohl statische als auch dynamische Komponenten aufweisen, die schnell erweitert werden können, wenn neue Verfahren zur Ableitung von Telemetriedaten aus Prozessen und Datenverarbeitungsumgebungen verfügbar werden. Der zugrunde liegende Prozess der Verwendung von Autokodierern zum Erkennen potentiell bösartiger Muster in den Prozessen kann dabei unverändert bleiben.
  • Die Möglichkeit, das lokale und das föderierte Trainiertes-Neuronales-Netz-System unter Verwendung separater Trainiertes-Neuronales-Netz-Modelle periodisch neu zu trainieren, kann eine schnelle Anpassung an die neu verfügbaren Telemetriedatenmuster ermöglichen.
  • Außerdem kann das kombinierte Wissen der Mehrzahl ausgewählter Instanzen eines Systems zur Erkennung von Malware in Form eines föderierten Trainiertes-Neuronales-Netz-Modells unter Verwendung der kombinierten „Erfahrung“ jeder der einzelnen Instanzen der Lokal-Trainiertes-Neuronales-Netz-Systeme und der zugehörigen Neuronales-Netz-Modelle zwei Ziele erreichen. Erstens kann eine Analyse von Prozessparametern (d. h. Telemetriedaten) einer Mehrzahl von Host-Systemen auf verteilte Weise durchgeführt werden, so dass keine zentrale Instanz durch zu viele Daten, die in einem begrenzten Zeitablauf verarbeitet werden müssen, überlastet werden kann. Zweitens können für das Trainieren des föderierten Neuronales-Netz-Modells Telemetriedaten aus verschiedenen Verarbeitungsumgebungen (d.h. Prozessortypen, Menge an verfügbarem Speicher und Arbeitslasten und -typen usw.) berücksichtigt werden. Das föderierte Trainiertes-Neuronales-Netz-Modell kann, sobald es entwickelt und auch regelmäßig aktualisiert wurde, nochmals an die Mehrzahl ausgewählter Instanzen des Systems zur Erkennung von Malware verteilt werden, um es in den föderierten Trainiertes-Neuronales-Netz-Systemen zu verwenden.
  • Dementsprechend können solche Aspekte der vorliegenden Erfindung das hier vorgeschlagene Verfahren und das dazugehörige System anpassungsfähig, vergleichsweise einfach umzusetzen, erweiterbar und flexibel machen, da Ressourcen verschiedener Hosts unter Verwendung einer zentralen Instanz verwendet werden können, ohne die zentrale Instanz zu überlasten und Analysedaten von den lokalen Instanzen zu erfassen. Andererseits sind die lokalen Instanzen nicht vollständig auf eine zentrale Instanz (d.h. die Trainingsumgebung für das föderierte Neuronales-Netz-Modell) angewiesen, sondern verfügen über lokale Ressourcen in Form des Lokal-Trainierten-Neuronales-Netz-Systems und des föderierten Neuronales-Netz-Systems, um die entsprechende Datenverarbeitungsumgebung gegen bösartige Prozesse zu verteidigen. Dementsprechend können eine „zentrale Cyberangriffs-Abwehrintelligenz“ und lokale Schutzsysteme auf eine leistungsfähige und einzigartige Weise kombiniert werden.
  • Außerdem können Aspekte der vorliegenden Erfindung dazu dienen, fortgeschrittene Malware zu erkennen und zu beseitigen, die in der Lage ist, die zentralisierte Sandbox-Ausführung zu erkennen, und die auch in der Lage ist, das Verhalten der Malware mit dem Verhalten legitimer Prozesse zu verschleiern. Dementsprechend kann dieses Ziel mit den begrenzten Ressourcen einer ausgewählten Instanz eines föderierten Backbones des Systems zur Erkennung von Malware erreicht werden.
  • Im Folgenden werden zusätzliche Ausführungsformen des erfindungsgemäßen Konzepts beschrieben, die sowohl für das Verfahren als auch für das zugehörige Computersystem und Computerprogrammprodukt gelten.
  • In einem weiteren Aspekt beinhaltet das Verfahren ferner die Erfassung von Telemetriedaten aus nicht bösartigen Prozessen, die auf einer ausgewählten Instanz eines Anti-Malware-Systems ausgeführt werden, durch einen oder mehrere Prozessoren. Das Verfahren beinhaltet ferner das erneute Trainieren, durch einen oder mehrere Prozessoren, des Lokal-Trainiertes-Neuronales-Netz-Systems mit den erfassten Telemetriedaten, um ein aktualisiertes lokales Neuronales-Netz-Modell auf einer regelmäßigen Basis zu erzeugen. Nicht bösartige Prozesse sind dabei Prozesse, die auf einer regulären Basis auf dem Host unter der Kontrolle des Betriebssystems ausgeführt werden. Bei den nicht bösartigen Prozessen kann es sich um Prozesse des Betriebssystems oder um Prozesse von Anwendungsprogrammen handeln. Auf typischen Host-Systemen können Hunderte und Tausende solcher Prozesse pro Sekunde parallel ausgeführt werden. Das Erfassen der Telemetriedaten kann auch durch Systemmanagement-Tools unterstützt werden. Alternativ können die Daten auch ausschließlich unter Verwendung von Komponenten eines Computer-Sicherheitsrahmenwerks erfasst werden. Die entsprechenden erzeugten Telemetriedaten von nicht bösartigen (d. h. regulären) Prozessen können zu vorbestimmten Zeitpunkten (z. B. periodisch oder auf Grundlage eines auslösenden Ereignisses) verwendet werden, um das lokale Neuronales-Netz-Modell des lokalen Neuronales-Netz-Systems neu zu trainieren. Dementsprechend können sich ändernde Arbeitslasten und Telemetriedatenprofile, die sich im Laufe der Zeit ändern können, im Verhalten des lokalen Neuronales-Netz-Modells widergespiegelt werden.
  • Außerdem beinhaltet das Verfahren den Empfang eines aktualisierten föderierten Neuronales-Netz-Modells für das föderierte Neuronales-Netz-System durch einen oder mehrere Prozessoren. Das föderierte Neuronales-Netz-Modell wird unter Verwendung von Lokal-Trainiertes-Neuronales-Netz-Modellen einer Mehrzahl von ausgewählten Instanzen als Eingabe erzeugt. Dabei kann das föderierte Neuronales-Netz-Modell unter Verwendung von Lokal-Trainiertes-Neuronales-Netz-Modellen einer Mehrzahl ausgewählter Instanzen als Eingabe erzeugt werden. Somit kann das kollektive, kooperative „Wissen“ einer Mehrzahl von Hosts und ihrer zugehörigen Verfahren und Systeme zur Erkennung von Malware, die Ziel von Malware-Angriffen mit unterschiedlichen Profilen sein können, die Grundlage für eine gruppenweite „Immunisierung“ in Bezug auf verschiedene Typen von Cyber-Angriffen bilden.
  • Ferner ist mindestens eines der Lokal-Trainiertes-Neuronales-Netz-Systeme und das föderierte Trainiertes-Neuronales-Netz-System ein Autokodierer-System. Autokodierer können besonders gut geeignet sein, das vorgeschlagene Konzept zu unterstützen. Da die Anzahl der künstlichen Neuronen (oder Knoten) der Eingabeschicht des jeweiligen neuronalen Netzes gleich der Anzahl der künstlichen Neuronen der Ausgabeschicht ist, können Aspekte der vorliegenden Erfindung so operieren, dass ein Ergebnis einer Verlustfunktion, die auf einer Differenz zwischen der Eingabeschicht und der Ausgabeschicht basiert, angewendet und minimiert wird. Das Minimum kann jedoch erreicht werden, oder die Ergebnisse der Verlustfunktion können im Bereich des minimalen Wertes liegen, wenn die Eingaben in das neuronale Netz vergleichsweise nahe an den verwendeten Trainings-Telemetriedaten liegen können. Wenn andere Telemetriedaten außerhalb des Bereichs der Trainings-Telemetriedaten liegen, die auf die Eingabeschicht des jeweiligen neuronalen Netzes angewendet werden können, dann kann die Verlustfunktion einen Wert aufweisen, der größer als ein vorbestimmter Schwellenwert ist, was angibt, dass ein potenziell bösartiger Prozess vorliegt.
  • In einem weiteren Aspekt beinhaltet das Verfahren in Reaktion auf die Ermittlung, dass die Kategorisierung des Prozesses einem anomalen Prozess entspricht, das Verwerfen des Prozesses durch einen oder mehrere Prozessoren. Dementsprechend können Prozesse, die auf potenziellem Malware-Programmcode basieren, die sichere Enklave nicht verlassen und möglicherweise in Wirklichkeit andere Prozesse oder Daten des Host-Computersystems in unzulässiger Weise manipulieren.
  • In einem weiteren Aspekt beinhaltet das Verfahren in Reaktion auf das Ermitteln, dass es sich bei dem Prozess um einen regulären Prozess handelt, basierend auf der Ausführung in der sicheren Enklave, ferner die Verlagerung des Prozesses aus der sicheren Enklave durch einen oder mehrere Prozessoren. Das Verfahren beinhaltet ferner die Ausführung des Prozesses durch einen oder mehrere Prozessoren als regulärer Prozess. Dementsprechend kann der Prozess als regulärer Prozess ausgeführt werden, der vom Betriebssystem gesteuert wird und möglicherweise auch eine Grundlage für die Erzeugung zusätzlicher Telemetriedaten eines regulären Prozesses ist.
  • In einem zusätzlichen Aspekt wird das föderierte Trainiertes-Neuronales-Netz-System mit Telemetriedaten von einer Mehrzahl von Hosts trainiert. Zum Beispiel kann das Verfahren so arbeiten, dass Lokal-Trainiertes-Neuronales-Netz-Modelle (d.h. von den jeweiligen lokalen Hosts) (z.B. in Form von entsprechenden Parametern und Hyperparametern) von den jeweiligen lokalen Hosts an ein zentralisiertes System gesendet werden, wie es auf einem Cloud-Computing-System betrieben wird.
  • Ferner umfasst das Verfahren zum Trainieren des föderierten Neuronales-Netz-Systems das Verarbeiten, durch einen oder mehrere Prozessoren, eines Satzes von repräsentativen Telemetriedaten durch jedes einer Mehrzahl von empfangenen Lokal-Trainiertes-Neuronales-Netz-Modellen und das Speichern jeweiliger Ergebnisse; und das Trainieren des föderierten Neuronales-Netz-Systems durch einen oder mehrere Prozessoren unter Verwendung von Eingabe/Ausgabe-Paaren von Telemetriedaten, die während der Verarbeitung der Telemetriedaten verwendet und erzeugt werden, als Eingabedaten für das Trainieren des föderierten Neuronales-Netz-Modells. Die Eingabe/Ausgabe-Paare von Telemetriedaten, die für das Trainieren des föderierten Neuronales-Netz-Modells verwendet werden, werden in Abhängigkeit von einer geografischen Nähe zwischen geografischen Host-Standorten der empfangenen lokalen Neuronalen-Netz-Modelle und einem geografischen Host-Standort, für den ein neues Föderiertes Neuronales-Netz-Modell trainiert wird, gewichtet. Auch die Eingabe/Ausgabe-Paare von Telemetriedaten, die für das Trainieren des föderierten Neuronalen-Netzes verwendet werden, werden in Abhängigkeit von einer vorbestimmten Metrik gewichtet.
  • Dabei können lokale Besonderheiten der einzelnen Host-Systeme und der entsprechenden föderierten Trainierten Neuronales-Netz-Modelle berücksichtigt werden. Ausführungsformen der vorliegenden Erfindung erkennen, dass Cyberangriffe eines bestimmten Profils häufig auf bestimmte geografische Bereiche ausgerichtet sind. Das vorgeschlagene Konzept ermöglicht es, solche Besonderheiten durch das System zur Erkennung von Malware gut zu berücksichtigen, was die Empfindlichkeit gegenüber einem bestimmten Typ von Cyberangriffen erhöhen und vorteilhaft auch Systemressourcen sparen kann. Dementsprechend können sich die einzelnen föderierten Trainiertes-Neuronales-Netz-Modelle auf verschiedenen Hosts in einer solchen Ausführungsform unterscheiden.
  • In einer beispielhaften Ausführungsform kann jede der 10 Instanzen ein jeweiliges lokales Neuronales-Netz-Modell an einen zentralen Dienst des Systems zur Erkennung von Malware senden. Die jeweiligen geografischen Standorte können ebenfalls bekannt sein. Dann würde zum Beispiel der Prozess für ein Training des föderierten Neuronales-Netz-Modells für Instanz 3 (i) Abstandsinformationen zwischen Instanz 3 und allen anderen 9 Instanzen bewerten, und (ii) durch die empfangenen Lokal-Trainiertes-Neuronales-Netz-Modelle einen Satz repräsentativer Telemetriedaten verarbeiten und jeweilige Ergebnisse speichern (wie oben beschrieben), und (iii) die Verwendung von Eingabe/Ausgabe-Paaren mit umgekehrter Proportionalität zu dem unter Schritt (i) ermittelten Abstand wiederholen.
  • In einem zusätzlichen Beispielaspekt, wenn man ein Paar betrachtet, das von Instanz 5 kommt, die geographisch sehr nahe an Instanz 3 liegt, kann das Paar 10-mal (vorbestimmte Anzahl von Malen) während des Trainings wiederholt werden (d.h. dem Netzwerk einen Bias geben); wenn man stattdessen ein Paar betrachtet, das von Instanz 7 kommt, die beispielsweise 10-mal weiter entfernt ist, dann wird das Wertepaar lediglich einmal in den Trainingsdaten vorkommen.
  • Gemäß einer anderen Ausführungsform des Verfahrens können die für das Training des föderierten Neuronales-Netz-Modells verwendeten Eingabe/Ausgabe-Paare von Telemetriedaten in Abhängigkeit von einer vorbestimmten Metrik gewichtet werden. Durch die Gewichtung können nicht lediglich geografische Standorte und ihre Besonderheiten in Ausdruck potenzieller Cyberangriffe, sondern auch andere Profile der lokalen Hosts berücksichtigt werden. Zum Beispiel eine Nutzung innerhalb einer bestimmten vertikalen Industrie, einer bestimmten Abteilung, eines Typs von Host-Computer (z.B. zentrales Datenverarbeitungssystem vs. Internet-of-Things (loT), System oder persönliches Gerät). Ferner kann die Gewichtung einen verbesserten Schutz in Abhängigkeit von mehr abstimmbaren Parametern gegen Malware ermöglichen, die zu potenziell bösartigen Prozessen führt.
  • Gemäß einer anderen Ausführungsform des Verfahrens kann das Aggregieren der Ergebnisse der Verlustfunktionen ein Bilden eines gewichteten Mittelwertes aus der Verlustfunktionen umfassen, was berücksichtigen kann, dass die jeweiligen Gewichtungsfaktorwerte gemäß der Datenmenge angepasst werden können, die von dem föderierten Trainiertes- Neuronales-Netz-System (z.B. zentraler Autokodierer) gegenüber dem Lokal-Trainiertes-Neuronales-Netz-Modell (z.B. lokaler Autokodierer) gesehen wird. Folglich kann der „erfahrenere“ Autokodierer einen „größeren Einfluss“ haben.
  • In einem weiteren Aspekt umfasst das Verfahren zum Aggregieren der Ergebnisse der ersten Verlustfunktion und der zweiten Verlustfunktion ferner das Erzeugen eines gewichteten Mittelwerts aus der ersten Verlustfunktion und der zweiten Verlustfunktion durch einen oder mehrere Prozessoren. In einem zusätzlichen Aspekt wird die ermittelte Kategorisierung ausgewählt aus der Gruppe bestehend aus: einem bekannten wohlwollenden Prozess, einem bekannten bösartigen Prozess und einem unbekannten Prozess.
  • Darüber hinaus können Ausführungsformen die Form eines zugehörigen Computerprogrammprodukts haben, auf das von einem computerbenutzbaren oder computerlesbaren Medium aus zugegriffen werden kann, das Programmcode zur Verwendung durch oder in Verbindung mit einem Computer oder einem beliebigen Anweisungsausführungssystem bereitstellt. Dies bedeutet, dass ein computerbenutzbares oder computerlesbares Medium jede Vorrichtung sein kann, die Mittel zum Speichern, Kommunizieren, Verbreiten oder Transportieren des Programms zur Verwendung durch oder in Verbindung mit dem Datenverarbeitungssystem, der Vorrichtung oder dem Gerät beinhaltet.
  • Figurenliste
  • Die vorstehend bezeichneten Aspekte sowie weitere Aspekte der vorliegenden Erfindung ergeben sich aus den nachfolgend zu beschreibenden Beispielen von Ausführungsformen und werden unter Bezugnahme auf die Beispiele von Ausführungsformen erläutert, auf die die Erfindung jedoch nicht beschränkt ist. Bevorzugte Ausführungsformen der Erfindung, die lediglich als Beispiele zu verstehen sind, werden unter Bezugnahme auf die folgenden Zeichnungen beschrieben.
    • 1 stellt ein Blockschaltbild einer Ausführungsform eines Verfahrens zum Erkennen eines bösartigen Prozesses durch eine ausgewählte Instanz eines Anti-Malware-Systems dar, gemäß den Ausführungsformen der vorliegenden Erfindung.
    • 2 stellt ein Diagramm dar, das beispielhafte Telemetriedaten eines nicht anomalen Prozesses veranschaulicht, gemäß Ausführungsformen der vorliegenden Erfindung.
    • 3 stellt einen beispielhaften Aufbau eines neuronalen Netzes mit Autokodierer dar, gemäß Ausführungsformen der vorliegenden Erfindung.
    • 4 stellt einen ersten Abschnitt eines mehr detaillierten beispielhaften Ablaufplans eines vorgeschlagenen Konzepts dar, gemäß Ausführungsformen der vorliegenden Erfindung.
    • 5 stellt einen zweiten Abschnitt eines mehr detaillierten beispielhaften Ablaufplans des vorgeschlagenen Konzepts dar, gemäß Ausführungsformen der vorliegenden Erfindung.
    • 6 stellt ein Blockschaltbild einer Ausführungsform von Komponenten des hier vorgeschlagenen Konzepts und jeweiliger Abhängigkeiten dar, gemäß Ausführungsformen der vorliegenden Erfindung.
    • 7 stellt ein Blockschaltbild einer Ausführungsform dar, die einen Prozess zum Erzeugen von Telemetrie- und Metadaten für einen gegebenen zu untersuchenden Prozess veranschaulicht, gemäß Ausführungsformen der vorliegenden Erfindung.
    • 8 stellt ein Blockschaltbild einer Ausführungsform dar, das Teilprozesse zur Erkennung von Anomalien veranschaulicht, die einen Benutzer von Trainiertes-Neuronales-Netz-Modulen beinhalten, gemäß Ausführungsformen der vorliegenden Erfindung.
    • 9 stellt ein Blockschaltbild einer Ausführungsform des vorgeschlagenen Systems zur Erkennung von Malware dar, gemäß Ausführungsformen der vorliegenden Erfindung.
    • 10 stellt ein Blockschaltbild einer Ausführungsform eines Datenverarbeitungssystems dar, das das vorgeschlagene System zur Erkennung von Malware gemäß 9 umfasst, gemäß Ausführungsformen der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Im Folgenden werden die Figuren ausführlich beschrieben. Alle Anweisungen in den Figuren sind schematisch dargestellt. Zuerst wird ein Blockschaltbild einer Ausführungsform des erfindungsgemäßen Verfahrens zum Erkennen eines bösartigen Prozesses durch eine ausgewählte Instanz eines Anti-Malware-Systems gegeben. Anschließend werden weitere Ausführungsformen sowie Ausführungsformen des Malware-Erkennungssystems zum Erkennen eines bösartigen Prozesses durch eine ausgewählte Instanz eines Anti-Malware-Systems beschrieben.
  • Es sei angemerkt, dass die beispielhaften Ausführungsformen in Bezug auf verschiedene Gegenstände beschrieben werden. Insbesondere werden einige Ausführungsformen in Bezug auf Ansprüche des Verfahrenstyps beschrieben, während andere Ausführungsformen in Bezug auf Ansprüche des Vorrichtungstyps beschrieben worden sind. Der Fachmann erkennt jedoch aus dem obigen und der folgenden Beschreibung, dass, sofern nicht anders angegeben, zusätzlich zu jeder beliebigen Merkmalskombination, die zu einem Gegenstandstyp gehört, auch jede Kombination zwischen Merkmalen, die sich auf unterschiedliche Gegenstandstypen beziehen, insbesondere zwischen Merkmalen der Ansprüche des Verfahrenstyps und Merkmalen der Ansprüche des Vorrichtungstyps, als innerhalb dieses Dokuments beschrieben angesehen werden.
  • Im Zusammenhang mit dieser Beschreibung können die folgenden Konventionen, Begriffe und/oder Ausdrücke verwendet werden.
  • Der Begriff „bösartiger Prozess“ kann sich auf jede mit Computercode zusammenhängende Aktivität auf einem Computersystem beziehen, die die Betriebsintegrität des Computersystems, des Betriebssystems und der regulären Anwendungen des Computersystems beeinträchtigt. Der bösartige Prozess kann auf Daten/Computercode basieren, die auf dem Host-System (d. h. dem Computersystem) empfangen wurden. Daher kann jeder anomale oder nicht reguläre Prozess (d. h. ein Prozess, der absichtlich unter der Kontrolle des Betriebssystems ausgeführt wird) als bösartiger Prozess kategorisiert werden. Bösartige Prozesse können Daten auf dem Computersystem verändern, Daten auf dem Computersystem beobachten oder ausspionieren, eine Funktion des Computersystems in unbeabsichtigter Weise verändern usw.
  • Der Begriff „ausgewählte Instanz“ kann ein Computersystem oder einen Host bezeichnen, der Teil des Anti-Malware-Systems ist. Die ausgewählte Instanz kann auch als lokaler Host bezeichnet werden.
  • Der Begriff „Anti-Malware-System“ kann eine Mehrzahl ausgewählter Instanzen bezeichnen, die mit einer zentralen Instanz zusammenarbeiten, welche die Funktionen der lokalen Instanzen unterstützt, um einen besseren Schutz vor Cyber-Angriffen zu gewährleisten.
  • Der Begriff „Indicators of Compromise“ (kurz IoC) kann das bekannte Konzept in der Computerforensik bezeichnen und kann ein Artefakt bezeichnen, das in einem Netzwerk oder in einem Betriebssystem beobachtet wird und mit hoher Sicherheit ein Kennzeichen für eine Computer-Intrusion angeben kann. Die Typen von Indicators of Compromise können Virensignaturen, bekannte Internetprotokoll (IP)-Adressen von Verdächtigen, MD5-Hash-Werte von Malware-Dateien, Uniform Resource Locators (URLs) von Domänennamen von Botnet Command and Control Servern usw. umfassen. Nach der Erkennung von IoCs durch einen Prozess der Incident Response und/oder Computerforensik können Ausführungsformen der vorliegenden Erfindung die IoCs zur frühzeitigen Erkennung künftiger Angriffe durch Intrusion-Detection-Systeme und/oder Antivirensoftware nutzen.
  • Der Begriff „bekannter wohlwollender Prozess“ kann im Gegensatz zu einem bösartigen Prozess einen Prozess in einem System bezeichnen, der mit hoher Sicherheit dem System in keiner Weise schadet. Zum Beispiel kann ein bekannter wohlwollender Prozess vom Betriebssystem absichtlich als Teil des Betriebssystems oder eines zugehörigen Anwendungsprogramms gestartet werden. Ein bekannter wohlwollender Prozess kann sich auch auf empfangenen Programmcode über ein Netzwerk aus einer sicheren Quelle beziehen.
  • Der Begriff „bekannter bösartiger Prozess“ kann einen Prozess in einem Betriebssystem bezeichnen, der mit hoher Wahrscheinlichkeit das Betriebssystem oder das zugrunde liegende Datenverarbeitungssystem gefährden kann. In verschiedenen Aspekten kann ein bekannter bösartiger Prozess unter Verwendung von IoCs identifiziert werden.
  • Der Begriff „unbekannter Prozess“ kann einen Prozess in einem Betriebssystem bezeichnen, der nicht als bösartiger Prozess oder als regulärer/sicherer Prozess klassifiziert wird.
  • Der Begriff „sichere Enklave“ kann eine sichere Sandbox-Datenverarbeitungsumgebung bezeichnen, die die reguläre Betriebsumgebung des Computersystems und/oder des entsprechenden Betriebssystems und seiner Anwendungen schützen kann.
  • Der Begriff „Telemetriedaten“ kann mindestens zwei Klassen von Daten bezeichnen, die aus einem ausgeführten Prozess stammen: (a) statische Telemetriedaten und (b) dynamische Telemetriedaten. Statische Telemetriedaten beziehen sich auf die Daten für einen adressierten Prozess (d.h. den Programmcode, der einen noch nicht ausgeführten Prozess definiert). Statische Telemetriedaten können mindestens beinhalten (i) einen ermittelten Dateihashwert der ausführbaren Programmdatei, um einen Fingerprint der Dateien zu erstellen, (ii) eine String-Extraktion zur String-Analyse aus der ausführbaren Datei, (iii) eine Layout-Extraktion der ausführbaren Datei und (iv) eine automatische Disassemblierung von Code und Codestruktur der ausführbaren Datei. Im Gegensatz dazu können dynamische Telemetriedaten Beobachtungen und Daten eines ausführenden Prozesses sein. Die dynamischen Telemetriedaten können zumindest Folgendes beinhalten: (i) Systemüberwachungsdaten, (ii) Registry-Aktivitätsdaten, (iii) Dateiaktivitätsdaten (d. h. Dateizugriff), (iv) Prozessaktivitätsdaten und (v) Netzwerkaktivitätsdaten. Dementsprechend können sich die dynamischen Telemetriedaten während der Lebensdauer des Prozesses ändern und ein charakteristisches Profil aufweisen.
  • Dabei werden häufig bekannte Technologien verwendet. Als Beispiele seien die folgenden genannt. Die String-Extraktion ist eine der ersten Maßnahmen, um kurz nützliche Informationen zu extrahieren, wie z. B. IP-Adresse, Domänen, Funktionen, Daten oder andere Informationen, die vom Entwickler der Malware nicht entfernt wurden. Dabei bedeutet ein String eine Reihenfolge von Zeichen und kann eine Konstante oder eine Variable sein. Ein String ist ein Typ von Daten und kann als eine Byte- (oder Wort-) Datenstruktur umgesetzt werden, die eine Reihenfolge von Elementen speichert. Strings gehören zur Computerprogrammierung und sind im Grunde wertvolle Daten, die zum Erstellen von Software verwendet werden, um beim Reverse Engineering Rückschlüsse auf die Funktionalität zu erhalten. Die Extraktion des Layouts konzentriert sich auf das Prüfen des Headers eines ausführbaren Programmcodes, um die Informationen über den Code, den Typ der Anwendung, die erforderlichen Bibliotheksfunktionen und den Platzbedarf der potenziellen Malware zuzuordnen. Das Datei-Hashing, das anfänglich durchgeführt wird, um einen Fingerabdruck der ausführbaren Malware-Datei zu erstellen, ist in der Regel nicht geeignet, um die in diesem Schritt genannten Details zu extrahieren, da das Datei-Hashing beispielsweise für einen MD5-Extrakt der Malware-Datei erfolgt. Eine automatisierte Disassemblierung von Code und Codestruktur kann mit bekannten oder noch zu entwickelnden Tools durchgeführt werden, die eine schnelle Disassemblierung des Codes ermöglichen. Unter Verwendung herkömmlicher Tools wird hierfür ein interaktiver Disassembler für die statische Malware-Analyse verwendet.
  • Der Begriff „Lokal-Trainiertes-Neuronales-Netz-System“ kann ein Neuronales-Netz-System bezeichnen, das lokal verfügbare Trainingsdaten (z. B. lokal erzeugte Telemetriedaten aus regulären Prozessen) verwendet, um ein Neuronales-Netz-Modell zu entwickeln. Das Neuronales-Netz-Modell und/oder das Neuronales-Netzsystem kann gemäß den Regeln eines Autokodierers für neuronale Netze konstruiert werden. Es können aber auch andere Typen von neuronalen Netzen vorteilhaft verwendet werden.
  • Der Begriff „Host-System“ kann ein Computerverarbeitungssystem bezeichnen, das auch als ausgewählte Instanz innerhalb eines Systems zur Erkennung von Malware bezeichnet wird.
  • Der Begriff „föderiertes System“ kann ein Neuronales-Netz-System umfassen, das ein zugrundeliegendes Neuronales-Netz-Modell umfasst, das auf einer zentralen Instanz eines Systems zur Erkennung von Malware trainiert wird. Ein föderiertes Trainiertes-Neuronales-Netz-System kann als Cloud-Service betrieben werden und unterstützende Dienste zur Erkennung von Malware und zum Schutz einer Mehrzahl von lokalen Instanzen oder Host-Systemen bereitstellen.
  • Der Begriff „erste Verlustfunktion“ kann eine Funktion bezeichnen, die einen Ergebniswert oder einen Ergebnisvektor zurückgibt, wenn Eingabewerte in ein neuronales Netzwerk (z. B. einen Autokodierer) mit entsprechenden Ausgabewerten verglichen werden. Insbesondere können bei einem Autokodierer die Ausgabewerte immer mehr oder weniger von den entsprechenden Eingabewerten abweichen (z. B. weil nicht jeder Autokodierer eine Grundidee und ein perfektes Modell hat). Die erste Verlustfunktion kann sich auf ein trainiertes Lokal-Trainiertes-Neuronales-Netz-System beziehen, während sich die zweite Verlustfunktion auf ein föderiertes Trainiertes-Neuronales-Netz-System beziehen kann, das auch ein Autokodierer sein kann.
  • Der Begriff „aktualisiertes föderiertes Neuronales-Netz-Modell“ kann ein neues föderiertes Neuronales-Netz-Modell bezeichnen, das mit neuen Trainingsdaten neu trainiert wird. Das aktualisierte föderierte Neuronales-Netz-Modell kann dann an die angeschlossenen lokalen Instanzen verteilt werden, die mit einem zentralen System für die Erkennung von Malware und den Schutz vor Malware zusammenarbeiten und Daten austauschen.
  • Der Begriff „Autokodierer“ kann einen bestimmten Typ eines künstlichen neuronalen Netzes bezeichnen, der verwendet wird, um effiziente Datenkodierungen auf unüberwachte Weise zu erlernen. Dabei besteht das Ziel eines Autokodierers darin, eine Darstellung (d. h. eine Codierung) eines Datensatzes zu erlernen, in der Regel zur Dimensionalitätsreduktion, indem das neuronale Netz so trainiert wird, dass es das das Signal-„Rauschen“ ignoriert. Neben der Reduktionsseite wird auch eine Rekonstruktionsseite trainiert (d.h. gelernt), wobei der Autokodierer versucht, aus der verringerten Kodierung eine Darstellung zu erzeugen, die der ursprünglichen Eingabe so nahe wie möglich kommt.
  • Der Begriff „regulärer Prozess“ kann einen Prozess eines Systems bezeichnen, der vom System initiiert und/oder gesteuert wird. Zum Beispiel ein betriebssysteminterner Prozess oder ein beabsichtigter Prozess im Zusammenhang mit einer Anwendung.
  • Der Begriff „Verlustfunktionen“ kann in seiner einfachsten Form eine Differenz zwischen einem Ausgabewert und einem Eingabewert (z. B. von einem Neuronales-Netz-System, einem Autokodierer usw.) bezeichnen. In Ausführungsformen der vorliegenden Erfindung wird anerkannt, dass Verlustfunktionen in Künstliche-Intelligenz (KI)-Systemen weit verbreitet sind.
  • Ausführungsformen der vorliegenden Erfindung stellen ein Verfahren bereit, um einen Host (d. h. ein Computersystem, in dem Prozesse ablaufen) vor den negativen Auswirkungen von Malware zu schützen. Malware erreicht den Host über eine Netzwerkverbindung (z. B. als E-Mail-Anhang, als Programm-Download, App oder Applet in einem Webbrowser usw.).
  • Ausführungsformen der vorliegenden Erfindung können lokales Sandboxing von unbekannten Prozessen zur Erkennung von Anomalien verwenden. Eingehender Netzwerkverkehr wird zuerst einer anfänglichen Prüfung auf Indicators of Compromise (loC) unterzogen. Dies sind zum Beispiel bekannte bösartige IP-Adressen oder Virensignaturen. Handelt es sich bei dem Prozess weder um einen bekannten wohlwollenden noch um einen bekannten bösartigen Prozess, können Ausführungsformen der vorliegenden Erfindung die Ausführung des Prozesses zulassen, der jedoch anfänglich in einer sicheren Enklave, d. h. der Sandbox, gehalten wird.
  • Das Konzept umfasst auch ein Verfahren zur Entscheidungsfindung (das lokal auf dem Host durchgeführt wird), um festzustellen, ob ein Prozess bösartig ist oder nicht. Bösartige Prozesse werden verworfen; nicht bösartige Prozesse werden aus der Sandbox herausgenommen und als regulärer Prozess ausgeführt.
  • In verschiedenen Ausführungsformen führt jeder lokale Host zwei Anomalie-Detektoren oder -Systeme aus: Das erste verwendet ein föderiertes Maschinenlernmodell, das aus Telemetriedaten aus Prozessen erstellt wird, die von Telemetriedaten-Extraktoren stammen, die auf allen Hosts laufen, die das Grundkonzept der hier vorgeschlagenen erfinderischen Idee teilen, das zweite verwendet ein Maschinenlernmodell, das aus lokal extrahierten Telemetriedaten aus Prozessen erstellt wird. In einer beispielhaften Ausführungsform handelt es sich bei dem Anomaliedetektor um einen Autokodierer. Es sind jedoch auch andere Umsetzungen des Maschinenlernens möglich. Die Maschinenlernmodelle (MLMs) werden mit Telemetriedaten aus regulären (nicht anomalen) Prozessen trainiert (d. h. die MLMs beschreiben den Bereich der Eigenschaften von Telemetriedaten aus regulären Prozessen). Abweichungen von diesem Bereich werden als Anomalien betrachtet.
  • Ausführungsformen der vorliegenden Erfindung erkennen, dass eine Herausforderung bei diesem Ansatz darin besteht, die Falsch-Positiv-Rate (d. h. die relative Anzahl der Fälle, in denen reguläre Prozesse fälschlicherweise als Malware klassifiziert werden) zu kontrollieren und auf der anderen Seite zu verhindern, dass diese Malware als regulärer Prozess durchgeht. Sowohl eine hohe Falsch-Positiv-Rate als auch durchgeschlüpfte Malware beeinträchtigen die Wirksamkeit eines Sicherheitssystems erheblich. Das Verfahren eines dualen Anomalie-Detektors ermöglicht die Einführung von Empfindlichkeitsfaktoren zur Anpassung und Optimierung der Richtig-Positiv/ Falsch-Positiv-Rate.
  • Verschiedene Ausführungsformen der vorliegenden Erfindung erkennen, dass Cyber-Sicherheitsangriffe seit Jahren zu den obersten Prioritäten von Regierungsorganisationen und Organisationen und Unternehmen der Informationstechnologie (IT) gehören. Die Rolle des Chief Information Security Officer (CISO) ist in jeder IT-Organisation gegeben. Ausführungsformen der vorliegenden Erfindung erkennen, dass die meisten auf dem Markt erhältlichen Lösungen zur Überwachung von Sicherheitsinformationen und Ereignissen (security information and event monitoring, SIEM) eine Reihe komplexer Korrelationsregeln erfordern, die von hochqualifiziertem Personal überwacht und abgestimmt werden, um potenzielle Sicherheitsbedrohungen, die zumindest in einem Teil eines Unternehmens zu Sicherheitsvorfällen führen können, zu identifizieren und zu erkennen. Gemäß der Datenschutz-Grundverordnung (general and data security regulation, GDPR) können Unternehmen, die in der Europäischen Union operieren, hohen Geldstrafen gegenüberstehen, wenn sie es versäumen, Kunden- und/oder Mitarbeiterdaten zu schützen. Der Schutz von Unternehmensdaten ist jedoch nicht lediglich ein Thema für in Europa ansässige Unternehmen und Regierungsorganisationen, sondern für alle Einrichtungen, die weltweit mit Daten zu tun haben.
  • Zusätzliche Ausführungsformen der vorliegenden Erfindung erkennen, dass fortgeschrittene Malware selbst eine zentralisierte Sandbox-Ausführung erkennen und das Malware-Verhalten als legitime Prozesse maskieren kann. Dementsprechend erkennen Ausführungsformen der vorliegenden Erfindung bei der Entwicklung von zentralisierten Sandbox-Systemen zur Analyse von Malware und unbekannten Dateien/Prozessen ein hohes Risiko von Engpässen. Ausführungsformen der vorliegenden Erfindung erkennen auch, dass die Menge der verfügbaren Systemressourcen, die im Gegenzug für die Anzahl der vom zentralisierten Sandbox-System ausgeführten sicheren Enklave-Ausführungen erforderlich ist, sehr gering sein kann.
  • Ferner erkennen Ausführungsformen der vorliegenden Erfindung, dass Probleme mit zentralisiertem Sandboxing jedoch darin bestehen, dass zentralisiertes Sandboxing zu viele Ressourcen eines Host-Systems beanspruchen kann. Daher erkennen Ausführungsformen der vorliegenden Erfindung die Notwendigkeit, diesen Engpass zu überwinden und ein Verfahren zur Erkennung bösartiger Prozesse auf einem Host bereitzustellen, das (i) von herkömmlichen Systemen zur Erkennung von Malware nicht erkannt werden kann und (ii) deutlich weniger Ressourcen benötigt als zentralisierte Sandboxing-Ansätze.
  • Im Folgenden werden zusätzliche Ausführungsformen beschrieben, die sowohl für das Verfahren als auch für das zugehörige System gelten.
  • 1 zeigt ein Blockschaltbild einer bevorzugten Ausführungsform eines Verfahrens 100 zum Erkennen eines bösartigen (z. B. insbesondere anomalen oder nicht regulären) Prozesses durch eine ausgewählte Instanz (d. h. Host) eines Anti-Malware-Systems gemäß den Ausführungsformen der vorliegenden Erfindung. Insbesondere wird beispielsweise ein Anti-Malware-System, das mehrere Hosts und ein zentrales (z. B. cloudbasiertes) System beinhaltet, von Zeit zu Zeit und bei Bedarf verwendet, ohne einen Engpass zu sein. Zur Erläuterung kann das in 1 beschriebene Verfahren 100 in einem oder mehreren der in 6 (z. B. unter Verwendung von Komponenten 600), 7 (z. B. unter Verwendung der Ausführungsform 700), 8 (z. B. unter Verwendung von Teilprozessen 800), 9 (z. B. unter Verwendung des Datenverarbeitungssystems 900) und 10 (z. B. unter Verwendung des Datenverarbeitungssystems 1000) veranschaulichten Diagramme und Systeme umgesetzt werden. Alternativ ist die Ausführung des Verfahrens 100 nicht auf diese Umsetzung beschränkt. In beispielhaften Ausführungsformen kann das System 900 zur Erkennung von Malware das Verfahren 100 von 1 durchführen.
  • Das Verfahren 100 umfasst das Untersuchen eines Prozesses auf Indicators of Compromise (Schritt 102). In beispielhaften Ausführungsformen bezieht sich der Prozess auf den zuvor empfangenen Programmcode oder die Daten. Das Verfahren 100 umfasst auch das Kategorisieren des Prozesses basierend auf einem Ergebnis der Untersuchung (Schritt 104). In verschiedenen Ausführungsformen kann das Verfahren 100 den Prozess als einen aus der Gruppe ausgewählten Prozess klassifizieren, die einen bekannten wohlwollenden Prozess, einen bekannten bösartigen Prozess und einen unbekannten Prozess umfasst.
  • In Schritt 106 umfasst das Verfahren 100 das Ausführen des Prozesses in einer sicheren Enklave. Für den Fall, dass der Prozess weder als bekannter wohlwollender Prozess noch als bekannter bösartiger Prozess kategorisiert wird, führt das Verfahren 100 den Prozess in einer sicheren Enklave aus (d.h. einer sicheren Sandbox auf dem zugrunde liegenden Datenverarbeitungssystem des Hosts). Ferner kann das Verfahren 100 dazu dienen, zu ermitteln, ob der Prozess als bösartig gilt oder nicht. In Schritt 108 umfasst das Verfahren 100 das Erfassen von Telemetriedaten. Insbesondere statische und dynamische Telemetriedaten aus dem ausgeführten Prozess, der unter Beobachtung steht (d. h. in der sicheren Enklave ausgeführt wird).
  • Darüber hinaus umfasst das Verfahren 100 in Schritt 110 das Übergeben der erfassten Telemetriedaten an ein Lokal-Trainiertes- Neuronales-Netz-System. In verschiedenen Ausführungsformen umfassen die Trainingsdaten des Lokal-Trainiertes-Neuronales-Netz-Systems (z. B. zur Entwicklung eines Trainiertes-Neuronales-Netz-Modells) Telemetriedaten aus Prozessen (z. B. nicht bösartige Prozesse, wie reguläre Prozesse), die auf einem Host-System ausgeführt werden, das der lokalen Instanz zugrunde liegt.
  • Außerdem umfasst das Verfahren 100 in Schritt 112 auch das Übergeben der erfassten Telemetriedaten an ein föderiertes Trainiertes-Neuronales-Netz-System. In beispielhaften Ausführungsformen ist das föderierte Trainiertes-Neuronales-Netz-System dazu ausgebildet, ein föderiertes Trainiertes-Neuronales-Netz-Modell zu empfangen. Zum Beispiel von einem unterstützenden Cloud-System, das Teil des Systems zur Erkennung von Malware ist.
  • Außerdem umfasst das Verfahren 100 in Schritt 114 das Ermitteln eines Ergebnisses einer ersten Verlustfunktion (z.B. mittleres Quadrat zweier Vektoren) für das Lokal-Trainiertes-Neuronales-Netz-System. Das Verfahren 100 kann dann das Ergebnis mit einem Ergebnis der Verlustfunktion am Ende eines Trainierens des Lokal-Trainiertes-Neuronales-Netz-Systems vergleichen. Dann, in Schritt 116, umfasst das Verfahren 100 das Ermitteln eines Ergebnisses einer zweiten Verlustfunktion (z.B. auch auf Basis des mittleren Quadrats) für das föderierte Trainiertes-Neuronales-Netz-System. Das Verfahren 100 kann dann das Ergebnis mit einem Ergebnis der Verlustfunktion des empfangenen föderierten Trainiertes-Neuronales-Netz-Modells des föderierten Trainiertes-Neuronales-Netz-Systems vergleichen.
  • Dann umfasst das Verfahren 100 das Aggregieren der Ergebnisse der ersten und zweiten Verlustfunktion (in Schritt 118). Ferner umfasst das Verfahren 100 das Ermitteln, ob der Prozess anomal ist, auf Grundlage der aggregierten Ergebnisse (Schritt 120). In verschiedenen Ausführungsformen kann die Aggregation einen vorbestimmten Prozess verwenden, um die aggregierten Ergebnisse zu ermitteln (siehe unten für ein näher beschriebenes Beispiel).
  • 2 zeigt ein Diagramm 200, das Telemetriedaten aus Prozessen veranschaulicht, die nicht anomal sind. 2 veranschaulicht eine Verteilung der Eingabe-Telemetriedaten für die Maschinenlernmodelle (MLMs) des föderierten Anomalie-Detektors (breitere Verteilung auf der linken Seite; föderiertes Trainiertes-Neuronales-Netz-Modell) und des lokalen Anomaliedetektors (schmale Verteilung, 204, lokales Trainiertes-Neuronales-Netz-Modell). Die x-Achse des Diagramms 200 zeigt Kategorien von Eigenschaften der Telemetriedaten, während die y-Achse des Diagramms 200 die relative Häufigkeit ihres Auftretens anzeigt.
  • Im dargestellten Beispiel von 2 gilt: Je näher die Eigenschaften der Telemetriedaten eines gegenwärtig untersuchten Prozesses (insbesondere Prozess A (206), Prozess B (208) und Prozess C (210)) an der Mitte der Verteilung (d. h. dem oberen Punkt der Gaußschen Kurve) liegen, desto höher ist die Wahrscheinlichkeit, dass der Prozess regulär (d.h. nicht bösartig) ist.
  • Ausführungsformen der vorliegenden Erfindung erkennen, dass MLMs nicht die „reale Welt“ darstellen, sondern eine auf den Eingabedaten basierende Welt, die immer in gewissem Maße verzerrt ist. In diesem Beispiel unterscheiden sich die Eigenschaften der Telemetriedaten, die auf diesem speziellen lokalen Host erfasst wurden, von den Eigenschaften, die in der gesamten Umgebung erfasst wurden. Prozess B 208 ist in der Tat ein regulärer Prozess auf einem lokalen Host, obwohl Prozess B vom föderierten Anomalie-Detektor aufgrund der unterschiedlichen Trainingsdaten nicht als regulärer Prozess betrachtet wird. Um zu vermeiden, dass reguläre Prozesse auf Systemen mit unterschiedlichen Eigenschaften blockiert werden, müssen prinzipiell beide Anomalie-Detektoren einen Prozess als anomal klassifizieren, was bei Prozess C (210) der Fall ist. Im dargestellten Beispiel von 2 liegt der Prozess C (210) außerhalb der Grenzen der Gaußkurve 202 und der Gaußkurve 204. Unter Verwendung modellspezifischer Empfindlichkeitsparameter und Gewichtung der Ergebnisse zwischen den Anomalie-Detektoren (d. h. dem entsprechenden trainierten Modell/System des neuronalen Netzes) können Ausführungsformen der vorliegenden Erfindung zur Verbesserung der Richtig-/ Falsch-Positiv-Rate beitragen.
  • 3 zeigt eine Struktur eines Autokodierers 300. In dem dargestellten Beispiel wird der Autokodierer 300 in einer typischen Umsetzung eines neuronalen Netzes gezeigt, das eine Mehrzahl von Knotenschichten umfasst. Wie bereits oben beschrieben, ist ein Autokodierer ein Typ eines künstlichen neuronalen Netzes, der verwendet wird, um effiziente Datenkodierungen auf unüberwachte Weise zu lernen. Das Ziel eines Autokodierers ist es, eine Darstellung (d.h. eine Codierung) für einen Datensatz zu erlernen, typischerweise zur Dimensionalitätsreduktion, indem das Netzwerk so trainiert wird, dass es Signal-„Rauschen“ ignoriert. Neben der Reduktionsseite wird auch eine Rekonstruktionsseite erlernt, wobei der Autokodierer versucht, aus der reduzierten Kodierung eine Darstellung zu erzeugen, die seiner ursprünglichen Eingabe so nahe wie möglich kommt, daher der Name. Somit liefern die Ausgangsknoten 306 nach dem Trainieren in der Inferenz-Phase die gleichen Datensignale, wie sie in die Eingabeschicht 302 eingegeben wurden. In dem in 3 dargestellten Beispiel stellt jeder Kreis einen Knoten des neuronalen Netzes oder eine künstliche neuronale Netzzelle dar. Der Autokodierer 300 ist lediglich mit drei Schichten 302, 304, 306 dargestellt, wobei die Schicht 304 eine verborgene Schicht ist. Im Allgemeinen kann ein Autokodierer eine Mehrzahl von verborgenen Schichten umfassen. Die Anzahl der Schichten ändert jedoch nichts an der allgemeinen Funktion von Autokodierern.
  • 4 zeigt den Ablaufplan 400, einen ersten Abschnitt eines ausführlicheren beispielhaften Ablaufplans von Ausführungsformen der vorliegenden Erfindung. Zuerst wird der eingehende Netzwerkverkehr 402 einer Verkehrsanalyse 404 unterzogen. Hier können Ausführungsformen der vorliegenden Erfindung unter Verwendung des Ablaufplans 400 eine dreifache Entscheidung darüber ermitteln, ob empfangene Daten zu bekanntem, gutem Verkehr/ zugelassenem aufgelistetem Verkehr 406 (linker Zweig), bekanntem bösartigem Verkehr 408, der sofort blockiert werden kann (rechter Zweig), und unbekanntem Verkehr 410 gehören, ausgehend von der Verkehrsanalyse 404 von unten. Der unbekannte Verkehr kann nicht direkt als gut oder schlecht kategorisiert werden (in unbekanntem Verkehr 410). Der unbekannte Verkehr kann dann in den Sub-Prozess 412, „Netzwerk-Analyse-Engine Prozess Workflow“, sowie (über einen Paket-Cache) in den Sub-Prozess 414, „Host-Analyse-Engine Prozess Workflow“, einfließen. Außerdem werden die Informationen, wenn die Deep Packet Analysis des Sub-Prozesses 412 nicht-bösartigen Datenverkehr bestätigt, an den Host-Analyse-Engine Prozess Workflow 414 weitergeleitet. Die Verarbeitung wird auf 5 fortgesetzt. Die Ablaufpläne von 4 und 5 sind durch die Verbindungen „A“, „B“ und „C“ miteinander verbunden.
  • 5 zeigt den Ablaufplan 500, einen zweiten Abschnitt des ausführlicheren beispielhaften Ablaufplans von Ausführungsformen der vorliegenden Erfindung. Der Prozessablauf setzt sich bei „A“ aus 4 fort. Der Host-Analyse-Engine Prozess Workflow 414 (vgl. 4) ermöglicht die Ausführung eines Prozesses in einer sicheren Enklave (d.h. einer sicheren Sandbox-Ausführungsumgebung) in Prozess 502, nach einer Bestätigung durch die Netzwerk-Analyse-Engine (4, Prozess 412).
  • Anschließend initiiert Ablaufplan 500 den Prozess 504, die Aufzeichnung von Telemetriedaten, bei dem Ausführungsformen der vorliegenden Erfindung den Prozess 506, eine Extraktion von Metadaten aus den Telemetriedaten und erzeugten Warnungen, durchführen können. Ablaufplan 500 fährt fort mit Prozess 508, der Ermittlung, ob eine Anomalie erkannt wurde. Wird eine Anomalie erkannt (Prozess 508, „Y“-Zweig), wird der Prozess verworfen (in Prozess 510), und die entsprechenden Daten werden gelöscht. Außerdem beinhaltet der Ablaufplan 500 den Prozess 512, um die erfassten Metadaten in aktualisierter Form an den Host und die Netzwerk-Engine und den Analyseprozess entlang der Verbindungen „B“ und „C“ zurück zu 4 zu übertragen.
  • Wenn die Ermittlung in Prozess 508 ergibt, dass keine Anomalien (d. h. kein bösartiger Code/keine bösartigen Daten) erkannt wurden (Prozess 508, „N“-Zweig), fährt Ablaufplan 500 mit Prozess 514 fort, um den Prozess auf dem Host regulär auszuführen. Anschließend wird die Sicherheitsüberwachung für einen bestimmten Prozess beendet (Prozess 516).
  • 6 zeigt ein Blockschaltbild einer Ausführungsform von Komponenten 600 zu verschiedenen Aspekten der vorliegenden Erfindung. In Reaktion auf die Ausführung des nicht klassifizierbaren Prozesses (Enklave-Prozessausführung 602) als sicherer Enklave-Prozess erfasst der Telemetrie-Rekorder und Metadaten-Extraktor 604 die erzeugten Daten aus der Enklave-Prozessausführung 602. Zuerst erfasst ein Telemetrie-Recorder 606 die Daten und übergibt sie an das Telemetrie- und Metadaten-Extraktionsmodul 608. Anschließend kann der Telemetrie-Recorder und Metadaten-Extraktor 604 die Einträge an die Anomalie-Detektoren 610 weiterleiten, von wo aus die Daten (durch Weiterleitung) an den Metadaten-Updater 614 weitergeleitet werden können.
  • Wenn die Daten an den Metadaten-Updater 614 weitergeleitet werden, wird der Prozess automatisch verworfen und die zugehörigen Ausgabedaten des Prozesses werden gelöscht. Im anderen Fall wird der Host-Prozess-Executor 612 gestartet. Der Host-Prozess-Executor 612 wird jedoch lediglich aktiviert, wenn der Anomalie-Detektor 610 einen nicht bösartigen Prozess bestätigt.
  • 7 zeigt ein Blockschaltbild einer Ausführungsform 700, das einen Prozess zur Erzeugung von Telemetrie- und Metadaten für einen gegebenen zu untersuchenden Prozess gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung veranschaulicht. Der Telemetrie-Recorder 702 kann die Einträge vom Prozess/Dateiextraktor 701 empfangen. Der Telemetrie-Recorder 702 arbeitet in zwei Schritten, um den ausführbaren Prozess und andere relevante Daten mit einem Statische-Telemetrie (TM)-Recorder 704 und einem Dynamische-Telemetrie-Recorder 706 aufzuzeichnen. Der Statische-Telemetrie-Recorder 704 zeichnet den unmittelbar vor der Ausführung des Prozesses/Codes abgerufenen Inhalt auf, der mindestens Folgendes umfassen kann: (i) einen ermittelten Datei-Hashwert (z.B. File-Fingerprinting 708) der ausführbaren Programmdatei, um einen Fingerprint der Dateien zu erstellen; (ii) eine Code-String-Extraktion für eine Code-String-Analyse 710 aus der ausführbaren Programmdatei; (iii) eine Extraktion des ausführbaren Layouts 712 aus der ausführbaren Programmdatei; und (iv) eine automatisierte Disassemblierung von Code und Codestruktur 714 aus der ausführbaren Programmdatei.
  • Außerdem zeichnet der Dynamische-Telemetrie-Recorder 706 den abgerufenen Inhalt der Erfassung/Codeausführung auf. Die Aufzeichnung beinhaltet mindestens eine Erfassung und Aufzeichnung von: (i) Systemüberwachungsdaten; (ii) Registry-Aktivitätsdaten 716; (iii) Datei-Aktivitätsdaten 718 (d.h. Dateizugriff); (iv) Prozess-Aktivitätsdaten 720; (v) und Netzwerk-Aktivitätsdaten 722.
  • Infolgedessen kann der Telemetrie- (TM) und Metadaten-Extraktor 724 Statische-Telemetrie-Extraktionsdaten 726 bereitstellen, die Fingerprint-Hash-Daten, Strings im Code, ausführbares Layout/Pattern und Disassemblierungsinformationen des Programmcodes der ausführbaren Programmdatei umfassen. Auf der anderen Seite umfassen die extrahierten Dynamische-Telemetriedaten 728 einen beispielhaften Registry-Dump, einen Datei-Aktivitäts-Extrakt, einen Prozess-Dump und einen Netzwerk-Dump. Sowohl für den Statische-Telemetrie-Recoder 704 als auch für den Dynamische-Telemetrie-Recorder 706 können teilweise wiederverwendet werden (und ggf. auch bekannte Technik).
  • 8 zeigt ein Blockschaltbild einer Ausführungsform, das die Teilprozesse 800 zur Erkennung von Anomalien veranschaulicht, die eine Verwendung der Trainiertes-Neuronales-Netz-Module gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung beinhalten. In verschiedenen Ausführungsformen beinhalten die Hauptkomponenten, die mit der Ausführung der Teilprozesse 8 verknüpft sind, den lokalen Anomalie-Detektor 804 (d.h. das lokale Trainiertes-Neuronales-Netz-System), den föderierten Anomalie-Detektor 806 (d.h., das föderierte Trainiertes-Neuronales-Netz-System), den Trainingsdatensammler 812, das Retraining-Modul 814, die Einheit 820 für föderiertes Lernen auf mehreren gesammelten Modellen und das bereitgestellte Anomalie-Detektor-Modell (z.B. bereitgestellt als Cloud-Service, wie z.B. die Anomalie-Detektor-Modell-Cloud 818); die letzten beiden Komponenten sind Teil eines zentralen Dienstes oder zentralen Systems 816.
  • Der Telemetriedaten-Strom gelangt in den temporalen Aggregator 802. Beispielsweise aggregiert der temporale Aggregator 802 den Datenstrom für „n“ Sekunden, bevor er die Daten an das nächste Modul, den lokalen Anomalie-Detektor 804, sendet (z. B. in Form eines Autokodierers). Parallel dazu werden die aggregierten Telemetriedaten auch an den föderierten Anomalie-Detektor 806 (z. B. ebenfalls in Form eines Autokodierers) geparst. In Block 808 werden beide Ergebnisse aggregiert, um die Anomalie-Schätzungen auszubilden. Ein Ermittlungsmodul 810 ermittelt, ob die Bedingung „Anomalie wahr“ oder „Anomalie falsch“ erfüllt ist.
  • Anschließend können die Telemetriedaten (z. B. durch Weiterleitung) an den Trainingsdatensammler 812 weitergeleitet werden, der wiederum die Telemetriedaten an das Retraining-Modul 814 übergibt. Das Retraining-Modul 814 kann dazu dienen, das lokale Trainiertes-Neuronales-Netz-Modells (d. h. des lokalen Anomalie-Detektors 804) auf einer regemäßigen Basis (z. B. jeden Tag, alle paar Stunden oder gemäß einem anderen Zeitablauf) durchzuführen. Alternativ kann das erneute Trainieren auch durch einen vorbestimmten Auslösemechanismus initiiert werden. Außerdem pulst das Retraining-Modul 814 die Telemetriedaten an ein zentrales System 816, das den (cloudbasierten) föderierten Anomalie-Detektor oder die Anomalie-Detektor-Modell-Cloud 818 umfassen kann. Darüber hinaus kann die Anomalie-Detektor-Modell-Clound 818 unter Verwendung von föderiertem Lernen auf Mehrere-Gesammelte-Modellen-Einheit 820 neu trainiert werden, basierend auf mehreren gesammelten Neuronales-Netz-Modellen von verschiedenen Hosts, von denen die lokalen Trainiertes-Neuronales- Netz-Modelle verwendet werden.
  • So erkennen verschiedene Ausführungsformen der vorliegenden Erfindung, dass der Vorteil, sowohl den föderierten als auch den lokalen Anomalie-Detektor zu haben, nicht nur in Bezug auf den Ressourcenverbrauch, sondern auch in Bezug auf die für das Training verwendeten Daten liegt. In der Tat wird der Föderiertes-Lernen- Autokodierer den Daten aller Instanzen der Anti-Malware-Systeme in der Umgebung ausgesetzt und der Föderiertes-Lernen- Autokodierer lernt auf den Daten, ohne irgendwelche Informationen direkt an den Autokodierer der einzelnen Instanzen zu übertragen. Die Übertragung des Wissens der verschiedenen Instanzen ist in dem föderierten Trainiertes-Neuronales-Netz-Modell enthalten, das dann periodisch an das Neuronales-Netz-System des föderierten Anomalie-Detektors in den lokalen Hosts übertragen wird.
  • Während des Trainings wird der Autokodierer den aggregierten Telemetriedaten als Eingabe und Ausgabe ausgesetzt, und der Autokodierer lernt, die aggregierten Telemetriedaten zu reproduzieren (aufgrund der Autokodierer-Funktionalität). Typische Verlustfunktionen, die verwendet werden, sind mittlere quadratische Fehlerfunktionen (MSE).
  • Während der Inferenz (d. h. der Verwendung des Modells in dem in gezeigten Prozess) werden der lokale und der föderierte Autokodierer mit den aktuellen Telemetriedaten verwendet, die aus dem in der sicheren Enklave ausgeführten unbekannten Code extrahiert wurden. Dann wird die gleiche MSE-Metrik zwischen den rekonstruierten Daten und den Originaldaten für beide Autokodierer unabhängig voneinander berechnet. Die Werte werden dann wie folgt aggregiert: Für beide Autokodierer (AK) werden die Ergebnisse wie folgt bestimmt: mAK = MSEaktuell - (MSEaktuell - während des Trainings) / ef, wobei „ef“ ein Empfindlichkeitsfaktor ist.
  • Ist der sich daraus ergebende Wert für die AK negativ, so wird keine Anomalie festgestellt. Andernfalls werden die Spannweiten mAK durch einen gewichteten Durchschnitt kombiniert, z. B. mAK + wföd * mAK,föd. Die Gewichtung wföd kann von der Datenmenge abhängen, die von dem föderierten AK im Vergleich zu dem lokalen AK gesehen wird. In einer Ausführungsform wird eine lineare Abhängigkeit verwendet, so dass der föderierte AK, der aus mehr Daten lernt, einen höheren Gewichtungswert hat. Als vierter Schritt wird, wenn mAK,lok + wföd * mAK,föd positiv ist, eine Anomalie identifiziert und der untersuchte Prozess verworfen; andernfalls ist der Prozess nicht anomal und die Telemetriedaten werden an den Trainingsdatensammler übergeben, wie oben beschrieben.
  • Es sollte auch erwähnt werden, dass der Trainingsdatensammler alle Telemetriedaten speichert, die die Detektoren durchlaufen und als regulär klassifiziert werden. In regelmäßigen Abständen sendet der Trainingsdatensammler einen Ausweis von Daten an das Retraining-Modul.
  • Das Retraining-Modul erneuert das Trainieren des AK mit den eingehenden Telemetriedaten vom Trainingsdatensammler. Eine typische Zeitperiode ist zum Beispiel ein Tag. Verschiedene Ausführungsformen der vorliegenden Erfindung können Bedingungen verwenden, die auf der Verbesserung der Leistung des Neuronales- Netz-Modells während des Trainierens basieren, um automatisch zu entscheiden, wann das Trainieren abgeschlossen ist. In einem Beispiel ist eine bevorzugte Bedingung das frühzeitige Anhalten. Sobald das Trainieren des Modells abgeschlossen ist, wird das Modell des lokalen AK durch das neue Modell ersetzt, und das neue Modell wird an das föderierte Lernmodul gesendet. Das föderierte Lernen auf mehreren gesammelten Modellen, das auf einem zentralen Computer läuft (z. B. als Cloud-Dienst), empfängt regelmäßig (Zeitperiode konfigurierbar) den Satz neuer Modelle und führt die eingehenden Modelle zusammen, um zu verhindern, dass die einzelnen lokalen Modelle des neuronalen Netzes (oder das Wissen des lokalen Anomaliedetektors) vergessen werden.
  • In verschiedenen Aspekten beinhaltet der Prozess zur Sicherstellung einer genauen Verwendung der einzelnen lokalen Modelle des neuronalen Netzes (oder des lokalen Anomaliedetektor-Wissens) Folgendes. Die Verarbeitung der erfassten Telemetriedaten erfolgt zuerst durch jedes einzelne erfasste Lokal-Trainiertes-Neuronales-Netz-System und das Gegenteil wird gespeichert. Die Ausgabe wird die Erfahrung der einzelnen Maschinenlernmodelle kodieren. Zweitens werden die von den einzelnen Modellen erzeugten Paare (Eingabe/Ausgabe des AK) durchgeführt und das föderierte Neuronales-Netz-Modell mit diesen Datenpaaren trainiert. Nach Abschluss des Trainierens wird das neue föderierte Trainiertes-Neuronales-Netz-Modell an die Anomaliedetektor-Modell-Cloud 818 gesendet, die dann das neue föderierte Trainiertes-Neuronales-Netz-Modell an alle föderierten Anomaliedetektoren auf den lokalen Hosts weiterleitet. Die föderierten Anomaliedetektoren können das neue Modell empfangen und das Modell zu einem geeigneten Zeitpunkt ersetzen.
  • In einer beispielhaften Ausführungsform wird ein einziger Wert für den Empfindlichkeitsfaktor des föderierten AK auf Grundlage des von einem Sicherheitsanalysten beobachteten Verhältnisses zwischen Richtig- und Falsch-Positiven zugeordnet. In einer geänderten beispielhaften Ausführungsform wird der Empfindlichkeitsfaktor eflok auf den lokalen AK auf Grundlage der Kombination der folgenden automatisch beobachteten Parameter angepasst. Ein erster Parameter kann die Menge an lokalen Telemetrie-Messungen sein, die zur Erstellung des lokalen Modells verarbeitet wurden (z. B. wurden für relativ neue Server einige Proben, die das normale Verhalten beschreiben, in das Modell eingebaut, was leicht zu Fehlalarmen führen kann (Erkennung von bösartigen Prozessen von Malware)). Zum Beispiel können die Empfindlichkeitsfaktoren auf einen sehr niedrigen Wert nahe Null gesetzt werden.
  • Ein zweiter Parameter kann eine Variation des lokalen Prozesses der Telemetrie-Messungen sein, um das lokale Modell zu erstellen. Beispielsweise können Server, die einem bestimmten Zweck dienen, eine bestimmte Menge an Eingaben empfangen, die das normale Verhalten beschreiben, was zu einem verzerrten Modell führt. Zur Vermeidung von Falsches-Positiv-Alarmen wird ein niedrigerer eflok für eine kleine Varianz σ zugeordnet. Die Server, die einen größeren Satz von Telemetriedaten empfangen, erstellen ein ausgewogeneres Modell. Hier wird dem eflok bei einer großen Varianz σ ein Wert nahe eins zugeordnet.
  • Die Varianz der Telemetrie-Eingabedaten kann wie folgt definiert werden: σ 2 = 1 n i = 1 n ( ( a i b i c i ) ( a i ¯ b i ¯ c i ¯ ) ) 2
    Figure DE112021004808T5_0001
    Dabei ist „n“ die Anzahl der Telemetrie-Messungen (n>1). Der erste Vektor (ai, bi, c, ...) stellt die tatsächlichen Werte der Telemetrie-Messungen dar und der zweite Vektor die (lokal auf dem einzelnen Host) durchschnittlichen Telemetrie-Messungen. Die Empfindlichkeitsfaktoren sind durch die Varianz definiert durch s f = 1 1 σ + 1
    Figure DE112021004808T5_0002
  • Ein dritter Parameter kann eine Überlappung zwischen dem föderierten Modell und dem lokalen Modell sein (vgl. 2). Die Überlappung wird durch die Anreicherung des Ergebnisses mAK,lok - mAK,föd| über die untersuchten Fälle ermittelt. Bei einer großen Überlappung wird ein Sensitivitätsfaktor eflok nahe Null zugeordnet (Host ist herkömmlicher Host), bei einer kleinen Überlappung (insbesondere in Kombination mit geringer Varianz der Telemetrie-Messungen) wird dem Sensitivitätsfaktor eflok ein niedriger Wert zugeordnet.
  • 9 zeigt ein Blockschaltbild einer Ausführungsform des vorgeschlagenen Systems 900 zur Erkennung von Malware, gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. Das System zur Erkennung von Malware 900 umfasst einen Speicher und einen Prozessor 902, der kommunikativ mit dem Speicher 904 verbunden ist, wobei der Prozessor 902 unter Verwendung von in dem Speicher 904 gespeichertem Programmcode so konfiguriert ist, dass er (insbesondere durch eine Untersuchungseinheit 906) einen Prozess auf Indicators of Compromise untersucht und auf der Grundlage eines Ergebnisses der Untersuchungseinheit 906 (insbesondere durch ein Kategorisierungsmodul 908) den Prozess als einen aus der Gruppe ausgewählten Prozess kategorisiert, die einen bekannten wohlwollenden Prozess, einen bekannten bösartigen Prozess und einen unbekannten Prozess umfasst.
  • Der Prozessor 902 ist ferner unter Verwendung von im Speicher 904 gespeichertem Programmcode so konfiguriert, dass er (insbesondere durch eine Ausführungseinheit 910) den Prozess in einer sicheren Enklave ausführt, falls der Prozess weder als bekannter wohlwollender Prozess noch als bekannter bösartiger Prozess kategorisiert wird, und (insbesondere durch ein Erfassungsmodul 912) Telemetriedaten vom ausführenden Prozess erfasst.
  • Darüber hinaus ist der Prozessor 902 unter Verwendung von im Speicher 904 gespeichertem Programmcode auch so konfiguriert, dass er (insbesondere durch eine erste Übergabeeinheit 914) die erfassten Telemetriedaten an ein Lokal-Trainiertes-Neuronales-Netz-System übergibt, wobei die Trainingsdaten des Lokal-Trainiertes-Neuronales-Netz-Systems Telemetriedaten aus Prozessen umfassen, die auf einem der lokalen Instanz zugrunde liegenden Host-System ausgeführt werden, und die erfassten Telemetriedaten (insbesondere durch die zweite Übergabeeinheit 916) an ein föderiertes Trainiertes-Neuronales-Netz-System übergibt, wobei das föderierte Trainiertes-Neuronales-Netz-System dazu ausgebildet ist, ein föderiertes Trainiertes-Neuronales-Netz-Modell zu empfangen.
  • Außerdem ist der Prozessor 902 unter Verwendung von in dem Speicher 904 gespeichertem Programmcode so konfiguriert, dass er (insbesondere durch das erste Ermittlungsmodul 918) ein Ergebnis einer ersten Verlustfunktion für das Lokal-Trainiertes-Neuronales-Netz-System ermittelt und das Ergebnis mit einem Ergebnis der Verlustfunktion am Ende eines Trainings des Lokal-Trainiertes-Neuronales-Netz-Systems vergleicht, und (insbesondere durch das zweite Ermittlungsmodul 920) ein Ergebnis einer zweiten Verlustfunktion für das föderierte Trainiertes-Neuronales-Netz-System ermittelt und das Ergebnis mit einem Ergebnis der Verlustfunktion des empfangenen föderierten Trainiertes-Neuronales-Netz-Modells des föderierten Trainiertes-Neuronales-Netz-Systems vergleicht.
  • Nicht zuletzt ist der Prozessor 902 unter Verwendung von in dem Speicher 904 gespeichertem Programmcode auch konfiguriert, um (insbesondere durch das Aggregationsmodul 922) die Ergebnisse der ersten und zweiten Verlustfunktion zu aggregieren und (insbesondere durch das dritte Ermittlungsmodul 924) zu ermitteln, ob der Prozess auf Grundlage der aggregierten Ergebnisse anomal ist.
  • Es sollte auch erwähnt werden, dass alle Einheiten und Module auch als Hardware-Einheiten und -Module umgesetzt werden können und dass die Einheiten kommunikativ miteinander zum Signal- und Datenaustausch gekoppelt sind. Alternativ zum Schema der Eins-zu-eins-Kommunikation können die Einheiten und Module auch mit einem internen Bussystem 926 des Systems zur Erkennung von Malware verbunden sein (d. h., der Prozessor 902, der Speicher 904, die Untersuchungseinheit 906, das Kategorisierungsmodul 908, die Ausführungseinheit 910, das Erfassungsmodul 912, die erste Übergabeeinheit 914, die zweite Übergabeeinheit 916, das erste Ermittlungsmodul 918, das zweite Ermittlungsmodul 920, das Aggregationsmodul 922 und das dritte Ermittlungsmodul können alle mit dem internen Bussystem 926 des Systems zur Erkennung von Malware zum Signal- und Datenaustausch verbunden sein).
  • Ausführungsformen der Erfindung können zusammen mit praktisch jedem Typ von Computer umgesetzt werden, unabhängig davon, ob die Plattform für die Speicherung und/oder Ausführung von Programmcode geeignet ist. 10 zeigt als Beispiel ein Datenverarbeitungssystem 1000, das gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung zum Ausführen von Programmcode im Zusammenhang mit dem vorgeschlagenen Verfahren geeignet ist.
  • Das Datenverarbeitungssystem 1000 ist lediglich ein Beispiel für ein geeignetes Computersystem und soll keine Einschränkung hinsichtlich des Umfangs der Verwendung oder der Funktionalität der hierin beschriebenen Ausführungsformen der Erfindung darstellen, unabhängig davon, ob das Computersystem 1000 in der Lage ist, eine der hierin dargelegten Funktionen umzusetzen und/oder durchzuführen. Das Computersystem 1000 enthält Komponenten, die mit zahlreichen anderen Allzweck- oder Spezial-Computer-Systemumgebungen oder Konfigurationen betrieben werden können. Beispiele für bekannte Datenverarbeitungssysteme, -umgebungen und/oder -konfigurationen, die für die Verwendung mit dem Computersystem 1000 (z. B. einem Server) geeignet sein können, beinhalten unter anderem Personalcomputersysteme, Servercomputersysteme, Thin-Clients, Thick-Clients, Handheld- oder Laptop-Geräte, Multiprozessorsysteme, mikroprozessorbasierte Systeme, Set-Top-Boxen, programmierbare Verbraucherelektronik, Netzwerk-PCs, Minicomputersysteme, Großrechner-Computersysteme und verteilte Cloud-Computing-Umgebungen, die eines der oben genannten Systeme oder Geräte enthalten, und dergleichen. Das Computersystem 1000 (z.B. ein Server) kann im allgemeinen Zusammenhang von Anweisungen beschrieben werden, die durch ein Computersystem 1000 ausgeführt werden können, wie zum Beispiel Programmmodule, die durch ein Computersystem 1000 ausgeführt werden. Im Allgemeinen können Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen usw. beinhalten, die bestimmte Aufgaben durchführen oder bestimmte abstrakte Datentypen implementieren. Das Computersystem 1000 (z.B. ein Server) kann in verteilten Cloud-Computing-Umgebungen angewendet werden, in denen Aufgaben durch entfernt angeordnete Verarbeitungseinheiten durchgeführt werden, die durch ein Datenübertragungsnetzwerk miteinander verbunden sind. Bei einer verteilten Cloud-Computing-Umgebung können sich Programmmodule sowohl in lokalen als auch in entfernt angeordneten Computersystem-Speichermedien befinden, darunter in Speichereinheiten.
  • Wie in 10 gezeigt, ist das Computersystem 1000 (z. B. ein Server) in Form einer Universal-Datenverarbeitungseinheit dargestellt. Die Komponenten des Computersystems 1000 (z. B. eines Servers) können einen oder mehrere Prozessoren oder Verarbeitungseinheiten 1002, einen Systemspeicher 1004 und einen Bus 1006 umfassen, der verschiedene Systemkomponenten, einschließlich des Systemspeichers 1004, mit den Verarbeitungseinheiten 1002 verbindet, sind aber nicht darauf beschränkt. Der Bus 1006 stellt eine oder mehrere von mehreren Arten von Busstrukturen dar, einschließlich eines Speicherbusses oder Speichercontrollers, eines Peripheriebusses, eines Accelerated Graphics Port und eines Prozessor- oder lokalen Busses, der eine beliebige von mehreren Busarchitekturen verwendet. Zu diesen Architekturen gehören beispielsweise der Industry Standard Architecture (ISA)-Bus, der Micro Channel Architecture (MCA)-Bus, der Enhanced ISA (EISA)-Bus, der Video Electronics Standards Association (VESA)-Local-Bus und der Peripheral Component Interconnects (PCI)-Bus, ohne diese jedoch einzuschränken. Das Computersystem 1000 (z.B. ein Server) enthält typischerweise eine Vielzahl von lesbaren Medien. Solche Medien können alle verfügbaren Medien sein, auf die das Computersystem 1000 (z.B. ein Server) zugreifen kann, und sie umfassen sowohl flüchtige als auch nichtflüchtige Medien, entfernbare und nicht entfernbare Medien.
  • Der Systemarbeitsspeicher 1004 kann ein von einem Computersystem lesbares Medium in Form eines flüchtigen Arbeitsspeichers wie z.B. eines Direktzugriffsspeichers (Random Access Memory, RAM) 1008 und/oder eines Cachespeichers 1010 beinhalten. Das Computersystem 1000 (z.B. ein Server) kann des Weiteren andere entfernbare/nicht entfernbare, flüchtige/nicht flüchtige Computersystem-Speichermedien beinhalten. Nur beispielgebend kann ein Speichersystem 1012 zum Lesen von und Schreiben auf ein nicht entfernbares, nicht flüchtiges magnetisches Medium (das nicht abgebildet ist und das üblicherweise als ein „Festplattenlaufwerk“ bezeichnet wird) bereitgestellt werden. Obwohl hier nicht abgebildet, können ein Magnetplattenlaufwerk zum Lesen von und Schreiben auf eine entfernbare, nicht flüchtige Magnetplatte (z.B. eine „Diskette“) sowie ein optisches Plattenlaufwerk zum Lesen von oder Schreiben auf eine entfernbare, nicht flüchtige optische Platte wie z.B. einen CD-ROM, einen DVD-ROM oder ein anderes optisches Medium bereitgestellt werden. In diesen Fällen kann jedes Laufwerk über ein oder mehrere Datenmedienschnittstellen mit dem Bus 1004 verbunden sein. Wie weiter unten ausführlicher dargestellt und beschrieben, kann der Arbeitsspeicher 1004 mindestens ein Programmprodukt mit einem Satz von (z.B. mindestens einem) Programmmodulen beinhalten, wobei diese so konfiguriert sind, dass sie die Funktionen von Ausführungsformen der Erfindung durchführen.
  • Ein Programm/Dienstprogramm mit einem Satz von (mindestens einem) Programmmodulen 1016 kann beispielsweise, und ohne als Beschränkung verstanden zu werden, im Arbeitsspeicher 1004 gespeichert sein, ebenso wie ein Betriebssystem, ein oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten. Die Betriebssysteme, das eine oder die mehreren Anwendungsprogramme, die anderen Programmmodule und die Programmdaten oder eine Kombination hiervon können jeweils eine Realisierung einer Netzwerkumgebung beinhalten. Die Programmmodule 1016 führen im Allgemeinen die Funktionen und/oder Verfahrensweisen von Ausführungsformen der hier beschriebenen Erfindung aus.
  • Das Computersystem 1000 (z.B. ein Server) kann zudem mit einer oder mehreren externen Einheiten 1018 Daten austauschen, z.B. mit einer Tastatur, einer Zeigeeinheit, einer Anzeige 1020 usw.; mit einer oder mehreren Einheiten, die einem Benutzer gestatten, mit dem Computersystem 1000 (z.B. Server) zu interagieren; und/oder mit beliebigen Einheiten (z.B. Netzwerkkarte, Modem usw.), die dem Computersystem 1000 (z.B. Server) ermöglichen, mit einer oder mehreren anderen Datenverarbeitungseinheiten Daten auszutauschen. Ein derartiger Datenaustausch kann über Eingabe/Ausgabe-Schnittstellen (E/A-Schnittstellen) 1014 erfolgen. Des Weiteren kann das Computersystem 1000 (z.B. ein Server) über einen Netzwerkadapter 1022 mit einem oder mehreren Netzwerken Daten austauschen, z.B. einem LAN, einem WAN und/oder einem öffentlichen Netz (z.B. dem Internet). Wie dargestellt, kann der Netzwerkadapter 1022 über den Bus 1006 Daten mit den anderen Komponenten des Computersystems 1000 (z.B. ein Server) austauschen. Dabei sollte klar sein, dass - obwohl sie hier nicht abgebildet sind - auch andere Hardware- und/oder Softwarekomponenten in Verbindung mit dem Computersystem 1000 (z.B. ein Server) verwendet werden könnten. Beispiele hierfür sind, ohne darauf beschränkt zu sein, Mikrocode, Einheitentreiber, redundante Verarbeitungseinheiten, externe Plattenlaufwerksstapel, RAID-Systeme, Bandlaufwerke und Datenarchivierungsspeichersysteme usw.
  • Zusätzlich kann das System zur Erkennung von Malware 900 zur Erkennung eines bösartigen Prozesses durch eine ausgewählte Instanz eines Anti-Malware-Systems an den Bus 1006 angeschlossen werden.
  • Die hier beschriebenen Programme werden auf der Grundlage der Anwendung, für die sie in einer bestimmten Ausführungsform der Erfindung implementiert sind, identifiziert. Es sollte jedoch anerkannt werden, dass jede bestimmte Programm-Nomenklatur hier nur der Einfachheit halber verwendet wird, und somit sollte die Erfindung nicht auf die Verwendung ausschließlich in einer bestimmten Anwendung identifiziert und/oder durch eine solche Nomenklatur impliziert beschränkt werden.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt auf jeder möglichen technischen Detailstufe der Integration handeln. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder -medien) mit darauf enthaltenen computerlesbaren Programmbefehlen beinhalten, um einen Prozessor zu veranlassen, Aspekte der vorliegenden Erfindung durchzuführen.
  • Das computerlesbare Speichermedium kann eine gegenständliche Einheit sein, die Befehle zur Verwendung durch eine Befehlsausführungseinheit beibehalten und speichern kann. Das computerlesbare Speichermedium kann z.B. eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder eine beliebige geeignete Kombination der vorgenannten Einheiten sein, ohne jedoch darauf beschränkt zu sein. Eine nicht vollständige Liste konkreterer Beispiele des computerlesbaren Speichermediums beinhaltet Folgendes: eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren, programmierbaren Nur-Lese-Speicher (EPROM- oder Flash-Speicher), einen statischen Direktzugriffsspeicher (SRAM), einen tragbaren CD-ROM, eine DVD, einen Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie z.B. Lochkarten oder erhabene Strukturen in einer Rille mit darauf aufgezeichneten Befehlen sowie eine beliebige geeignete Kombination der vorgenannten Elemente. Bei einem computerlesbaren Speichermedium, wie es hier verwendet wird, ist nicht davon auszugehen, dass es sich per se um flüchtige Signale wie z.B. Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Hohlleiter oder ein andere Übertragungsmedien ausbreiten (z.B. Lichtimpulse, die ein Lichtwellenleiterkabel durchlaufen), oder elektrische Signalen, die über eine Leitung übertragen werden, handelt.
  • Hier beschriebene computerlesbare Programmbefehle können über ein Netzwerk wie beispielsweise das Internet, ein lokales Netz (Local Area Network, LAN), ein Weitverkehrsnetz (Wide Area Network, WAN) und/oder ein drahtloses Netzwerk von einem computerlesbaren Speichermedium auf entsprechende Datenverarbeitungs-/VerarbeitungsEinheiten oder auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenleiter, eine drahtlose Übertragung, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungs-Einheit empfängt computerlesbare Programmbefehle von dem Netzwerk und leitet die computerlesbaren Programmbefehle zur Speicherung auf einem computerlesbaren Speichermedium innerhalb der betreffenden Datenverarbeitungs-/Verarbeitungs-Einheit weiter.
  • Bei computerlesbaren Programmbefehlen zum Durchführen von Operationen der vorliegenden Erfindung kann es sich um Assembler-Befehle, ISA-Befehle (Instruction-Set-Architecture), Maschinenbefehle, maschinenabhängige Befehle, Mikrocode, Firmware-Befehle, einen Zustand festlegende Daten, Konfigurationsdaten für integrierte Schaltkreise oder aber entweder um Quellcode oder um Objektcode handeln, der in einer beliebigen Kombination von einer oder mehreren Programmiersprachen wie z.B. einer objektorientierten Programmiersprache wie Smalltalk, C++ oder dergleichen, sowie in herkömmlichen prozeduralen Programmiersprachen wie z.B. der Programmiersprache „C“ oder ähnlichen Programmiersprachen geschrieben ist. Die computerlesbaren Programmbefehle können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder aber vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. Im letztgenannten Szenario kann der entfernt angeordnete Computer über eine beliebige Art von Netzwerk, unter anderem ein LAN oder ein WAN, mit dem Computer des Benutzers verbunden sein, oder die Verbindung kann mit einem externen Computer (z.B. über das Internet unter Verwendung eines Internet-Dienstanbieters) hergestellt werden. Bei manchen Ausführungsformen kann ein elektronischer Schaltkreis wie z.B. ein programmierbarer Logikschaltkreis, Field-Programmable Gate Arrays (FPGAs) oder Programmable Logic Arrays (PLAs) die computerlesbaren Programmbefehle ausführen, indem er Zustandsdaten der computerlesbaren Programmbefehle verwendet, um die elektronische Schaltung zu personalisieren und Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hier unter Bezugnahme auf Darstellungen von Ablaufplänen und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Dabei dürfte klar sein, dass jeder Block der Ablaufplan-Darstellungen und/oder Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplan-Darstellungen und/oder Blockschaubildern durch computerlesbare Programmbefehle realisiert werden kann/können.
  • Diese computerlesbaren Programmbefehle können einem Prozessor eines Computers oder einer anderweitigen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Befehle, die über den Prozessor des Computers oder der anderweitigen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel erzeugen, mit dem die Funktionen/Handlungen realisiert werden können, die in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubilds angegeben werden. Diese computerlesbaren Programmbefehle können auch auf einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten anweisen kann, auf eine bestimmte Art und Weise zu funktionieren, so dass das computerlesbare Speichermedium mit darauf gespeicherten Befehlen einen Herstellungsartikel aufweist, der Befehle enthält, welche Aspekte der in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubilds angegebenen Funktion/Handlung realisieren.
  • Die computerlesbaren Programmbefehle können zudem in einen Computer, eine anderweitige programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um zu veranlassen, dass eine Reihe von Funktionsschritten auf dem Computer, der anderweitigen programmierbaren Datenvorrichtung oder der anderen Einheit ausgeführt wird, so dass die Befehle, die auf dem Computer, der anderweitigen Datenverarbeitungsvorrichtung oder der anderen Einheit ausgeführt werden, die in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubilds angegebenen Funktionen/Handlungen realisieren.
  • Die Flussdiagramme und Blockschemata in den Figuren veranschaulichen die Architektur, Funktionalität und Wirkungsweise möglicher Realisierungsformen von Systemen, Verfahren, und Computerprogrammprodukten gemäß den verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Flussdiagrammen bzw. in den Blockschemata ein Modul, ein Segment oder einen Abschnitt von Anweisungen darstellen, das bzw. der eine oder mehrere ausführbare Anweisungen zum Realisieren der angegebenen Logikfunktion bzw. Logikfunktionen aufweist. Bei einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zum Beispiel können zwei hintereinander gezeigte Blöcke tatsächlich als ein Schritt ausgeführt, gleichzeitig, Wesentlichen gleichzeitig, in einer teilweise oder vollständig zeitlich überlappenden Weise ausgeführt werden, oder die Blöcke können je nach der mit den Blöcken verbundenen Funktionalität manchmal in umgekehrter Reihenfolge ausgeführt werden. Darüber hinaus ist anzumerken, dass jeder Block der dargestellten Blockschemata und/oder Flussdiagramme sowie Kombinationen von Blöcken in den dargestellten Blockschemata und/oder Flussdiagrammen mit Hilfe zweckgebundener hardwaregestützter Systeme zum Ausführen der angegebenen Funktionen bzw. Aktionen oder mit Hilfe von Kombinationen aus zweckgebundener Hardware und zweckgebundenen Computeranweisungen realisiert werden kann bzw. können.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung sollen der Veranschaulichung dienen, sind jedoch nicht als vollständig oder auf die offenbarten Ausführungsformen beschränkt gedacht. Für den Fachmann sind viele Modifikationen und Variationen denkbar, ohne dass diese eine Abweichung vom Schutzbereich der Erfindung darstellen würden. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsform, die praktische Anwendung bzw. die technische Verbesserung gegenüber den auf dem Markt vorgefundenen Technologien auf bestmögliche Weise zu erläutern bzw. anderen mit entsprechenden Fachkenntnissen das Verständnis der hierin offenbarten Ausführungsformen zu ermöglichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 20190319977 A1 [0006]
    • US 10148686 B2 [0007]

Claims (20)

  1. Verfahren, umfassend: Untersuchen, durch einen oder mehrere Prozessoren, eines Prozesses auf Indicators of Compromise für den Prozess; Ermitteln, durch einen oder mehrere Prozessoren, einer Kategorisierung des Prozesses, basierend auf einem Ergebnis der Untersuchung; in Reaktion auf die Ermittlung, dass die Kategorisierung des Prozesses nicht mit einem bekannten wohlwollenden Prozess und einem bekannten bösartigen Prozess übereinstimmt, Ausführen, durch einen oder mehrere Prozessoren, des Prozesses in einer sicheren Enklave; Erfassen, durch einen oder mehrere Prozessoren, von Telemetriedaten aus der Ausführung des Prozesses in der sicheren Enklave; Übergeben, durch einen oder mehrere Prozessoren, der erfassten Telemetriedaten an ein Lokal-Trainiertes-Neuronales- Netz-System, wobei Trainingsdaten des Lokal-Trainiertes-Neuronales-Netz-Systems Telemetriedaten aus Prozessen umfassen, die auf einem Host-System ausgeführt werden, das dem Lokal-Trainiertes-Neuronales-Netz-System zugrunde liegt; Ermitteln, durch einen oder mehrere Prozessoren, eines Ergebnisses einer ersten Verlustfunktion für das Lokal-Trainiertes-Neuronales Netz-System; und Vergleichen, durch einen oder mehrere Prozessoren, des Ergebnisses mit einem Ergebnis der Verlustfunktion am Ende eines Trainierens des Lokal-Trainiertes-Neuronales-Netz-Systems.
  2. Verfahren nach Anspruch 1, ferner umfassend: Übergeben, durch einen oder mehrere Prozessoren, der erfassten Telemetriedaten an ein föderiertes Trainiertes-Neuronales-Netz-System, wobei das föderierte Trainiertes-Neuronales-Netz-System dazu ausgebildet ist, es ein föderiertes Trainiertes-Neuronales-Netz-Modell zu empfangen; Ermitteln, durch einen oder mehrere Prozessoren, eines Ergebnisses einer zweiten Verlustfunktion für das föderierte Trainiertes-Neuronales-Netz-System; Vergleichen, durch einen oder mehrere Prozessoren, des Ergebnisses mit einem Ergebnis der Verlustfunktion des empfangenen föderierten Trainiertes-Neuronales-Netz-Modells des föderierten Trainiertes-Neuronales-Netz-Systems; Aggregieren, durch einen oder mehrere Prozessoren, der Ergebnisse der ersten Verlustfunktion und der zweiten Verlustfunktion; und Ermitteln, durch einen oder mehrere Prozessoren, ob der Prozess anomal ist, auf Grundlage der aggregierten Ergebnisse.
  3. Verfahren nach Anspruch 1, ferner umfassend: Erfassen, durch einen oder mehrere Prozessoren, von Telemetriedaten von nicht bösartigen Prozessen, die auf einer ausgewählten Instanz eines Anti-Malware-Systems ausgeführt werden; und erneutes Trainieren, durch einen oder mehrere Prozessoren, des Lokal-Trainiertes-Neuronales-Netz-Systems mit den erfassten Telemetriedaten, um ein aktualisiertes Lokales-Neuronales-Netz-Modell auf einer regelmäßigen Basis zu erzeugen.
  4. Verfahren nach Anspruch 2, ferner umfassend: Empfangen, durch einen oder mehrere Prozessoren, eines aktualisierten föderierten Neuronales-Netz-Modells für das föderierten Neuronales-Netz-System, wobei das föderierte Neuronales-Netz-Modell unter Verwendung von Lokal-Trainiertes-Neuronales-Netz-Modellen einer Mehrzahl von ausgewählten Instanzen als Eingabe erzeugt wird.
  5. Verfahren nach Anspruch 2, wobei mindestens eines der Lokal-Trainiertes-Neuronales-Netz-Systeme und das föderierte Trainiertes-Neuronales-Netz-System ein Autokodierer-System ist.
  6. Verfahren nach Anspruch 1, ferner umfassend: in Reaktion auf das Ermitteln, dass die Kategorisierung des Prozesses einem anomalen Prozess entspricht, Verwerfen, durch einen oder mehrere Prozessoren, des Prozesses.
  7. Verfahren nach Anspruch 1, ferner umfassend: in Reaktion auf das Ermitteln, dass der Prozess ein regulärer Prozess ist, auf Grundlage der Ausführung in der sicheren Enklave, Verlagern, durch einen oder mehrere Prozessoren, des Prozesses aus der sicheren Enklave; und Ausführen, durch einen oder mehrere Prozessoren, des Prozesses als regulärer Prozess.
  8. Verfahren nach Anspruch 2, wobei das föderierte Trainiertes-Neuronales-Netz-System mit Telemetriedaten von einer Mehrzahl von Hosts trainiert wird.
  9. Verfahren nach Anspruch 8, wobei das Trainieren des föderierten Neuronales-Netz-Systems ferner umfasst: Verarbeiten, durch einen oder mehrere Prozessoren, durch jedes einer Mehrzahl von empfangenen Lokal-Trainiertes-Neuronales- Netz-Modellen, eines Satzes von repräsentativen Telemetriedaten und Speichern entsprechender Ergebnisse; und Trainieren, durch einen oder mehrere Prozessoren, des föderierten neuronalen Netzes unter Verwendung von Eingabe/Ausgabe-Paaren von Telemetriedaten, die während der Verarbeitung der Telemetriedaten verwendet und erzeugt werden, als Eingabedaten für ein Trainieren des föderierten Neuronales-Netz-Modells.
  10. Verfahren nach Anspruch 9: wobei die Eingabe/Ausgabe-Paare von Telemetriedaten, die für das Trainieren des föderierten Neuronales-Netz-Modells verwendet werden, in Abhängigkeit von einer geographischen Nähe zwischen geographischen Host-Standorten der lokalen empfangenen Neuronales-Netz-Modelle und einem geographischen Host-Standort, für den ein neues föderierten Neuronales-Netz-Modell trainiert wird, gewichtet werden, und wobei die Eingabe/Ausgabedaten-Paare von Telemetriedaten, die für das Trainieren des föderierten Neuronales-Netz-Modells verwendet werden, in Abhängigkeit von einer vorbestimmten Metrik gewichtet werden.
  11. Verfahren nach Anspruch 2, wobei das Aggregieren der Ergebnisse der ersten Verlustfunktion und der zweiten Verlustfunktion ferner umfasst: Erstellen, durch einen oder mehrere Prozessoren, eines gewichteten Mittelwertes aus der ersten Verlustfunktion und der zweiten Verlustfunktion.
  12. Verfahren nach Anspruch 1, wobei die ermittelte Kategorisierung ausgewählt ist aus der Gruppe bestehend aus: einem bekannten wohlwollenden Prozess, einem bekannten bösartigen Prozess und einem unbekannten Prozess.
  13. Computersystem, umfassend: einen oder mehrere Computer-Prozessoren; ein oder mehrere computerlesbare Speichermedien; und Programmanweisungen, die auf dem computerlesbaren Speichermedium zur Ausführung durch mindestens einen der ein oder mehreren Computer-Prozessoren gespeichert sind, wobei die Programmanweisungen umfassen: Programmanweisungen zum Untersuchen eines Prozesses auf Indicators of Compromise für den Prozess; Programmanweisungen zum Ermitteln einer Kategorisierung des Prozesses basierend auf einem Ergebnis der Untersuchung; in Reaktion auf die Ermittlung, dass die Kategorisierung des Prozesses nicht mit einem bekannten wohlwollenden Prozess und einem bekannten bösartigen Prozess übereinstimmt, Programmanweisungen zum Ausführen des Prozesses in einer sicheren Enklave; Programmanweisungen zum Erfassen von Telemetriedaten aus der Ausführung des Prozesses in der sicheren Enklave; Programmanweisungen zum Übergeben der erfassten Telemetriedaten an ein Lokal-Trainiertes-Neuronales-Netz-System, wobei die Trainingsdaten des Lokal-Trainiertes-Neuronales-Netz-Systems Telemetriedaten aus Prozessen umfassen, die auf einem Host-System ausgeführt werden, das dem Lokal-Trainiertes-Neuronales-Netz-System zugrunde liegt; Programmanweisungen zum Ermitteln eines Ergebnisses einer ersten Verlustfunktion für das Lokal-Trainiertes-Neuronales-Netz-System; und Programmanweisungen zum Vergleichen des Ergebnisses mit einem Ergebnis der Verlustfunktion am Ende eines Trainierens des Lokal-Trainiertes-Neuronales-Netz-Systems.
  14. Computersystem nach Anspruch 13, das ferner Programmanweisungen umfasst, die auf dem computerlesbaren Speichermedium zur Ausführung durch mindestens einen der ein oder mehreren Prozessoren gespeichert sind, zum: Übergeben der erfassten Telemetriedaten an ein föderiertes Trainiertes-Neuronales-Netz-System, wobei das föderierte Trainiertes-Neuronales-Netz-System dazu ausgebildet ist, ein föderiertes Trainiertes-Neuronales-Netz-Modell zu empfangen; Ermitteln eines Ergebnisses einer zweiten Verlustfunktion für das föderierte Trainiertes-Neuronales-Netz-System; Vergleichen des Ergebnisses mit einem Ergebnis der Verlustfunktion des empfangenen föderierten Trainiertes-Neuronales-Netz-Modells des föderierten Trainiertes-Neuronales-Netz-Systems; Aggregieren der Ergebnisse der ersten Verlustfunktion und der zweiten Verlustfunktion; und Ermitteln, ob der Prozess anomal ist, auf Grundlage der aggregierten Ergebnisse.
  15. Computersystem nach Anspruch 13, das ferner Programmanweisungen umfasst, die auf dem computerlesbaren Speichermedium zur Ausführung durch mindestens einen der ein oder mehreren Prozessoren gespeichert sind, zum: Erfassen von Telemetriedaten von nicht bösartigen Prozessen, die auf einer ausgewählten Instanz eines Anti-Malware-Systems ausgeführt werden; und erneutes Trainieren des Lokal-Trainiertes-Neuronales-Netz-Systems mit den erfassten Telemetriedaten, um ein aktualisiertes Lokales-Neuronales-Netz-Modell auf einer regelmäßigen Basis zu erzeugen.
  16. Computersystem nach Anspruch 13, das ferner Programmanweisungen umfasst, die auf dem computerlesbaren Speichermedium zur Ausführung durch mindestens einen der ein oder mehreren Prozessoren gespeichert sind, zum: in Reaktion auf das Ermitteln, dass die Kategorisierung des Prozesses einem anomalen Prozess entspricht, Verwerfen des Prozesses.
  17. Computersystem nach Anspruch 13, das ferner Programmanweisungen umfasst, die auf dem computerlesbaren Speichermedium zur Ausführung durch mindestens einen der ein oder mehreren Prozessoren gespeichert sind, zum: in Reaktion auf das Ermitteln, dass der Prozess ein regulärer Prozess ist, auf Grundlage der Ausführung in der sicheren Enklave, Verlagern des Prozesses aus der sicheren Enklave; und Ausführen des Prozesses als regulärer Prozess.
  18. Computersystem nach Anspruch 14, wobei das föderierte Trainiertes-Neuronales-Netz-System mit Telemetriedaten von einer Mehrzahl von Hosts trainiert wird.
  19. Computerprogrammprodukt, umfassend: ein oder mehrere computerlesbare Speichermedien und Programmanweisungen, die auf dem einen oder den mehreren computerlesbaren Speichermedien gespeichert sind, wobei die Programmanweisungen umfassen: Programmanweisungen zum Untersuchen eines Prozesses auf Indicators of Compromise für den Prozess; Programmanweisungen zum Ermitteln einer Kategorisierung des Prozesses basierend auf einem Ergebnis der Untersuchung; in Reaktion auf das Ermitteln, dass die Kategorisierung des Prozesses nicht einem bekannten wohlwollenden Prozess und einem bekannten bösartigen Prozess entspricht, Programmanweisungen zum Ausführen des Prozesses in einer sicheren Enklave; Programmanweisungen zum Erfassen von Telemetriedaten aus dem Ausführen des Prozesses in der sicheren Enklave; Programmanweisungen, um die erfassten Telemetriedaten an ein Lokal-Trainiertes-Neuronales-Netz-System zu übergeben, wobei die Trainingsdaten des Lokal-Trainierten-Neuronalen-Netz-Systems Telemetriedaten aus Prozessen umfassen, die auf einem Host-System ausgeführt werden, das dem Lokal-Trainierten-Neuronalen-Netz-System zugrunde liegt; Programmanweisungen, um ein Ergebnis einer ersten Verlustfunktion für das lokal trainierte Neuronales-Netz-System zu ermitteln; und Programmanweisungen, um das Ergebnis mit einem Ergebnis der Verlustfunktion am Ende eines Trainierens des lokal trainierten neuronalen Netzwerk-Systems zu vergleichen.
  20. Computerprogrammprodukt nach Anspruch 19, das ferner Programmanweisungen umfasst, die auf dem einen oder mehreren computerlesbaren Speichermedien gespeichert sind, zum: Übergeben der erfassten Telemetriedaten an ein föderiertes Trainiertes-Neuronales-Netz-System, wobei das föderierte Trainiertes-Neuronales-Netz-System dazu ausgebildet ist, ein föderiertes Trainiertes-Neuronales-Netz-Modell zu empfangen; Ermitteln eines Ergebnisses einer zweiten Verlustfunktion für das föderierte Trainiertes-Neuronales-Netz-System; Vergleichen des Ergebnisses mit einem Ergebnis der Verlustfunktion des empfangenen föderierten Trainiertes-Neuronales-Netz-Modells des föderierten Trainiertes-Neuronales-Netz-Systems; Aggregieren der Ergebnisse der ersten Verlustfunktion und der zweiten Verlustfunktion; und Ermitteln, ob der Prozess anomal ist, auf Grundlage der aggregierten Ergebnisse.
DE112021004808.2T 2020-10-13 2021-09-27 Erkennen von malware durch analyse verteilter telemetriedaten Pending DE112021004808T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/069,189 US11886587B2 (en) 2020-10-13 2020-10-13 Malware detection by distributed telemetry data analysis
US17/069,189 2020-10-13
PCT/CN2021/120874 WO2022078196A1 (en) 2020-10-13 2021-09-27 Malware detection by distributed telemetry data analysis

Publications (1)

Publication Number Publication Date
DE112021004808T5 true DE112021004808T5 (de) 2023-07-20

Family

ID=81077750

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021004808.2T Pending DE112021004808T5 (de) 2020-10-13 2021-09-27 Erkennen von malware durch analyse verteilter telemetriedaten

Country Status (5)

Country Link
US (1) US11886587B2 (de)
JP (1) JP2023549284A (de)
DE (1) DE112021004808T5 (de)
GB (1) GB2616506A (de)
WO (1) WO2022078196A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220405573A1 (en) * 2021-06-18 2022-12-22 Ford Global Technologies, Llc Calibration for a distributed system
US11693965B1 (en) * 2022-06-17 2023-07-04 Uab 360 It Malware detection using federated learning
EP4336294A1 (de) * 2022-09-09 2024-03-13 AO Kaspersky Lab System und verfahren zur erkennung von anomalien in einem cyberphysikalischen system
US12002055B1 (en) * 2023-09-13 2024-06-04 Progressive Casualty Insurance Company Adaptable processing framework

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10148686B2 (en) 2016-02-10 2018-12-04 Accenture Global Solutions Limited Telemetry analysis system for physical process anomaly detection
US20190319977A1 (en) 2019-06-27 2019-10-17 Intel Corporation Systems and Methods to Fingerprint and Classify Application Behaviors Using Telemetry

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7331062B2 (en) * 2002-08-30 2008-02-12 Symantec Corporation Method, computer software, and system for providing end to end security protection of an online transaction
US8881282B1 (en) 2004-04-01 2014-11-04 Fireeye, Inc. Systems and methods for malware attack detection and identification
US8490194B2 (en) 2006-01-31 2013-07-16 Robert Moskovitch Method and system for detecting malicious behavioral patterns in a computer, using machine learning
US8745361B2 (en) 2008-12-02 2014-06-03 Microsoft Corporation Sandboxed execution of plug-ins
US8306931B1 (en) 2009-08-06 2012-11-06 Data Fusion & Neural Networks, LLC Detecting, classifying, and tracking abnormal data in a data stream
US9134996B2 (en) * 2011-04-28 2015-09-15 F-Secure Corporation Updating anti-virus software
US9996694B2 (en) 2013-03-18 2018-06-12 The Trustees Of Columbia University In The City Of New York Unsupervised detection of anomalous processes using hardware features
US9195833B2 (en) 2013-11-19 2015-11-24 Veracode, Inc. System and method for implementing application policies among development environments
US9262635B2 (en) * 2014-02-05 2016-02-16 Fireeye, Inc. Detection efficacy of virtual machine-based analysis with application specific events
US9853997B2 (en) 2014-04-14 2017-12-26 Drexel University Multi-channel change-point malware detection
US9959405B2 (en) 2014-05-28 2018-05-01 Apple Inc. Sandboxing third party components
US10419452B2 (en) * 2015-07-28 2019-09-17 Sap Se Contextual monitoring and tracking of SSH sessions
US10375090B2 (en) 2017-03-27 2019-08-06 Cisco Technology, Inc. Machine learning-based traffic classification using compressed network telemetry data
CN108092962B (zh) * 2017-12-08 2020-11-06 奇安信科技集团股份有限公司 一种恶意url检测方法及装置
KR102464863B1 (ko) * 2018-06-01 2022-11-09 탈레스 캐나다 아이엔씨 신경망을 사용하는 데이터 인코딩 및/또는 디코딩 시스템 및 방법
US11699080B2 (en) * 2018-09-14 2023-07-11 Cisco Technology, Inc. Communication efficient machine learning of data across multiple sites
US11706499B2 (en) * 2018-10-31 2023-07-18 Sony Interactive Entertainment Inc. Watermarking synchronized inputs for machine learning
CN109635563A (zh) 2018-11-30 2019-04-16 北京奇虎科技有限公司 用于识别恶意应用程序的方法、装置、设备及存储介质
CN111260053A (zh) 2020-01-13 2020-06-09 支付宝(杭州)信息技术有限公司 使用可信执行环境来进行神经网络模型训练的方法和装置
CN111368297B (zh) 2020-02-02 2023-02-28 西安电子科技大学 隐私保护移动恶意软件检测方法、系统、存储介质及应用
US20210365841A1 (en) * 2020-05-22 2021-11-25 Kiarash SHALOUDEGI Methods and apparatuses for federated learning
US20220076133A1 (en) * 2020-09-04 2022-03-10 Nvidia Corporation Global federated training for neural networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10148686B2 (en) 2016-02-10 2018-12-04 Accenture Global Solutions Limited Telemetry analysis system for physical process anomaly detection
US20190319977A1 (en) 2019-06-27 2019-10-17 Intel Corporation Systems and Methods to Fingerprint and Classify Application Behaviors Using Telemetry

Also Published As

Publication number Publication date
US11886587B2 (en) 2024-01-30
GB2616506A (en) 2023-09-13
GB202300649D0 (en) 2023-03-01
WO2022078196A1 (en) 2022-04-21
US20220114260A1 (en) 2022-04-14
JP2023549284A (ja) 2023-11-22

Similar Documents

Publication Publication Date Title
DE112019001121B4 (de) Auf einem computer implementiertes verfahren zum identifizieren von malware und system hierfür
Sharma et al. User behavior analytics for anomaly detection using LSTM autoencoder-insider threat detection
DE112021004808T5 (de) Erkennen von malware durch analyse verteilter telemetriedaten
Kumar et al. An integrated rule based intrusion detection system: analysis on UNSW-NB15 data set and the real time online dataset
Wang et al. A graph based approach toward network forensics analysis
DE112012002624B4 (de) Regex-Kompilierer
DE102017128693A1 (de) Merkmal- und Grenzeinstellung zur Bedrohungserkennung in einem industriellen Anlagensteuersystem
DE112010003454B4 (de) Bedrohungserkennung in einem Datenverarbeitungssystem
DE69817176T2 (de) Verfahren und Vorrichtung zur Eindringdetektion in Rechnern und Rechnernetzen
DE112020001038T5 (de) Detektion von phishing-kampagnen
EP3340570A1 (de) Profilierung von bedrohungen aus dem cyberspace, die in einer zielumgebung erkannt werden, und automatische erstellung einer oder mehrerer regelbasen für ein expertensystem, das zur profilierung von bedrohungen aus dem cyberspace verwendbar ist, die in einer zielumgebung erkannt wurden
DE112016001742T5 (de) Integrierte Gemeinschafts- und Rollenentdeckung in Unternehmensnetzwerken
DE112021002259T5 (de) Network intrusion detection durch deep learning
Mac et al. Detecting attacks on web applications using autoencoder
DE112011103273B4 (de) Verfahren, Computerprogrammprodukt und Vorrichtung zur Weitergabe von Identitäten über Anwendungsebenen unter Verwendung von kontextabhängiger Zuordnung und gesetzten Werten
Tabash et al. Intrusion detection model using naive bayes and deep learning technique.
DE202011111121U1 (de) System zum Erfassen komplexer Schadsoftware
DE202010018642U1 (de) System zur Erfassung zuvor unbekannter Schadsoftware
DE112006001378T5 (de) Automatische Verwaltung einer Speicherzugriffssteuerung
DE202012013609U1 (de) System zur Verteilung der Verarbeitung von Computer-Sicherheitsaufgaben
DE112019003431T5 (de) Regelerzeugung mithilfe von künstlicher intelligenz
DE102022201746A1 (de) Verwaltung von rechenzentren mit maschinellem lernen
Smelyakov et al. Investigation of network infrastructure control parameters for effective intellectual analysis
DE112020002552T5 (de) System und verfahren für eine siem-regel-sortierung und bedingte ausführung
DE112021000689T5 (de) Attestierung von neuronalen abläufen

Legal Events

Date Code Title Description
R012 Request for examination validly filed