DE112020004992T5 - Aufrechterhalten der sicherheit eines systems - Google Patents

Aufrechterhalten der sicherheit eines systems Download PDF

Info

Publication number
DE112020004992T5
DE112020004992T5 DE112020004992.2T DE112020004992T DE112020004992T5 DE 112020004992 T5 DE112020004992 T5 DE 112020004992T5 DE 112020004992 T DE112020004992 T DE 112020004992T DE 112020004992 T5 DE112020004992 T5 DE 112020004992T5
Authority
DE
Germany
Prior art keywords
computer
metadata
data file
data
computer processors
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
DE112020004992.2T
Other languages
English (en)
Inventor
Paul Bastide
Rohit Ranchal
Shakil Manzoor Khan
Senthil Bakthavachalam
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020004992T5 publication Critical patent/DE112020004992T5/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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • 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/562Static detection
    • G06F21/565Static detection by checking file integrity
    • 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/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Aufrechterhalten der Sicherheit eines Systems durch Empfangen von Metadaten, die mindestens einem Teil einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit, Erzeugen einer Priorität für den mindestens einen Teil einer Datendatei entsprechend den Metadaten und Durchführen einer Überprüfung des Teils der Datendatei. Die Metadaten umfassen einen oder mehrere Indikatoren für Viren.

Description

  • Technisches Gebiet
  • Die Offenbarung betrifft allgemein ein Aufrechterhalten der Sicherheit eines Datenverarbeitungssystems und der Integrität von Daten in einem großen Datenspeichersystem. Die Offenbarung betrifft insbesondere ein Aufrechterhalten von Systemsicherheit und Datenintegrität durch Überprüfen auf böswilligen Code und bösartige Daten.
  • HINTERGRUND
  • Aktuelle Multi-Tenant-Systeme, beispielsweise Systeme im Gesundheitswesen, im Einzelhandel, in der Telekommunikation und im Finanzdienstleistungssektor, können mehrere Anbieter, Kunden und Dienstleistungsorganisationen umfassen, die mit einem einzigen logischen Datenverarbeitungssystem verbunden sind. Das logische Datenverarbeitungssystem kann cloudbasiert oder lokal sein und sowohl kontinuierliche Datenströme als auch Massendatenpakete empfangen, die sich in einem Datenspeicher zu Gigabytes und Terabytes an Daten anhäufen.
  • Eingehende Daten müssen auf Viren, Malware und andere bösartige Daten überprüft werden, um die Sicherheit des Systems und seiner Benutzer aufrechtzuerhalten. Vorhandene Daten müssen erneut überprüft werden, da Virusdefinitionen aktualisiert werden, wenn neue Zero-Day-Exploits entdeckt werden. Zum Überwachen eingehender Daten wird ein Abwehrsystem gegen Angriffe von außen (intrusion prevention system, IPS) verwendet. Das IPS kann integriert sein und Echtzeit-Daten überwachen, wenn sie von externen Quellen im Datenstrom zum Speichern an den Datensee übertragen werden, oder es kann extern sein, wobei Kopien der an das IPS weitergeleiteten Daten verarbeitet werden. Eingehende Daten können auch redundante Daten umfassen, die die Arbeitslast des IPS erhöhen, da doppelte Inhalte überprüft werden müssen.
  • Die Prüfaktivitäten des IPS müssen ohne Unterbrechung des Kundenzugangs zu den Daten und ohne Unterbrechung der kontinuierlichen Ströme eingehender Daten ausgeführt werden. Die Datenströme müssen ohne Unterbrechung im System landen, um normale Arbeitsgänge fortzusetzen, Kosten für Zugang/Abgang zu senken, eine Verschwendung von System-Ressourcen zu verringern oder zu beseitigen und einen vollständigen Zugang zu Systemdiensten für Benutzer und andere Teile der Systemplattform aufrechtzuerhalten.
  • Daher besteht in der Technik ein Bedarf, das vorgenannte Problem anzugehen.
  • KURZDARSTELLUNG
  • Unter einem weiteren Aspekt stellt die vorliegende Erfindung ein durch einen Computer implementiertes Verfahren zum Aufrechterhalten der Sicherheit eines Datenverarbeitungssystems bereit, wobei das Verfahren aufweist: Empfangen von Metadaten aus einer Metadatenspeichereinheit durch einen oder mehrere Computerprozessoren, wobei die Metadaten mindestens einem Teil einer Datendatei zugehörig sind; Erzeugen einer Priorität für den mindestens einen Teil der Datendatei durch den einen oder mehrere Computerprozessoren entsprechend den Metadaten; und Durchführen einer Überprüfung der Datendatei entsprechend der Priorität durch den einen oder mehrere Computerprozessoren; wobei die Metadaten einen oder mehrere Indikatoren für Viren aufweisen.
  • Unter einem weiteren Aspekt stellt die vorliegende Erfindung ein durch einen Computer implementiertes Verfahren zum Aufrechterhalten der Sicherheit eines Systems bereit, wobei das Verfahren aufweist: Empfangen einer aktualisierten Virusdefinition durch einen oder mehrere Computerprozessoren; Erhalten von Metadaten, die mindestens einer Datendatei zugehörig sind, durch einen oder mehrere Computerprozessoren aus einer Metadatenspeichereinheit; Erzeugen einer Priorität für die mindestens eine Datendatei durch den einen oder mehrere Computerprozessoren entsprechend den Metadaten und der aktualisierten Virusdefinition; Auswählen einer Datendatei entsprechend der Priorität durch den einen oder mehrere Computerprozessoren; Durchführen einer Überprüfung der Datendatei durch den einen oder mehrere Computerprozessoren; Aktualisieren der Metadaten der Datendatei durch den einen oder mehrere Computerprozessoren entsprechend der Überprüfung; und Bereitstellen der Datendatei durch den einen oder mehrere Computerprozessoren zum weiteren Verarbeiten.
  • Unter einem weiteren Aspekt stellt die vorliegende Erfindung ein durch einen Computer implementiertes Verfahren zum Aufrechterhalten der Sicherheit eines Systems bereit, wobei das Verfahren aufweist: Erhalten von Metadaten, die mindestens einer Datendatei zugehörig sind, durch einen oder mehrere Computerprozessoren aus einer Metadatenspeichereinheit; Erzeugen einer Priorität für die mindestens eine Datendatei durch den einen oder mehrere Computerprozessoren entsprechend den Metadaten; Auswählen einer Datendatei entsprechend der Priorität durch den einen oder mehrere Computerprozessoren; Durchführen einer Überprüfung der Datendatei durch den einen oder mehrere Computerprozessoren; Ermitteln einer Bewertung allgemeiner Schwachstellen- und Gefährdungen (common vulnerabilities and exposures, CVE) für die Datendatei durch den einen oder mehrere Computerprozessoren; Aktualisieren der Metadaten der Datendatei durch den einen oder mehrere Computerprozessoren entsprechend der Überprüfung; und Bereitstellen der Bewertung durch den einen oder mehrere Computerprozessoren für einen Systembenutzer zur Auswertung.
  • Unter einem weiteren Aspekt stellt die vorliegende Erfindung ein Computersystem zum Aufrechterhalten der Sicherheit eines Systems bereit, wobei das Computersystem aufweist: einen oder mehrere Computerprozessoren; eine oder mehrere durch einen Computer lesbare Speichereinheiten; und gespeicherte Programmanweisungen auf der einen oder mehreren durch einen Computer lesbaren Speichereinheiten zum Ausführen durch den einen oder mehrere Computerprozessoren, wobei die gespeicherten Programmanweisungen aufweisen: Programmanweisungen zum Empfangen von Metadaten, die mindestens einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit; Programmanweisungen zum Erzeugen einer Priorität für die mindestens eine Datendatei entsprechend den Metadaten; und Programmanweisungen zum Durchführen einer Überprüfung der Datendatei entsprechend der Priorität; wobei die Metadaten einen oder mehrere Indikatoren für Viren aufweisen.
  • Unter einem weiteren Aspekt stellt die vorliegende Erfindung ein Computerprogrammprodukt zum Aufrechterhalten der Sicherheit eines Systems bereit, wobei das Computerprogrammprodukt ein durch einen Computer lesbares Speichermedium aufweist, das von einer Verarbeitungsschaltung gelesen werden kann und Anweisungen zum Ausführen durch die Verarbeitungsschaltung speichert, um ein Verfahren zum Ausführen der Schritte der Erfindung auszuführen.
  • Unter einem weiteren Aspekt stellt die vorliegende Erfindung ein Computerprogramm bereit, das auf einem durch einen Computer lesbaren Medium gespeichert ist und in den internen Speicher eines digitalen Computers geladen werden kann, wobei das Computerprogramm Software-Codeteile aufweist, um beim Ausführen des Programms auf einem Computer die Schritte der Erfindung auszuführen.
  • Unter einem weiteren Aspekt stellt die vorliegende Erfindung ein Computerprogrammprodukt zum Aufrechterhalten der Sicherheit eines Systems bereit, wobei das Computerprogrammprodukt eine oder mehrere durch einen Computer lesbare Speichereinheiten und gespeicherte Programmanweisungen auf der einen oder mehreren durch einen Computer lesbaren Speichereinheiten aufweist, wobei die gespeicherten Programmanweisungen aufweisen: Programmanweisungen zum Empfangen von Metadaten, die mindestens einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit; Programmanweisungen zum Erzeugen einer Priorität für die mindestens eine Datendatei entsprechend den Metadaten; und Programmanweisungen zum Ausführen einer Überprüfung der Datendatei entsprechend der Priorität; wobei die Metadaten einen oder mehrere Indikatoren für Viren aufweisen.
  • Im Folgenden wird eine Kurzdarstellung dargelegt, um ein grundlegendes Verständnis einer oder mehrerer Ausführungsformen der Offenbarung zu vermitteln. Diese Kurzdarstellung ist nicht dazu gedacht, wichtige oder kritische Elemente zu kennzeichnen oder einen Schutzumfang der einzelnen Ausführungsformen oder einen Schutzumfang der Ansprüche abzugrenzen. Ihr einziger Zweck besteht darin, Konzepte in vereinfachter Form als Auftakt zu der später folgenden ausführlicheren Beschreibung darzustellen. In einer oder mehreren hierin beschriebenen Ausführungsformen ermöglichen Einheiten, Systeme, durch einen Computer implementierte Verfahren, Vorrichtungen und/oder Computerprogrammprodukte ein Priorisieren und Überprüfen von Datendateien auf bösartigen Code, bevor Benutzern ein Zugreifen auf die Daten gestattet wird.
  • Unter einem Aspekt umfasst die Erfindung Verfahren, Systeme und durch einen Computer lesbare Medien im Zusammenhang mit einem Aufrechterhalten der Sicherheit eines Systems durch kontinuierliches Überwachen von Datendateien, wenn diese im Datenstrom oder in großen Mengen empfangen werden, bevor die Dateien verarbeitet werden oder anderweitig von Benutzern darauf zugegriffen wird. Unter diesem Aspekt gehen die Systeme, Verfahren und Computerprogrammprodukte so vor, dass sie Metadaten, die mindestens einem Teil einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit empfangen, eine Priorität für den mindestens einen Teil einer Datendatei entsprechend den Metadaten erzeugen und eine Überprüfung des Teils der Datendatei durchführen. Die Metadaten umfassen einen oder mehrere Indikatoren für Viren. Nach dem Empfangen werden die Daten Benutzern ohne Unterbrechung zur Verfügung gestellt.
  • Unter einem Aspekt umfasst die Erfindung Verfahren, Systeme und durch einen Computer lesbare Medien im Zusammenhang mit einem Aufrechterhalten der Sicherheit eines Systems, da sich Virusdefinitionen im Laufe der Zeit ändern. Unter diesem Aspekt gehen die Systeme, Verfahren und Computerprogrammprodukte vor, indem sie eine aktualisierte Virusdefinition empfangen, Metadaten, die mindestens einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit erhalten, eine Priorität für die mindestens eine Datendatei entsprechend den Metadaten und der aktualisierten Virusdefinition erzeugen, eine Datendatei entsprechend der erzeugten Priorität auswählen, eine Überprüfung der Datendatei durchführen, die Metadaten der Datendatei entsprechend der Überprüfung aktualisieren und die Datendatei zum weiteren Verarbeiten bereitstellen.
  • Unter einem Aspekt umfasst die Erfindung Verfahren, Systeme und durch einen Computer lesbare Medien im Zusammenhang mit einem Aufrechterhalten der Sicherheit eines Systems mit dem zusätzlichen Vorteil, dass sie einem Benutzer oder einem automatisierten Empfangssystem die Bewertung allgemeiner Schwachstellen und Gefährdungen für jede überprüfte Datei bereitstellen. Der Benutzer oder das Empfangssystem ermittelt sodann, ob die überprüfte Datei zum weiteren Verarbeiten und Verwenden in ein Datenverarbeitungssystem geladen werden soll. Die Erfindungen unter diesem Aspekt gehen so vor, dass Metadaten, die mindestens einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit erhalten werden, eine Priorität für die mindestens eine Datendatei entsprechend den Metadaten erzeugt wird, eine Datendatei entsprechend der Priorität ausgewählt wird, eine Überprüfung der Datendatei durchgeführt wird, eine Bewertung allgemeiner Schwachstellen und Gefährdungen für die Datendatei ermittelt wird, die Metadaten der Datendatei entsprechend der Überprüfung aktualisiert werden und die Bewertung einem Systembenutzer zur Auswertung bereitgestellt wird.
  • Figurenliste
  • Durch die ausführlichere Beschreibung einiger Ausführungsformen der vorliegenden Offenbarung in den beigefügten Zeichnungen werden die obigen und andere Aufgaben, Merkmale und Vorteile der vorliegenden Offenbarung offensichtlicher, wobei sich die gleiche Bezugszahl im Allgemeinen auf die gleichen Komponenten in den Ausführungsformen der vorliegenden Offenbarung bezieht.
    • 1 stellt eine schematische Veranschaulichung eines Systems gemäß einer Ausführungsform der Erfindung dar.
    • 2 stellt einen Ablaufplan dar, der eine Verarbeitungsfolge gemäß einer Ausführungsform der Erfindung zeigt.
    • 3 zeigt eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der Erfindung.
    • 4 zeigt Abstraktionsmodellschichten gemäß einer Ausführungsform der Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Einige Ausführungsformen werden unter Bezugnahme auf die beigefügten Zeichnungen ausführlicher beschrieben, in denen die Ausführungsformen der vorliegenden Offenbarung veranschaulicht werden. Die vorliegende Offenbarung kann jedoch auf verschiedene Weise umgesetzt werden und sollte daher nicht so ausgelegt werden, dass sie auf die hierin offenbarten Ausführungsformen beschränkt ist.
  • In einer Ausführungsform können eine oder mehrere Komponenten des Systems Hardware und/oder Software einsetzen, um hochtechnische Probleme zu lösen (z.B. ein Priorisieren von Dateien anhand von Metadaten und ein Überprüfen priorisierter Dateien usw.). Diese Lösungen sind nicht abstrakt und können aufgrund der Verarbeitungsfähigkeiten, die beispielsweise zum Ermöglichen einer Code-Überprüfung und -Fehlerbehebung erforderlich sind, nicht als eine Reihe von geistigen Handlungen eines Menschen ausgeführt werden. Darüber hinaus können einige der ausgeführten Prozesse von einem spezialisierten Computer ausgeführt werden, um bestimmte Aufgaben im Zusammenhang mit Speichervorgängen durchzuführen. Zum Beispiel kann ein spezialisierter Computer eingesetzt werden, um Aufgaben im Zusammenhang mit einer Code-Überprüfung und -Fehlerbehebung und dergleichen auszuführen.
  • Bei verteilten Big-Data-Verarbeitungssystemen stellen sich besondere Probleme der Systemsicherheit. Diese Systeme empfangen und verteilen sehr große Datendateien, die in Gigabyte und Terabyte gemessen werden. Die empfangenen Daten stammen aus einer Vielzahl von Quellen, von denen einige zuverlässiger sind als andere und von denen einige möglicherweise nicht überprüfen oder sicherstellen, dass die bereitgestellten Daten frei von Viren, Malware und anderen eingebetteten Problemen mit Daten sind. Systembenutzer benötigen einen ununterbrochenen Zugriff auf Systemdaten in einer verteilten Umgebung, in der ein Anhalten von Diensten oder Datenzugriff zum Überprüfen oder Beheben von Datenproblemen keine praktikable Option ist. Systembenutzer können Datenblöcke zum weiteren Verarbeiten und Verwenden herunterladen. Eine Angabe des Sicherheitsprofils der Daten hilft Benutzern beim Ermitteln, welche Blöcke sicher sind und einem Datenverarbeitungssystem zum Verwenden hinzugefügt werden können. Solche Systeme können auch doppelte Dateien aus einer einzigen Quelle oder aus mehreren Quellen empfangen. Ein Verarbeiten doppelter Datensätze aus Sicherheitsgründen vergeudet knappe Systemressourcen.
  • In einer Ausführungsform umfasst das System einen Datenspeicher zum Speichern großer (Gigabyte und Terabyte großer) Dateien. Das System umfasst außerdem eine Metadatenspeichereinheit, die eine oder mehrere Metadatentabellen zwischenspeichert. Die Metadatenspeichereinheit kann lokal oder cloudbasiert sein. Die Tabellen umfassen Metadatensätze für die großen Dateien, die im Datenspeicher zwischengespeichert sind. In dieser Ausführungsform speichern die Tabellen Metadatenfelder, darunter einige oder alle der folgenden: Daten in Bezug auf eine Dateikennung, Status der Dateiverarbeitung - ist die Datei für nachgelagerte Verwendungen verfügbar usw., Zeitpunkt der Dateiverarbeitung - einen Eintrag des letzten Zeitpunkts, zu dem die Daten durch das Verfahren verarbeitet wurden, eine CVE-Bewertung für die Datei, in der Datei erkannte Viren, ausführliche Daten zur Virusbeschreibung, Informationen zum Dateiformat und Daten in Bezug auf nachgelagerte Verarbeitungsanforderungen für die Datei. Verschiedene Dateiformate sind enger korreliert mit datengebundenen Problemen. Dateien, die für eine nachgelagerte Verarbeitung vorgesehen sind, erfordern im Gegensatz zu einer langfristigen Speicherung mehr Aufmerksamkeit und ein sofortiges Überprüfen.
  • Die offenbarten Erfindungen sind auf einzelne oder mehrere Anwendungssysteme anwendbar, die fest auf einem einzigen Server installiert oder über mehrere Cloud-Mietverträge verteilt sind. Die Erfindungen sind anwendbar auf eine nahezu in Echtzeit erfolgende Datenverarbeitung von Datenströmen sowie auf eine Stapel- und Massendatenvera rbe itung.
  • In einigen Ausführungsformen umfassen die Metadaten auch Kontrollsummendaten, die den Datendateien zugehörig sind. Für Stapel- oder Massendatendateien, die extern empfangen werden, berechnet das Verfahren eine Kontrollsumme, beispielsweise den Hash-Wert (SHA256), für die Datei. Selbst geringfügige Änderungen an der Datei führen zu einem anderen Kontrollsummenwert, was darauf hinweist, dass die Datei geändert wurde. Die Kontrollsumme wird als der Datei zugehörige Metadaten gespeichert. In einigen Ausführungsformen kann die Datei mit einem Kontrollsummenwert versehen werden. In diesen Ausführungsformen vergleicht das Verfahren die berechnete Kontrollsumme mit dem bereitgestellten Wert, um zu ermitteln, ob an der Datei Änderungen vorgenommen wurden. Die Kontrollsumme kann eine Kontrollsummentechnik wie etwa SHA256, MD5 oder ein anderes Verfahren zum Berechnen einer Kontrollsumme unter Verwenden der Byte-Darstellung der Datendatei verwenden.
  • In einer Ausführungsform berechnet das Verfahren Kontrollsummenwerte für Datenstromdateien sowie für extern empfangene Massendateien. Für Datenströme berechnet das Verfahren kontinuierlich Kontrollsummenwerte parallel zu den im Datenspeicher des Systems ankommenden Datenströmen. Das Verfahren speichert die während des Streaming berechneten Kontrollsummenwerte als Metadaten in einer Nachschlagetabelle. Nachdem die Datendatei vollständig angekommen ist, wird der endgültige Kontrollsummenwert für die Datei in Verbindung mit der Streaming-Datei in der Metadatenspeichereinheit gespeichert. In einer Ausführungsform unterteilt das Verfahren die Datendatei in Teile wie Blöcke oder Segmente der Datei. In dieser Ausführungsform berechnet das Verfahren eine Kontrollsumme für jeden Teil der Datendatei. Wenn jeder Teil vollständig empfangen worden ist, wird die Kontrollsumme für jeden Teil der Datendatei in Form von Metadaten gespeichert, die diesem Teil der Datei zugehörig sind. In einer Ausführungsform überlappen sich die Teile, um sicherzustellen, dass Viren nicht zwischen benachbarten Blöcken aufgeteilt und übersehen werden. Segmente können so aufgefüllt werden, dass jedes Segment einen Teil des vorherigen Segments umfasst, zum Beispiel kann jedes 100-Megabyte-Segment so aufgefüllt werden, dass es die letzten 100 Kilobyte des vorherigen Segments umfasst. In einer Ausführungsform werden 100-Megabyte-Segmente um +/- 500 Kilobyte aufgefüllt, um sicherzustellen, dass aufgrund des Segmentierens der Datendatei beim Überprüfen der Segmente keine Lücken entstehen. In dieser Ausführungsform würden die Segmente zwischen 0 und 1,5 MB, 1 und 2,5 MB, 2 und 3,5 MB usw. liegen, wodurch die Wahrscheinlichkeit verringert wird, dass ein Teil von bösartigem Code einer Entdeckung entgeht, indem er zwischen zwei benachbarten Segmenten aufgeteilt wird.
  • In einer Ausführungsform vergleicht das Verfahren die Kontrollsummenwerte mit gespeicherten Metadatenwerten, die vorhandenen Datendateien und Segmenten zugehörig sind. Durch den Vergleich werden Duplikate der aktuellen Stapel- oder Streaming-Datei/des aktuellen Segments erkannt. Das Verfahren vergleicht fortlaufend berechnete Kontrollsummen, wenn Dateien in den Datenspeicher gestreamt werden, um potenziell ähnliche oder identische Dateien zu erkennen. In dieser Ausführungsform verwendet das Verfahren die endgültige Kontrollsumme, um alle potenziell identischen Dateien als tatsächlich identisch zu bestätigen.
  • In einer Ausführungsform leitet das Verfahren als Reaktion auf ein Abgleichen einer Kontrollsumme in den Metadaten eine Bereinigungsroutine für die Datei oder das Dateisegment auf der Grundlage der CVE-Bewertung und Virendetails der abgeglichenen Datei/des abgeglichenen Segments ein. In dieser Ausführungsform sind die abgeglichenen Metadaten einer Datei mit bekannten Viren zugehörig. In dieser Ausführungsform bereinigt das Verfahren die Datei oder das Segment und aktualisiert die Metadaten, um anzuzeigen, dass die Bereinigung stattgefunden hat. Ein Bereinigen der Dateien kann ein Entfernen bekannter bösartiger Codeteile, die einem erkannten Virus zugehörig sind, aus der Datei oder ein Wiederherstellen der Datei unter Verwenden einer Sicherungskopie der Datei umfassen. Die bereinigte Datei wird einer Liste für eine Priorisierung hinzugefügt. In dieser Ausführungsform berechnet das Verfahren eine neue Kontrollsumme für die bereinigte Datei und fügt die neue Kontrollsumme den Metadaten hinzu.
  • In einer Ausführungsform überprüft das Verfahren die Metadatenspeichereinheit, um zu ermitteln, ob neue Datenspeicher-Stapeldateien geladen wurden, oder um zu ermitteln, ob neue Streaming-Datendateien geladen werden. In dieser Ausführungsform überprüft das Verfahren die allen neuen Dateien zugehörigen Metadaten. Das Verfahren überwacht dann kontinuierlich die Metadatenspeichereinheit auf Hinweise auf neue Datendateien. In einer Ausführungsform ruhen das Verfahren und die Systeme der Erfindung, wenn keine neuen Dateien oder Virusdefinitionen erkannt werden.
  • In einer Ausführungsform erhält das Verfahren die Metadaten für alle kürzlich geladenen oder aktuellen Streaming-Dateien. Das Verfahren erstellt eine priorisierte Liste neuer Datendateien unter Verwenden der Metadaten. Die Dateien werden im Hinblick auf Indikatoren für Viren oder auf die Wahrscheinlichkeit, dass eine Datei Malware enthält, priorisiert. Das Verfahren korreliert die Metadaten aller neuen Dateien, um die priorisierte Liste zu erstellen. Das Verfahren berücksichtigt Kontrollsummenwerte bezüglich zuvor geprüfter Dateien im Hinblick auf zuvor gefundene Viren. Das Verfahren berücksichtigt auch die Virusdefinition, die bei einer früheren Überprüfung einer Datei oder eines Duplikats verwendet wurde, und ob die Virusdefinition auf dem neuesten Stand ist. Überprüfungen, die mit einer veralteten Virusdefinition durchgeführt wurden, erhalten eine höhere Priorität für eine erneute Überprüfung. Datendateien, die ein nachgelagertes Verarbeiten benötigen, wird eine höhere Priorität zugeteilt als Dateien, die dies nicht benötigen. Dateien mit einer Kontrollsummenabweichung im Vergleich zu einer bereitgestellten Kontrollsumme oder einer Kontrollsumme aus einer früheren Überprüfung wird eine höhere Priorität für eine erneute Überprüfung zugeteilt. In dieser Ausführungsform berücksichtigt das Verfahren die Metadaten des Satzes neuer und vorhandener Dateien im Hinblick auf etwaige Änderungen an den Virusdefinitionen. Das Verfahren erstellt eine Rangfolge des Satzes von Datendateien und priorisiert die Dateien von der höchsten (am meisten eine Überprüfung benötigend) zur niedrigsten (am wenigsten eine Überprüfung benötigend). In dieser Ausführungsform überprüft das Verfahren neue, unverarbeitete Dateien - solche ohne übereinstimmende Dateikennung oder Dateikontrollsumme, stuft diese Dateien mit hoher Priorität ein und erstellt eine neue Metadatenliste in der Metadatenspeichereinheit für die Dateien. Das Verfahren blockiert außerdem einen Benutzerzugriff auf unverarbeitete Dateien zumindest so lange, bis eine Überprüfung der Dateien abgeschlossen ist. In dieser Ausführungsform betrachtet das Verfahren doppelte Dateien, die dieselbe Dateikennung und Dateikontrollsumme wie eine vorhandene Datei aufweisen, als niedrig priorisiert.
  • In einer Ausführungsform wählt das Verfahren eine Datei aus der erzeugten priorisierten Liste aus und überprüft die Datei auf Viren, Malware und andere datengebundene Probleme. In dieser Ausführungsform wählt das Verfahren die Datendatei entsprechend ihrer Priorität aus, beginnend mit der höchsten Priorität. Jede Datei der Liste wird der Reihe nach entsprechend einer absteigenden Priorität geprüft. In dieser Ausführungsform wählt das Verfahren die Datei mit der höchsten Priorität auf der Liste aus. Dateien werden zusammen mit ihrer Priorität der Liste hinzugefügt, so dass eine neue Datei mit hoher Priorität vor einer älteren Datei mit niedriger Priorität geprüft werden kann.
  • In einer Ausführungsform überprüft das Verfahren die Dateien auf Viren unter Verwenden der detaillierten aktuellen Virusdefinitionen. In dieser Ausführungsform ermittelt das Verfahren eine CVE-Bewertung für jede Datei sowie eine Liste gefundener Viren für jede Datei. Der Zeitpunkt der Überprüfung, die verwendete Virusdefinition, die gefundenen Viren, die Anzahl der gefundenen Viren, die Dateikontrollsumme, das Dateiformat und der Datei zugehörige nachgelagerte Verarbeitungsanforderungen werden alle als Metadaten für die Datei in der Metadatenspeichereinheit aktualisiert.
  • In einer Ausführungsform werden Dateien in Blöcke oder Segmente unterteilt, um ein schnelleres Überprüfen zu ermöglichen und eine Dateispeicherung zu optimieren. In dieser Ausführungsform ermittelt und speichert das Verfahren Metadaten für jedes Segment sowie für die gesamte Datei. In dieser Ausführungsform schließt das Verfahren zusammengehörige Segmentdaten als Teil der Metadaten ein. Ein Überprüfen eines Segments einer Gruppe zusammengehöriger Segmente löst ein Überprüfen der benachbarten zusammengehörigen Segmente aus. In dieser Ausführungsform überschneiden sich die Überprüfungen der zusammengehörigen Segmente, was die Wahrscheinlichkeit erhöht, Viren und Malware zu finden. In dieser Ausführungsform kann die Datei als eine Reihe von logisch zusammengehörigen Segmenten - Segment0, Segment1, Segment2 usw. - unterteilt, gespeichert und überprüft werden. In einer Ausführungsform überprüft das Verfahren binäre Versionen von Dateien. In dieser Ausführungsform behält das Verfahren die Dateien so lange als Binärdateien bei, bis die Überprüfung abgeschlossen ist und die Datei als Teil des verfügbaren Datenspeichers für ein nachgelagertes Verarbeiten und einen Benutzerzugriff geeignet ist. In dieser Ausführungsform verwendet das Verfahren Extrahieren-Transformieren-Laden oder einen anderen Vorgang eines Datenverarbeitungsmittels, um die Daten aus der Datei zum Verwenden als Teil des Datenspeichers abzurufen.
  • In einer Ausführungsform wertet das Verfahren nach Überprüfen einer Datei oder eines Dateisegments die Metadaten aus. Das Verfahren stellt die Datei sodann zum nachgelagerten Verarbeiten bereit, überträgt sie an eine Viren-/Malware-Bereinigungsroutine oder isoliert die Datei, wenn keine Bereinigungsroutinen verfügbar sind. In einer Ausführungsform ermöglicht das Verfahren Benutzern einen Zugriff auf die CVE-Bewertung jeder Datei. In dieser Ausführungsform bestimmt der Benutzer ein akzeptables Risikoniveau in Verbindung mit CVE-Bewertungen und legt einen Schwellenwert für CVE-Bewertungen fest. Dateien mit einer CVE-Bewertung unter dem Schwellenwert werden in das Datenverarbeitungssystem des Benutzers zum Verwenden durch Datenabnehmer aufgenommen. Dateien mit Bewertungen oberhalb des Schwellenwerts werden abgewiesen. In einer Ausführungsform lädt das Verfahren Dateien ohne gefundene Viren oder mit akzeptabel niedrigen CVE-Bewertungen zum nachgelagerten Verwenden hoch. Das Verfahren aktualisiert die Metadaten in der Metadatenspeichereinheit für alle geprüften Dateien.
  • Hier ein Beispiel:
    • Eine Client-Anwendung stellt eine Verbindung mit einer Verfahrensplattform unter Verwenden einer gegenseitigen Authentifizierung über Transport Layer Security (Transport Layer Security Mutual Authentication) her.
  • Die Client-Anwendung beginnt mit dem Hochladen von Gesundheitsdaten.
  • Der Client hat die Größe des Inhalts nicht angegeben, und die Plattform unterstützt maximal Dateien mit einer Größe von mehreren Terabyte.
  • Die Plattform streamt die Daten in den Datenspeicher und startet die Kontrollsumme unter Verwenden von SHA256.
  • Die Plattform hat die Daten noch nicht zum Herunterladen markiert, und die nachgeschalteten Abnehmer können die neuen Daten noch nicht nutzen.
  • Die Plattform beginnt mit dem Bilden einer Kontrollsumme für die Teile der Datei. {Teil1:0 bis 1M, Teil 2: 1 bis 2M, Teil 3: 2 bis 3M}.
  • Die Client-Anwendung beendet das Hochladen der Datei.
  • Die Plattform aktualisiert die Kontrollsumme - 01234567A in der Spalte für die Metadatenunterstützung zusammen mit den berechneten Kontrollsummen für Teile von Dateien.
  • Parallel dazu überprüft der Virenprüfdienst der Plattform die Metadatenspalte.
  • Die Metadaten enthalten die folgenden Informationen für die hochgeladene Datei:
    DATEIKENNUNG 1-2-1-1
    VERARBEITET N
    Kontrollsumme 01234567A
    VERARBEITUNGSZEIT NULL
    CVE-Bewertung NULL
    Virus und Virendetails NULL
    Zusammengehörige Segmente (vorherige/nächste) NULL
  • Eine Verfahrenskoordinationseinrichtung überprüft, ob die Kontrollsumme bereits vorhanden ist. Ist dies der Fall, priorisiert die Erfindung diejenigen, die keine relevanten oder ähnlichen Kontrollsummen haben.
  • Wenn die Koordinationseinrichtung keine relevanten Kontrollsummen findet, extrahiert sie die Datei auf der Grundlage der Zeit.
  • Die Koordinationseinrichtung überprüft die Datei und gibt die Ergebnisse zurück - gefundener Virus, Virus-Metadaten und markiert die Datei als verarbeitet, mit Virusinhalt und CVE-Bewertung.
    DATEIKENNUNG 1-2-1-1
    VERARBEITET N
    Kontrollsumme 01234567A
    VERARBEITUNGSZEIT 2019-02-01 07:56:00AM UTC
    CVE-Bewertung CVSS v2.0 Schweregrad und Maßzahlen: Basisbewertung: 5.0 MEDIUM
    Vektor: (AV:N/AC:L/Au:N/C:N/I:P/A:N) (V2 legend) Auswirkung Teilbewertung: 2.9 Verwertbarkeit Teilbewertung: 10.0
    Virusbewertung und -inhalt Eicar
    Zusammengehörige Segmente (vorherige/nächste) Keine
  • 1 stellt eine schematische Darstellung von beispielhaften Netzwerkressourcen bereit, die einem Ausführen der offenbarten Erfindungen zugehörig sind. Die Erfindungen können in den Prozessoren eines beliebigen der offenbarten Elemente ausgeführt werden, die einen Befehlsstrom verarbeiten. Wie in der Figur gezeigt wird, ist eine vernetzte Client-Einheit 110 drahtlos mit einem Server-Teilsystem 102 verbunden. Eine Client-Einheit 104 ist drahtlos über ein Netzwerk 114 mit dem Server-Teilsystem 102 verbunden. Die Client-Einheiten 104 und 110 weisen Clients für Virenprüfprogramme (nicht gezeigt) zusammen mit ausreichenden Datenverarbeitungsressourcen (Prozessor, Speicher, Netzwerkdatenübertragungs-Hardware) zum Ausführen des Programms auf. Wie in 1 gezeigt wird, weist das Server-Teilsystem 102 einen Server-Computer 150 auf. 1 zeigt ein Blockschaubild von Komponenten des Server-Computers 150 in einem vernetzten Computersystem 1000 gemäß einer Ausführungsform der vorliegenden Erfindung. Es sollte klar sein, dass 1 nur eine Veranschaulichung einer Implementierung darstellt und keine Einschränkungen in Bezug auf die Umgebungen andeutet, in denen verschiedene Ausführungsformen implementiert werden können. Es können viele Modifikationen an der dargestellten Umgebung vorgenommen werden.
  • Der Servercomputer 150 kann einen oder mehrere Prozessoren 154, einen Speicher 158, einen dauerhaften Speicher 170, eine Datenübertragungseinheit 152, eine oder mehrere Ein/Ausgabe- (E/A)-Schnittstellen 156 und eine Datenübertragungsstruktur 140 umfassen. Die Datenübertragungsstruktur 140 stellt Datenübertragungsvorgänge zwischen einem Cache 162, dem Speicher 158, dem dauerhaften Speicher 170, der Datenübertragungseinheit 152 und der/den Ein/Ausgabe- (E/A)-Schnittstelle(n) 156 bereit. Die Datenübertragungsstruktur 140 kann mit jeder Architektur implementiert werden, die für ein Weiterleiten von Daten und/oder Steuerinformationen zwischen Prozessoren (wie etwa Mikroprozessoren, Datenübertragungs- und Netzwerkprozessoren usw.), Systemspeicher, peripheren Einheiten und beliebigen anderen Hardware-Komponenten innerhalb eines Systems ausgelegt ist. Die Datenübertragungsstruktur 140 kann zum Beispiel mit einem oder mehreren Bussen implementiert werden.
  • Bei dem Speicher 158 und dem dauerhaften Speicher 170 handelt es sich um durch einen Computer lesbare Speichermedien. In dieser Ausführungsform umfasst der Speicher 158 einen Direktzugriffsspeicher (RAM) 160. Im Allgemeinen kann der Speicher 158 jedes geeignete flüchtige oder nichtflüchtige durch einen Computer lesbare Speichermedium umfassen. Der Cache 162 ist ein schneller Speicher, der die Leistung des Prozessors/der Prozessoren 154 verbessert, indem er Daten, auf die kürzlich zugegriffen wurde, und Daten in der Nähe von Daten, auf die kürzlich zugegriffen wurde, aus dem Speicher 158 zwischenspeichert.
  • Programmanweisungen und Daten, die zum Ausführen von Ausführungsformen der vorliegenden Erfindung verwendet werden, z.B. das Virenprüfprogramm 175, werden im dauerhaften Speicher 170 zur Ausführung und/oder zum Zugriff durch einen oder mehrere der jeweiligen Prozessoren 154 des Server-Computers 150 über den Cache 162 gespeichert. In dieser Ausführungsform umfasst der dauerhafte Speicher 170 ein magnetisches Festplattenlaufwerk. Alternativ oder zusätzlich zu einem magnetischen Festplattenlaufwerk kann der dauerhafte Speicher 170 einen Halbleiterdatenträger, eine Halbleiterspeichereinheit, einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM), einen Flash-Speicher oder jedes andere durch einen Computer lesbare Speichermedium umfassen, das in der Lage ist, Programmanweisungen oder digitale Informationen zu speichern.
  • Die vom dauerhaften Speicher 170 verwendeten Medien können auch austauschbar sein. Beispielsweise kann eine austauschbare Festplatte für den dauerhaften Speicher 170 verwendet werden. Zu anderen Beispielen gehören optische und magnetische Festplatten, Speichersticks und Chipkarten, die in eine Datenträger-Aufnahme eingelegt werden, um auf ein anderes durch einen Computer lesbares Speichermedium übertragen zu werden, das ebenfalls Teil des dauerhaften Speichers 170 ist.
  • Die Datenübertragungseinheit 152 schafft in diesen Beispielen die Voraussetzung für Datenaustauschvorgänge mit anderen Datenverarbeitungssystemen oder -einheiten, darunter Ressourcen der Client-Datenverarbeitungseinheiten 104 und 110. In diesen Beispielen umfasst die Datenübertragungseinheit 152 eine oder mehrere Netzwerkschnittstellenkarten. Die Datenübertragungseinheit 152 kann Datenaustauschvorgänge durch Verwenden von physischen oder drahtlosen Datenübertragungsverbindungen ermöglichen. Softwareverteilungsprogramme und andere Programme und Daten, die für eine Implementierung der vorliegenden Erfindung verwendet werden, können über die Datenübertragungseinheit 152 in den dauerhaften Speicher 170 des Server-Computers 150 heruntergeladen werden.
  • Die E/A-Schnittstellen 156 ermöglichen eine Eingabe und Ausgabe von Daten bei anderen Einheiten, die mit dem Server-Computer 150 verbunden werden können.
  • Beispielsweise können eine oder mehrere E/A-Schnittstellen 156 eine Verbindung zu einer oder mehreren externen Einheiten 190 wie etwa einer Tastatur, einem Tastenfeld, einem berührungsempfindlichen Bildschirm, einem Mikrofon, einer Digitalkamera und/oder einer anderen geeigneten Eingabeeinheit herstellen. Zu einer oder mehreren externen Einheiten 190 können auch tragbare durch einen Computer lesbare Speichermedien gehören, zum Beispiel Speichersticks, tragbare optische oder magnetische Festplatten und Speicherkarten. Software und Daten, die zum Ausführen von Ausführungsformen der vorliegenden Erfindung verwendet werden, z.B. das Virenprüfprogramm 175 auf dem Server-Computer 150, können auf solchen tragbaren durch einen Computer lesbaren Speichermedien gespeichert und über die E/A-Schnittstelle(n) 156 in den dauerhaften Speicher 170 geladen werden. Die E/A-Schnittstelle(n) ist/sind auch mit einer Anzeige 180 verbunden.
  • Die Anzeige 180 stellt einen Mechanismus zum Anzeigen von Daten für einen Benutzer bereit, und es kann sich dabei beispielsweise um einen Computermonitor handeln. Die Anzeige 180 kann auch als berührungsempfindlicher Bildschirm fungieren, beispielsweise als Anzeige eines Tablet-Computers.
  • 2 stellt einen Ablaufplan 200 bereit, der beispielhafte Vorgänge im Zusammenhang mit der Anwendung der Offenbarung veranschaulicht. Nach dem Programmstart überprüft das Verfahren des Programms 175 bei 210 auf neue Stapel- oder Streaming-Dateien und/oder neue Virusdefinitionen. Stapeldateien können bereits im Datenspeicher vorhanden sein und Streaming-Dateien können im Datenspeicher ankommen. Neue Virusdefinitionen können von der Netzwerkdatenübertragungseinheit 152 an ein System zur Abwehr von Eindringversuchen (Intrusion Prevention System) übermittelt werden. Bei 220 überprüft das Verfahren, ob neue Datei-Metadaten in einer Metadatenspeichereinheit des dauerhaften Speichers 170, in einem System-Speicherbereichsnetz oder einem anderen Systemspeicher vorhanden sind. Bei neuen Dateien ohne gespeicherte Metadaten erzeugt das Verfahren des Programms 175 einen neuen Metadatensatz und beginnt mit dem Erfassen von Datei-Metadaten. Die Metadaten werden sowohl aus der Datei selbst als auch aus den der Datei zugehörigen Verfahrensaktivitäten erfasst. Bei neuen Virusdefinitionen sucht das Verfahren nach Dateien, die noch nicht mit den neuen Virusdefinitionen geprüft wurden.
  • Bei 230 erzeugt das Verfahren des Programms 175 eine priorisierte Liste aller neuen Dateien entsprechend ihrem Bedarf an einer Virenprüfung. Das Verfahren bestimmt die Dateipriorität unter Verwenden von einem oder mehreren berechneten Dateikontrollsummenwerten und eines Korrelationsindikators für Viren aus den Metadaten der neuen Dateien. Höhere Prioritäten werden Dateien mit einer höheren Dringlichkeit für ein Überprüfen zugewiesen. (Dateien, auf die für eine nachgelagerte Verarbeitung zugegriffen werden muss, Dateien ohne historische Metadaten, Dateien mit Kontrollsummenproblemen usw.)
  • Bei 240 wählt das Verfahren des Programms 175 den Teil der Datendatei mit der höchsten Priorität aus der erzeugten Liste zum Überprüfen aus. Bei 250 überprüft das Verfahren die Datei unter Verwenden der aktuellen Virusdefinitionen. Bei 260 aktualisiert das Verfahren die Metadaten der Datei, darunter die Uhrzeit und das Datum der Überprüfung, die verwendeten Virusdefinitionen, die Anzahl und die Details von gefundenen Viren, die neue CVE-Bewertung für die Datei, alle zugehörigen Segmentinformationen usw. Bei 270 markiert das Verfahren die Datei als frei von bekannten Viren zum Prüfzeitpunkt. In dieser Ausführungsform stellt das Verfahren nachgeschalteten Datenabnehmern, Datennutzern und Administratoren die CVE-Bewertung zur Verfügung. Die Empfänger der CVE-Bewertung ermitteln, ob die Datei ausreichend sauber ist, um sie Abnehmern zur Verfügung zu stellen.
  • Das Verfahren leitet Dateien, die Viren enthalten, an Dateibereinigungsprozesse weiter. In Schritt 275 ermittelt das Verfahren, ob die Datei durch den Prozess bereinigt wurde. Nicht infizierte Dateien werden an Schritt 280 weitergeleitet. Viren enthaltende Dateien, die nicht bereinigt wurden, werden an Schritt 290 weitergeleitet und von einer Verwendung durch Datenabnehmer und vom Bereitstellen zum Zugriff durch Datenabnehmer ausgeschlossen.
  • Bei 280 werden nicht infizierte Dateien dem Datenspeicher hinzugefügt, so dass sie für Datenabnehmer nutzbar sind. Nach dem Schritt 280 kehrt das Verfahren zum Schritt 210 zurück, um nach neuen Dateien/Virusdefinitionen zu suchen. Wenn keine neuen Dateien oder Definitionen gefunden werden, geht das Verfahren weiter zum Schritt 215 und ermittelt, ob alle Dateien auf der erzeugten Prioritätsliste mit den aktuellen Virusdefinitionen überprüft wurden. Das Verfahren kehrt zum Schritt 240 zurück und wählt die nächste priorisierte Datei aus, wenn noch nicht alle Dateien überprüft wurden. Wenn alle Dateien überprüft wurden, kehrt das Verfahren zum Schritt 210 zurück und fährt mit dem Überprüfen auf neue Dateien und Virusdefinitionen fort.
  • Zwar umfasst diese Offenbarung eine ausführliche Beschreibung von Cloud-Computing, es sollte jedoch von vorherein klar sein, dass Implementierungen der hierin wiedergegebenen Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt sind. Vielmehr können Ausführungsformen der vorliegenden Erfindung in Verbindung mit einem beliebigen anderen Typ von gegenwärtig bekannter oder zu einem späteren Zeitpunkt entwickelter Datenverarbeitungsumgebung implementiert werden.
  • Cloud-Computing ist ein Dienstleistungsmodell, das einen komfortablen und bedarfsorientierten Netzwerkzugang zu einem gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungs-Ressourcen ermöglicht (z.B. Netzwerke, Netzwerk-Bandbreite, Server, Verarbeitung, Speicher, Speicherplatz, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Dienstes schnell zur Verfügung gestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Charakteristika, mindestens drei Dienstmodelle und mindestens vier Bereitstellungsmodelle umfassen.
  • Bei den Charakteristika handelt es sich um die folgenden:
    • Bedarfsorientierte Selbstbedienung (on-demand self-service): Ein Cloud-Kunde kann je nach Bedarf einseitig Datenverarbeitungs-Ressourcen wie Server-Zeit und Netzspeicher automatisch in Anspruch nehmen, ohne dass eine menschengeführte Interaktion mit dem Anbieter des Dienstes erforderlich ist.
  • Allgemeiner Netzzugriff (broad network access): Ressourcen sind über ein Netzwerk verfügbar und über Standardmechanismen zugänglich, die eine Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
  • Ressourcen-Bündelung (resource pooling): Die Datenverarbeitungs-Ressourcen des Anbieters werden gebündelt, um mehreren Kunden zu dienen, wobei ein Multi-Tenant-Modell verwendet wird, bei dem verschiedene physische und virtuelle Ressourcen entsprechend dem Bedarf dynamisch zugewiesen und erneut zugewiesen werden. Es besteht insofern eine gewisse Unabhängigkeit vom Standort, als der Kunde im Allgemeinen keine Kontrolle über den bzw. Kenntnis vom genauen Standort der bereitgestellten Ressourcen hat, den Standort jedoch auf einer höheren Abstraktionsebene (z.B. Region, Staat oder Datenzentrum) festlegen kann.
  • Schnelle Anpassungsfähigkeit (rapid elasticity): Ressourcen können rasch und anpassungsfähig, in einigen Fällen automatisch, bereitgestellt werden, um schnell eine Erweiterungsmöglichkeit (scale out) zu bieten, und rasch wieder freigegeben werden, wodurch eine schnelle Reduzierung (scale in) geboten wird. Aus Sicht des Kunden scheinen die zur Bereitstellung verfügbaren Ressourcen oftmals unbegrenzt zu sein und können in beliebiger Menge zu einem beliebigen Zeitpunkt erworben werden.
  • Dienst für nutzungsabhängige Abrechnung (measured service): Cloud-Systeme steuern und optimieren die Ressourcen-Nutzung automatisch durch Einsatz einer Messfunktion auf einer Abstraktionsebene, die für den Typ des Dienstes (z.B. Speicherplatz, Verarbeitung, Bandbreite sowie aktive Benutzerkonten) geeignet ist. Die Ressourcen-Nutzung kann überwacht, gesteuert und aufgezeichnet werden, wobei sowohl für den Anbieter als auch für den Abnehmer des verwendeten Dienstes Transparenz gegeben ist.
  • Bei den Dienstmodellen handelt es sich um die Folgenden:
    • Software als Dienstleistung (Software as a Service, SaaS): Die für den Kunden bereitgestellte Funktionalität besteht in der Nutzung der in einer Cloud-Infrastruktur ausgeführten Anwendungen des Anbieters. Auf die Anwendungen kann von verschiedenen Client-Einheiten durch eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende eMail) zugegriffen werden. Der Kunde verwaltet bzw. steuert nicht die zugrunde liegende Cloud-Infrastruktur, darunter Netzwerk, Server, Betriebssysteme, Speicherplatz oder sogar einzelne Anwendungsmöglichkeiten, mit der möglichen Ausnahme begrenzter benutzerspezifischer Anwendungskonfigurationseinstellungen.
  • Plattform als Dienstleistung (Platform as a Service, PaaS): Die für den Kunden bereitgestellte Funktionalität besteht in der Verwendung von vom Kunden erstellten oder angeforderten Anwendungen, die unter Verwenden von vom Anbieter unterstützten Programmiersprachen und Hilfsprogrammen erzeugt werden, in der Cloud-Infrastruktur. Der Kunde verwaltet oder steuert nicht die zugrundeliegende Cloud-Infrastruktur, darunter Netze, Server, Betriebssysteme oder Speicherplatz, hat jedoch die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen der Hosting-Umgebung der Anwendung.
  • Infrastruktur als Dienstleistung (Infrastructure as a Service, laaS): Die für den Kunden bereitgestellte Funktionalität besteht in der Bereitstellung von Datenverarbeitung, Speicherplatz, Netzwerken und anderen grundlegenden Datenverarbeitungs-Ressourcen, wobei der Kunde eine beliebige Software einsetzen und ausführen kann, die Betriebssysteme und Anwendungen umfassen kann. Der Kunde verwaltet oder steuert nicht die zugrunde liegende Cloud-Infrastruktur, hat jedoch die Kontrolle über Betriebssysteme, Speicherplatz, eingesetzte Anwendungen und möglicherweise eine begrenzte Kontrolle über die Auswahl von Netzwerkkomponenten (z.B. Host-Firewalls).
  • Bei den Einsatzmodellen handelt es sich um die Folgenden:
    • Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation selbst oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
  • Gemeinschaftliche Cloud (community cloud): Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft mit gemeinsamen Interessen (z.B. Zielsetzung, Sicherheitsanforderungen, Strategie- und Konformitätsüberlegungen). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder fremden Räumen befinden.
  • Öffentliche Cloud (public cloud): Die Cloud-Infrastruktur wird der Allgemeinheit oder einer großen Industriegruppe zur Verfügung gestellt und ist im Besitz einer Organisation, die Cloud-Dienste verkauft.
  • Kombinierte Cloud (hybrid cloud): Die Cloud-Infrastruktur setzt sich aus zwei oder mehreren Clouds (privat, gemeinschaftlich oder öffentlich) zusammen, die eigenständige Einheiten bleiben, jedoch durch eine standardisierte oder firmeneigene Technologie, die die Übertragbarkeit von Daten und Anwendungen ermöglicht, miteinander verbunden sind (z.B. Cloud-Zielgruppenverteilung für eine Auslastungsverteilung zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstleistungsorientiert mit Fokus auf Statusunabhängigkeit, loser Kopplung, Modularität und semantischer Interoperabilität. Den Kern des Cloud-Computing bildet eine Infrastruktur, die ein Netzwerk aus miteinander verbundenen Knoten aufweist.
  • Unter Bezugnahme auf 3 wird nun eine veranschaulichende Cloud-Computing-Umgebung 50 abgebildet. Wie gezeigt ist, weist die Cloud-Computing-Umgebung 50 einen oder mehrere Cloud-Computing-Knoten 10 auf, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie der elektronische Assistent (PDA, personal digital assistant) oder das Mobiltelefon 54A, der Desktop-Computer 54B, der Laptop-Computer 54C und/oder das Automobil-Computer-System 54N Daten austauschen können. Die Knoten 10 können miteinander Daten austauschen. Sie können physisch oder virtuell in ein oder mehrere Netzwerke wie private, gemeinschaftliche, öffentliche oder kombinierte Clouds gruppiert werden (nicht gezeigt), wie vorstehend beschrieben wurde, oder in eine Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 50, Infrastruktur, Plattformen und/oder Software als Dienstleistung anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sei darauf hingewiesen, dass die Arten von in 3 gezeigten Datenverarbeitungseinheiten 54A bis N lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 10 und die Cloud-Computing-Umgebung 50 über eine beliebige Art Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
  • Unter Bezugnahme auf 4 wird nun ein Satz von funktionalen Abstraktionsschichten gezeigt, die durch die Cloud-Computing-Umgebung 50 (3) bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 4 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie abgebildet ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Software-Schicht 60 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: Mainframe-Computer 61; auf der RISC- (Reduced Instruction Set Computer) Architektur beruhende Server 62; Server 63; Blade-Server 64; Speichereinheiten 65; und Netzwerke sowie Netzwerkkomponenten 66. In einigen Ausführungsformen umfassen Software-Komponenten eine Netzwerk-Anwendungsserver-Software 67 und eine Datenbank-Software 68.
  • Eine Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 71; virtueller Speicher 72; virtuelle Netzwerke 73, darunter virtuelle private Netzwerke; virtuelle Anwendungen und Betriebssysteme 74; und virtuelle Clients 75.
  • In einem Beispiel kann eine Verwaltungsschicht 80 die nachfolgend beschriebenen Funktionen bereitstellen. Die Ressourcen-Versorgung (resource provisioning) 81 stellt dynamisches Beschaffen von Datenverarbeitungs-Ressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung verwendet werden. Die Gebührenerfassung und Preisermittlung (metering and pricing) 82 stellt eine Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie eine Abrechnung oder Rechnungsstellung für die Inanspruchnahme dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Anwendungssoftware-Lizenzen aufweisen. Die Sicherheit (security) stellt eine Identitätsüberprüfung für Cloud-Kunden und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Das Benutzerportal 83 stellt den Zugang zu der Cloud-Computing-Umgebung für Nutzer und für Systemadministratoren bereit. Die Dienstgüteverwaltung (service level management) 84 stellt eine Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die Anforderungen an die Dienstgüte erfüllt werden. Die Planung und Erfüllung der Dienstgütevereinbarung (SLA, Service Level Agreement planning and fulfillment) 85 stellt die Vorbereitung für und die Beschaffung von Cloud-Computing-Ressourcen bereit, für die gemäß einer SLA ein künftiger Bedarf vorausgesehen wird.
  • Eine Arbeitslastenschicht (workloads layer) 90 stellt Beispiele einer Funktionalität bereit, für welche die Cloud-Computing-Umgebung verwendet werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, gehören: Abbildung und Navigation 91; Software-Entwicklung und Lebenszyklusverwaltung 92; virtuelles Klassenzimmer 93 als Bildungsangebot; Datenanalyseverarbeitung 94; Transaktionsverarbeitung 95; und ein Virenprüfprogramm 175.
  • Bei der vorliegenden Offenbarung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt mit jedem möglichen technischen Integrationsgrad handeln. Die Erfindung kann in jedem System, einzeln oder parallel, das einen Befehlsstrom verarbeitet, vorteilhaft angewandt werden. Das Computerprogrammprodukt kann (ein) durch einen Computer lesbare(s) Speichermedium (oder -medien) mit durch einen Computer lesbaren Programmanweisungen darauf umfassen, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Offenbarung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zum Verwenden durch eine Einheit zum Ausführen von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. ein Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zum Speichern in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Offenbarung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten, Konfigurationsdaten für einen integrierten Schaltkreis oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter eine objektorientierte Programmiersprache wie Smalltalk, C++ o.ä. sowie prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungseinheit bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zum Umsetzen der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungseinheit und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zum Ausführen der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Hinweise in der Beschreibung auf „eine Ausführungsform“, „eine beispielhafte Ausführungsform“ usw. zeigen an, dass die beschriebene Ausführungsform ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Eigenschaft umfassen kann, jedoch möglicherweise nicht jede Ausführungsform das bestimmte Merkmal, die bestimmte Struktur oder die bestimmte Eigenschaft unbedingt umfasst. Außerdem beziehen sich solche Ausdrücke nicht unbedingt auf dieselbe Ausführungsform. Wenn ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Eigenschaft in Verbindung mit einer Ausführungsform beschrieben wird, wird außerdem geltend gemacht, dass es Fachleuten bekannt ist, ein solches Merkmal, eine solche Struktur oder Eigenschaft in Verbindung mit anderen Ausführungsformen zu beeinflussen, unabhängig davon, ob sie ausdrücklich beschrieben sind.
  • Die hierin verwendete Terminologie dient lediglich zum Beschreiben bestimmter Ausführungsformen und soll die Erfindung nicht einschränken. Wie hierin verwendet, sollen die Singularformen „ein(e)“ und „der/die/das“ auch die Pluralformen miteinschließen, sofern aus dem Kontext nicht eindeutig etwas anderes hervorgeht. Außerdem versteht es sich von selbst, dass die Begriffe „aufweist“ und/oder „aufweisen“ bei Verwenden in dieser Beschreibung das Vorhandensein von dargelegten Merkmalen, ganzen Zahlen, Schritten, Arbeitsgängen, Elementen und/oder Komponenten angeben, jedoch das Vorhandensein oder Hinzufügen von einem oder mehreren anderen Merkmalen, ganzen Zahlen, Schritten, Arbeitsgängen, Elementen, Komponenten und/oder Gruppen aus diesen nicht ausschließen.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung dienen der Veranschaulichung, sollen jedoch nicht erschöpfend oder auf die offenbarten Ausführungsformen beschränkt sein. Viele Modifikationen und Änderungen werden für Fachleute offensichtlich sein, ohne vom Schutzumfang der Erfindung abzuweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsform, die praktische Anwendung oder die technische Verbesserung gegenüber auf dem Markt befindlichen Technologien bestmöglich zu erläutern oder um es anderen Fachleuten zu ermöglichen, die hierin offenbarten Ausführungsformen zu verstehen.

Claims (20)

  1. Durch einen Computer implementiertes Verfahren zum Aufrechterhalten der Sicherheit eines Datenverarbeitungssystems, wobei das Verfahren aufweist: Empfangen von Metadaten aus einer Metadatenspeichereinheit durch einen oder mehrere Computerprozessoren, wobei die Metadaten mindestens einem Teil einer Dateidatei zugehörig sind; Erzeugen einer Priorität durch den einen oder mehrere Computerprozessoren für den mindestens einen Teil der Datendatei entsprechend den Metadaten; und Durchführen einer Überprüfung der Datendatei durch den einen oder mehrere Computerprozessoren entsprechend der Priorität; wobei die Metadaten einen oder mehrere Indikatoren für Viren aufweisen.
  2. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei den Metadaten eine Kontrollsumme zugehörig ist, die parallel zum Strömen der Datendatei in einen Datenspeicher berechnet wird.
  3. Durch einen Computer implementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei das Verfahren außerdem aufweist: Aktualisieren der Metadaten der Datendatei durch den einen oder mehrere Computerprozessoren entsprechen der Überprüfung; und Bereitstellen der Datendatei durch den einen oder mehrere Computerprozessoren zum weiteren Verarbeiten.
  4. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei die Priorität entsprechend einer Korrelation der Metadaten der Datendatei erzeugt wird.
  5. Durch einen Computer implementiertes Verfahren nach Anspruch 1, das außerdem ein Übergeben der Datendatei durch den einen oder mehrere Computerprozessoren an eine Bereinigungsroutine aufweist.
  6. Durch einen Computer implementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei das Verfahren außerdem aufweist: Abgleichen einer Kontrollsumme für einen Teil der Datendatei mit einer Kontrollsumme in der Metadatenspeichereinheit durch den einen oder mehrere Computerprozessoren; und Einleiten einer Datenbereinigungsroutine durch den einen oder mehrere Computerprozessoren als Reaktion auf das Abgleichen.
  7. Durch einen Computer implementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei das Verfahren außerdem ein Aktualisieren von einem Teil der Datendatei zugehörigen Kontrollsummen-Metadaten durch den einen oder mehrere Computerprozessoren aufweist.
  8. Durch einen Computer implementiertes Verfahren zum Aufrechterhalten der Sicherheit eines Systems, wobei das Verfahren aufweist: Empfangen einer aktualisierten Virusdefinition durch einen oder mehrere Computerprozessoren; Erhalten von Metadaten, die mindestens einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit durch den einen oder mehrere Computerprozessoren; Erzeugen einer Priorität für die mindestens eine Datendatei durch den einen oder mehrere Computerprozessoren entsprechend den Metadaten und einer aktualisierten Virusdefinition; Auswählen einer Datendatei durch den einen oder mehrere Computerprozessoren entsprechend der Priorität; Durchführen einer Überprüfung der Datendatei durch den einen oder mehrere Computerprozessoren; Aktualisieren der Metadaten der Datendatei durch den einen oder mehrere Computerprozessoren entsprechend der Überprüfung; und Bereitstellen der Datendatei durch den einen oder mehrere Computerprozessoren zum weiteren Verarbeiten.
  9. Durch einen Computer implementiertes Verfahren nach Anspruch 8, wobei den Metadaten eine Kontrollsumme zugehörig ist, die kontinuierlich parallel zum Strömen der Datendatei in einen Datenspeicher berechnet wird.
  10. Durch einen Computer implementiertes Verfahren zum Aufrechterhalten der Sicherheit eines Systems, wobei das Verfahren aufweist: Erhalten von Metadaten, die mindestens einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit durch den einen oder mehrere Computerprozessoren; Erzeugen einer Priorität für die mindestens eine Datendatei durch den einen oder mehrere Computerprozessoren entsprechend den Metadaten; Auswählen einer Datendatei durch den einen oder mehrere Computerprozessoren entsprechend der Priorität; Durchführen einer Überprüfung der Datendatei durch den einen oder mehrere Computerprozessoren; Ermitteln einer Bewertung allgemeiner Schwachstellen und Gefährdungen für die Datendatei durch den einen oder mehrere Computerprozessoren; Aktualisieren der Metadaten der Datendatei durch den einen oder mehrere Computerprozessoren entsprechend der Überprüfung; und Übermitteln der Bewertung durch den einen oder mehrere Computerprozessoren an einen Systembenutzer zur Auswertung.
  11. Durch einen Computer implementiertes Verfahren nach Anspruch 10, wobei den Metadaten eine Kontrollsumme zugehörig ist, die kontinuierlich parallel zum Strömen der Datendatei in einen Datenspeicher berechnet wird.
  12. Computersystem zum Aufrechterhalten der Sicherheit eines Systems, wobei das Computersystem aufweist: einen oder mehrere Computerprozessoren; eine oder mehrere durch einen Computer lesbare Speichereinheiten; und gespeicherte Programmanweisungen auf der einen oder mehreren durch einen Computer lesbaren Speichereinheiten zum Ausführen durch den einen oder mehrere Computerprozessoren, wobei die gespeicherten Programmanweisungen aufweisen: Programmanweisungen zum Empfangen von Metadaten, die mindestens einer Datendatei zugehörig sind, aus einer Metadatenspeichereinheit; Programmanweisungen zum Erzeugen einer Priorität für die mindestens eine Datendatei entsprechend den Metadaten; und Programmanweisungen zum Durchführen einer Überprüfung der Datendatei entsprechend der Priorität; wobei die Metadaten einen oder mehrere Indikatoren für Viren aufweisen.
  13. Computersystem nach Anspruch 12, wobei den Metadaten eine Kontrollsumme zugehörig ist, die kontinuierlich parallel zum Strömen der Datendatei in einen Datenspeicher berechnet wird.
  14. Computersystem nach einem der Ansprüche 12 oder 13, das außerdem aufweist: Programmanweisungen zum Aktualisieren der Metadaten der Datendatei entsprechend der Überprüfung; und Programmanweisungen zum Bereitstellen der Datendatei zum weiteren Verarbeiten.
  15. Computersystem nach einem der Ansprüche 12 bis 14, wobei die Priorität entsprechend einer Korrelation von Metadaten der Datendatei erzeugt wird.
  16. Computersystem nach einem der Ansprüche 12 bis 15, das außerdem Programmanweisungen aufweist, um die Datendatei an eine Bereinigungsroutine zu übergeben.
  17. Computersystem nach einem der Ansprüche 12 bis 16, das außerdem aufweist: Programmanweisungen zum Abgleichen einer Kontrollsumme für einen Teil der Datendatei mit einer Kontrollsumme in der Metadatenspeichereinheit durch den einen oder mehrere Computerprozessoren; und Programmanweisungen zum Einleiten einer Datenbereinigungsroutine als Reaktion auf das Abgleichen der Kontrollsumme.
  18. Computersystem nach einem der Ansprüche 12 bis 17, das außerdem Programmanweisungen aufweist, um Kontrollsummen-Metadaten, die einem Teil der Datendatei zugehörig sind, zu aktualisieren.
  19. Computerprogrammprodukt zum Aufrechterhalten der Sicherheit eines Systems, wobei das Computerprogrammprodukt aufweist: ein durch einen Computer lesbares Speichermedium, das durch eine Verarbeitungsschaltung lesbar ist und Anweisungen zum Ausführen durch die Verarbeitungsschaltung speichert, um ein Verfahren nach einem der Ansprüche 1 bis 11 auszuführen.
  20. Computerprogramm, das auf einem durch einen Computer lesbaren Speichermedium gespeichert und in den internen Speicher eines digitalen Computers ladbar ist, wobei das Computerprogramm Software-Codeteile aufweist, um bei Ausführen des Programms in einem Computer das Verfahren nach einem der Ansprüche 1 bis 11 auszuführen.
DE112020004992.2T 2019-10-17 2020-10-14 Aufrechterhalten der sicherheit eines systems Pending DE112020004992T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/655,372 US11093612B2 (en) 2019-10-17 2019-10-17 Maintaining system security
US16/655,372 2019-10-17
PCT/IB2020/059628 WO2021074802A1 (en) 2019-10-17 2020-10-14 Maintaining system security

Publications (1)

Publication Number Publication Date
DE112020004992T5 true DE112020004992T5 (de) 2022-06-30

Family

ID=75492014

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020004992.2T Pending DE112020004992T5 (de) 2019-10-17 2020-10-14 Aufrechterhalten der sicherheit eines systems

Country Status (8)

Country Link
US (1) US11093612B2 (de)
JP (1) JP2022552368A (de)
KR (1) KR20220054814A (de)
CN (1) CN114503109B (de)
AU (1) AU2020366615B2 (de)
DE (1) DE112020004992T5 (de)
GB (1) GB2603685B (de)
WO (1) WO2021074802A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113608689B (zh) * 2021-07-16 2024-04-02 上海德衡数据科技有限公司 基于边缘计算的数据缓存方法及系统
CN116737854B (zh) * 2023-05-26 2024-04-30 上海优异达机电有限公司 基于多源遥感数据的时空数据湖管理系统及其安全防护方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7340774B2 (en) * 2001-10-15 2008-03-04 Mcafee, Inc. Malware scanning as a low priority task
US20070276823A1 (en) 2003-05-22 2007-11-29 Bruce Borden Data management systems and methods for distributed data storage and management using content signatures
US7475427B2 (en) * 2003-12-12 2009-01-06 International Business Machines Corporation Apparatus, methods and computer programs for identifying or managing vulnerabilities within a data processing network
US7519726B2 (en) * 2003-12-12 2009-04-14 International Business Machines Corporation Methods, apparatus and computer programs for enhanced access to resources within a network
US7698369B2 (en) * 2004-05-27 2010-04-13 Strongmail Systems, Inc. Email delivery system using metadata on emails to manage virtual storage
GB0418066D0 (en) * 2004-08-13 2004-09-15 Ibm A prioritization system
US20070043857A1 (en) * 2005-08-16 2007-02-22 Anchiva Systems, Inc. Method and System to Accelerate Data Processing for Mal-ware Detection and Elimination In a Data Network
US9235703B2 (en) * 2005-09-30 2016-01-12 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Virus scanning in a computer system
US10191976B2 (en) 2005-10-26 2019-01-29 Cortica, Ltd. System and method of detecting common patterns within unstructured data elements retrieved from big data sources
MX2008012891A (es) * 2006-04-06 2009-07-22 Smobile Systems Inc Sistema y metodo de deteccion de software dañino para plataformas moviles de acceso limitado.
US8799903B1 (en) * 2007-07-31 2014-08-05 Hewlett-Packard Development Company, L.P. Systems and methods for exchanging runtime functionalities between software stacks
CN101119373B (zh) 2007-09-04 2010-09-08 北京大学 一种网关级流式病毒扫描方法及其系统
US8302193B1 (en) * 2008-05-30 2012-10-30 Symantec Corporation Methods and systems for scanning files for malware
US8640241B2 (en) * 2009-11-16 2014-01-28 Quatum Corporation Data identification system
US8667592B2 (en) 2011-03-15 2014-03-04 Symantec Corporation Systems and methods for looking up anti-malware metadata
US9686293B2 (en) 2011-11-03 2017-06-20 Cyphort Inc. Systems and methods for malware detection and mitigation
US9049235B2 (en) 2012-07-16 2015-06-02 Mcafee, Inc. Cloud email message scanning with local policy application in a network environment
US9607004B2 (en) * 2014-06-18 2017-03-28 International Business Machines Corporation Storage device data migration
KR101587161B1 (ko) * 2014-09-03 2016-01-20 한국전자통신연구원 실시간 네트워크 안티바이러스 수행 장치 및 방법
US10587671B2 (en) 2015-07-09 2020-03-10 Zscaler, Inc. Systems and methods for tracking and auditing changes in a multi-tenant cloud system
US10205735B2 (en) 2017-01-30 2019-02-12 Splunk Inc. Graph-based network security threat detection across time and entities

Also Published As

Publication number Publication date
JP2022552368A (ja) 2022-12-15
CN114503109A (zh) 2022-05-13
US20210117542A1 (en) 2021-04-22
US11093612B2 (en) 2021-08-17
GB2603685A (en) 2022-08-10
GB202204979D0 (en) 2022-05-18
KR20220054814A (ko) 2022-05-03
AU2020366615B2 (en) 2023-11-23
CN114503109B (zh) 2022-09-23
GB2603685B (en) 2023-04-19
WO2021074802A1 (en) 2021-04-22
AU2020366615A1 (en) 2022-03-31

Similar Documents

Publication Publication Date Title
DE112018004349T5 (de) Dynamische auswahl von bereitstellungskonfigurationen von softwareanwendungen
DE112012005037B4 (de) Verwalten von redundanten unveränderlichen Dateien unter Verwendung von Deduplizierungen in Speicher-Clouds
DE112011100808B4 (de) System und Verfahren zum Unterstützen der Instanziierung und Migration virtueller Maschinen
DE112019003042B4 (de) Erkennung von verdächtigen aktivitäten in computernetzwerken
DE102013204186B4 (de) Ermitteln von Prioritäten für zwischengespeicherte Objekte zum Ordnen des Übertragens von Änderungen an zwischengespeicherten Objekten beruhend auf gemessener Netzwerkbandbreite
DE112018000193T5 (de) Daten sequenziell in Zonen in einem verstreuten Speichernetzwerk speichern
DE112017005040T5 (de) Betriebssystem und Verfahren auf Container-Grundlage
DE112018003006T5 (de) Erkennung und entschärfung von angriffen von aussen bei der datenverarbeitung
DE112019000421B4 (de) Arbeitslastverwaltung mit datenzugriffserkennung in einem datenverarbeitungscluster
DE112019001433T5 (de) Datenanonymisierung
DE102021127254A1 (de) Inhaltssensitives Auswählen von Knoten zum Erstellen von Containern
DE102016105062A1 (de) Nähengestützte Berechtigungsprüfung für einheitenübergreifend verteilte Daten
DE112018004008T5 (de) Auf dateisysteminhalten beruhende sicherheit
DE112020002552T5 (de) System und verfahren für eine siem-regel-sortierung und bedingte ausführung
DE112021003401T5 (de) Schattenexperimente für serverlose multi-tenant-cloud-dienste
DE112020005306T5 (de) Implementierung von arbeitslasten in einer multi-cloud-umgebung
DE112020004992T5 (de) Aufrechterhalten der sicherheit eines systems
DE112017005772T5 (de) Zeitpunktgesteuerte sicherungen über einen speicher-controller in eine objektspeicher-cloud
DE102016100773A1 (de) Erfassen von Komprimierungsleistungsmesswerten für die Verarbeitung von Daten
DE112021005636T5 (de) Migrieren von komplexen legacy-anwendungen
DE112018004415B4 (de) Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage
DE112017002144T5 (de) Manipulieren eines verteilten Vereinbarungsprotokolls zum Identifizieren einer gewünschten Gruppe von Speichereinheiten
DE112019002052T5 (de) Datenschutzsensibilisierung bei der bereitstellung von arbeitslasten
DE112021000408T5 (de) Prädiktives bereitstellen von fern gespeicherten dateien
DE112021005862T5 (de) Selbstprüfende blockchain

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence