DE60303753T2 - Selektives Erkennen von böswilligem Rechnercode - Google Patents

Selektives Erkennen von böswilligem Rechnercode Download PDF

Info

Publication number
DE60303753T2
DE60303753T2 DE60303753T DE60303753T DE60303753T2 DE 60303753 T2 DE60303753 T2 DE 60303753T2 DE 60303753 T DE60303753 T DE 60303753T DE 60303753 T DE60303753 T DE 60303753T DE 60303753 T2 DE60303753 T2 DE 60303753T2
Authority
DE
Germany
Prior art keywords
file
hash value
scan
version
latest version
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.)
Expired - Lifetime
Application number
DE60303753T
Other languages
English (en)
Other versions
DE60303753D1 (de
Inventor
Carey Northridge Nachenberg
Peter Szor
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.)
Gen Digital Inc
Original Assignee
Symantec 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 Symantec Corp filed Critical Symantec Corp
Application granted granted Critical
Publication of DE60303753D1 publication Critical patent/DE60303753D1/de
Publication of DE60303753T2 publication Critical patent/DE60303753T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/562Static detection
    • G06F21/564Static detection by virus signature recognition

Description

  • Die vorliegende Erfindung bezieht sich allgemein auf das Erkennen der Anwesenheit von böswilligem Code (Schadenscode) in Computerdateien, und insbesondere auf die Verbesserung der Leistungsfähigkeit von Schadenscode-Erkennungsverfahren.
  • Im Verlaufe der kurzen Geschichte des Computers wurden und werden Systemadministratoren und Anwender von Mitteln zum Angriff auf die Datensicherheit (Angriffsmitteln) geplagt, zum Beispiel von Viren, Würmern und Trojanischen Pferden, die unter Umständen entwickelt wurden, um Hostcomputersysteme lahm zulegen und sich selbst auf verbundene Systeme auszubreiten.
  • In den letzten Jahren haben zwei Entwicklungsrichtungen die Bedrohung durch diese Angriffsmittel erhöht. Erstens hat die erhöhte Abhängigkeit von Computern für die Durchführung auftragsentscheidender Unternehmensaufgaben die wirtschaftlichen Kosten erhöht, die mit einer Ausfallzeit des Systems verbunden sind. Zweitens hat es die stärkere Vernetzung zwischen den Computern den Angriffsmitteln ermöglicht, sich innerhalb von Stunden auf eine große Anzahl von Systemen auszubreiten.
  • Angriffsmittel können ein System infizieren, indem sie den ausführbaren Code austauschen, der in vorhandenen Dateien gespeichert ist. Wenn das System versucht, den in diesen Dateien gespeicherten Code auszuführen, führt es statt dessen den vom Angriffsmittel eingefügten Schadenscode aus, wodurch es dem Angriffsmittel ermöglicht wird, die Kontrolle über das System zu erlangen. Virenscannerprogramme, zum Beispiel Norton Antivirus, hergestellt von Symantec Corporation in Cupertino, Kalifornien, erlauben es einem Anwender, festzustellen, ob eine Datei, die ausführbaren Code enthält, mit Schadenscode infiziert wurde.
  • Diese Dienstprogramme waren schon immer in der Lage, Viren zu erkennen, indem sie nach verdächtigen Codeabschnitten an bestimmten Stellen oder nach anderen, leicht erkennbaren Merkmalen suchen. Diese Verfahren können schnell abgearbeitet werden, ohne die Systemressourcen stark zu belasten.
  • Weil die Angriffsmittel jedoch immer ausgefeilter wurden, mussten die Virenscannerprogramme sogar noch kompliziertere Prüfungen durchführen, um die Anwesenheit von Schadenscode zu erkennen. So muss zum Beispiel ein Spezialcode große Teile einer Datei untersuchen oder komplizierte Emulationstechniken ausführen, um das Vorhandensein von Viren zu erkennen.
  • Diese Techniken müssen häufig fortlaufend ausgeführt werden und sind extrem zeit- und ressourcenintensiv. Die ausreichende Optimierung dieser Routinen – um zu verhindern, dass sie unerschwinglich zeitaufwendig werden, wenn sie auf eine große Anzahl von Dateien angewendet werden -wird extrem schwierig, da die Angriffsmittel immer zahlreicher und komplizierter werden. Erforderlich ist ein Verfahren zur Steigerung der Geschwindigkeit und zur Erhöhung der Zuverlässigkeit von Nachweismethoden.
  • WO 00/28420 beschreibt das Scannen einer Datei mit einem Antivirusmodul und das Abspeichern eines Hash-Wertes eines jeden gescannten Sektors in einer Datei mit kritischen Sektoren, des Datums einer neuesten Version eines Erkennungsmoduls und einer Versionsnummer des Moduls. Die Datei mit kritischen Sektoren wird zusammen mit der Datei auf einen Empfangscompu ter übertragen, wo der Hash-Wert erneut berechnet und mit dem gespeicherten Wert verglichen wird.
  • Ausführungsbeispiele der vorliegenden Erfindung sind in den angefügten Nebenansprüchen ausführlich dargelegt.
  • Ausführungsbeispiele der vorliegenden Erfindung umfassen Verfahren, Systeme und computerlesbare Medien zum Erkennen der Infizierung einer Computerdatei (340) mit einem Angriffsmittel. Eine Scan-Engine (205) erzeugt einen neuen Hash-Wert eines kritischen Virus-Zielbereichs der Datei (340) und vergleicht ihn mit einem gespeicherten Hash-Wert des kritischen Virus-Zielbereichs. Für jedes Angriffsmittel bestimmt die Scan-Engine (205), ob die Datei (340) mit einer neuesten Version eines, dem Angriffsmittel zugeordneten Erkennungsmoduls (425) gescannt wurde. Wenn die Hash-Werte identisch sind und die Datei (340) mit der neuesten Version des Erkennungsmoduls (425) gescannt wurde, stellt die Scan-Engine (205) fest, dass die Datei (340) nicht mit dem Angriffsmittel infiziert ist.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Diese und andere, mehr ins Detail gehende, spezielle Ziele und Merkmale der vorliegenden Erfindung werden in der folgenden Beschreibung anhand der Zeichnungen besser ersichtlich, auf denen folgendes dargestellt ist:
  • 1 ist ein Blockschaltbild auf höchster Ebene, das ein Computersystem 100 anschaulich darstellt, auf dem möglicherweise Schadenscode erkannt wurde.
  • 2 ist eine Blockschaltbild, das einen genaueren Blick auf den Arbeitsspeicher 106 und den Massenspeicher 108 des Computersystems 100 nach 1 zeigt.
  • 3 ist eine Blockschaltbild, das einen Eintrag 300 in eine Datenbank 215 zur Speicherung der Scan-Vorgeschichte darstellt.
  • 4 ist ein Blockschaltbild, das einen genaueren Blick auf eine Scan-Engine 205 darstellt.
  • 5 ist ein Flußdiagramm, das ein bevorzugtes Ausführungsbeispiel der vorliegenden Erfindung zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
  • Ein Ausführungsbeispiel dient dazu, zu bestimmen, ob eine Datei 390 Schadenscode enthält, indem ein Hash-Wert eines kritischen Virus-Zielbereichs (CVTR) überprüft wird.
  • Gemäß seiner Verwendung in diesem Dokument bezieht sich der Ausdruck CVTR auf einen Bereich einer Datei 340, der üblicherweise verändert wird, wenn die Datei 340 mit Schadenscode infiziert ist. Kritische Virus-Zielbereiche (CVTRs) können für eine Datei 340 spezifisch sein und können den Anfangskennsatz einer ausführbaren Datei, den Bereich um eine Haupteinsprungstelle des Programms, den Auslagerungsbereich der Datei 340 oder einen beliebigen Abschnitt der Datei 340 umfassen, der durch ein Angriffsmittel wahrscheinlich verändert wird. Eine Datei kann eine Vielzahl von CVTRs enthalten, von denen jeder mit bestimmten Angriffsmitteln assoziiert ist.
  • Gemäß seiner Verwendung in diesem Dokument bezieht sich der Ausdruck „böswilliger Code" (Schadenscode) auf ein beliebiges Programm, Modul oder Codefragment, das in einen Computer ohne Wissen eines autorisierten Nutzers und/oder gegen den Willen eines autorisierten Nutzers eindringt. Der Ausdruck „Angriffsmittel" schließt Trojanische Pferde, Würmer, Viren und andere heimtückische Software dieser Art ein, die Schadenscode in eine Datei 340 einfügt. Ein Angriffsmittel kann die Fähigkeit besitzen, sich selbst zu replizieren und andere Computersysteme zu gefährden. Gemäß ihrer Verwendung in diesem Dokument beziehen sich die Ausdrücke „infiziert" und „Infizierung" auf den Prozeß der Einfügung von Schadenscode in eine Datei.
  • Gemäß seiner Verwendung in diesem Dokument ist der Ausdruck „Hash-Wert" oder „Hash-Funktion" eine nicht umkehrbare Funktion (one-way-Funktion), von einer variablen Eingangsgröße hin zu einer festen Ausgangsgröße, wobei die Funktion im wesentlichen kollisionsfrei ist. Normalerweise ist die Ausgangsgröße kleiner als die Eingangsgröße. „One-way" heißt, dass es einfach ist, den Ausgangswert aus dem Eingangswert zu berechnen, aber rechnerisch undurchführbar, die Eingangsgröße aus der Ausgangsgröße zu berechnen. „Im wesentlichen kollisionsfrei" bedeutet, dass es sehr schwierig ist, zwei oder mehrere Eingangsgrößen zu finden, die nach Anwendung der Hash-Funktion die selbe Ausgangsgröße ergeben. Beispiele geeigneter Hash-Funktionen, die in diesem Ausführungsbeispiel eingesetzt werden können, sind die MDS-Funktion und die CRC-Funktion (zyklische Redundanzprüfung).
  • 1 ist ein Blockschaltbild auf höchster Ebene, das ein Computersystem 100 anschaulich darstellt, auf dem möglicherweise Schadenscode erkannt wurde. Dargestellt ist ein Prozessor 102, der an einen Bus 104 angeschlossen ist. Es können auch mehrere Prozessoren 102 vorhanden sein. Weiterhin sind an den Bus 104 ein Arbeitsspeicher 106, ein Massenspeicher 108, eine Tastatur 110, eine Graphikkarte 112, ein Zeigegerät 114 und ein Netzwerkadapter 116 angeschlossen. Ein Monitor 118 ist an die Graphikkarte 112 angeschlossen.
  • Prozessor 102 kann ein beliebiger spezifischer oder ein allgemein verwendbarer Prozessor sein, zum Beispiel ein INTEL x86 oder eine POWERPC-kompatible zentrale Verarbeitungseinheit (CPU). Der Massenspeicher 108 kann eine beliebige Einrichtung sein, die in der Lage ist, große Datenmengen zu speichern, zum Beispiel eine Festplatte, eine nur lesbare Kompaktdisk (CD-ROM), DVD oder eine andere Art eines fest installierten oder eines Wechseldatenträgers.
  • Der Arbeitsspeicher 106 speichert Befehle und Daten, die vom Prozessor 102 verwendet werden. Das Zeigegerät 114 kann eine Maus, ein berührungsempfindlicher Bildschirm oder eine andere Art eines Zeigegerätes sein, und wird gemeinsam mit der Tastatur 110 benutzt, um Daten in das Computersystem 100 einzugeben. Die Arten der Hardware und der Software innerhalb des Computersystems 100 können variieren.
  • 2 ist ein Blockschaltbild, das einen genaueren Blick auf den Arbeitsspeicher 106 und den Massenspeicher 108 des Computersystems 100 gemäß 1 zeigt. Der Arbeitsspeicher 106 enthält eine Scan-Engine 205, welche die Anwesenheit von Schadenscode im Computersystem 100 aufspürt.
  • Die Scan-Engine 205 enthält eine Gruppe von Modulen, die im Massenspeicher 108 gespeichert sind und in den Arbeitsspeicher 106 geladen werden. Gemäß seiner Verwendung in diesem Dokument bezieht sich der Ausdruck „Modul" auf Computerprogrammlogik und/oder beliebige Hardware oder Schaltungen, die verwendet werden, um die dem Modul zugeordnete Funktionalität bereitzustellen. Ein Modul kann in Form von Hardware, Software, Firmware oder einer beliebigen Kombination daraus implementiert sein.
  • Die Scan-Engine 205 identifiziert Daten, die auf die Anwesenheit von Angriffsmitteln überprüft werden müssen, sucht nach den Angriffsmitteln, und reagiert, falls dies erforderlich ist, auf ein erkanntes Angriffsmittel. Die zu überprüfenden Daten befinden sich üblicherweise im Massenspeicher 108, im Arbeitsspeicher 106 oder in beiden. Die Scan-Engine 205 identifiziert deshalb spezielle Dateien 210 und/oder Speicherorte, die auf Angriffsmittel überprüft werden müssen. Andere Daten, die von der Scan-Engine 205 identifiziert werden, schließen vom Computersystem 100 empfangene oder gesendete E-Mail, Datenströme, die aus dem Internet empfangen wurden und so weiter, ein. Die Scan-Engine 205 enthält ein Versions-Identifizierungszeichen, das jedesmal aktualisiert wird, wenn eine neue Version der Scan-Engine 205 installiert wird.
  • Der Massenspeicher 108 enthält ausführbare Dateien 210 und eine CVTR-Datenbank 215. Die ausführbaren Dateien 210 sind Dateien, die ausführbaren Code enthalten, der vom Computersystem 100 ausgeführt wird, um zahlreiche rechnerische Aufgaben abzuarbeiten. Die CVTR-Datenbank 215 enthält Informationen zum Scanvorgang, die sich auf jede einzelne ausführbare Datei 210 beziehen. Die CVTR-Datenbank 215 speichert vorzugsweise einen CVTR-Bereich 310 jeder ausführbaren Datei 210, ein Datei-Identifizierungszeichen (ID) 305 und Identifizierungszeichen 320, welche die neueste Version der auf die Datei 340 angewendeten Scan-Engine 205 anzeigen.
  • 3 ist ein Blockschaltbild, das einen Eintrag 300 in eine CVTR-Datenbank 215 darstellt. Jeder Eintrag 300 spei chert Informationen über eine Datei 340, Der Eintrag 300 enthält ein Datei-Identifizierungszeichen 305, das einzig die Datei 340 für die Scan-Engine 205 identifiziert. Das Datei-Identifizierungszeichen 305 kann der Dateiname oder ein Hash-Wert eines spezifischen Teils der Datei 340 sein. Die Verwendung eines Hash-Wertes als Identifizierungszeichen erlaubt es der Scan-Engine 205, Dateien 210 zu identifizieren, selbst dann, wenn der Name der Datei 340 verändert wurde, böswillig oder auf andere Art und Weise.
  • Eintrag 300 enthält zusätzlich einen Abschnitt 310, der Hash-Werte eines oder mehrerer CVTR-Bereiche der Datei 340 speichert. Diese Hash-Werte werden erzeugt, wenn die Scan-Engine 205 einen komplexen Virensuchlauf (Scan) der Datei 340 durchführt. Der Abschnitt 310 kann einen Hash-Wert eines einzelnen CVTR enthalten, der beim Erkennen aller Angriffsmittel verwendet wird. Alternativ kann der Abschnitt 310 auch Hash-Werte einer Vielzahl von CVTR speichern, wobei jeder CVTR mit einem oder mehreren Angriffsmitteln assoziiert ist. Erkannte Veränderungen in einem CVTR, zum Beispiel die Zunahme eines Größenfeldes, sind Anzeichen einer möglichen Infizierung mit einem Angriffsmittel, sie sind unter Umständen jedoch nicht von Nutzen als Indikator eines spezifischen Angriffsmittels. Das Nichtvorhandensein einer Veränderung an sämtlichen CVTR ist jedoch ein zuverlässiger Indikator dafür, dass kein Angriffsmittel Schadenscode in die Datei 340 eingefügt hat.
  • Jeder Eintrag 300 enthält außerdem eine komplexe Version eines Abschnitts mit einem Virenerkennungsalgorithmus (CVDAV-Abschnitt 320). Jeder CVDAV-Abschnitt 320 speichert die Version der Scan-Engine 205, die zuletzt verwendet wurde, um die Datei 340 zu scannen. Wenn eine neuere Version der Scan-Engine 205 einen Scan der Datei 340 auf be liebige Angriffsmittel durchführt, wird der CVDAV-Abschnitt 320 aktualisiert.
  • 4 ist ein Blockschaltbild, das einen genaueren Blick auf eine Scan-Engine 205 darstellt. Die Scan-Engine 205 enthält ein Selektionsmodul 410. Das Selektionsmodul 410 legt fest, welche Prüfungen an den ausführbaren Dateien 210 vorgenommen werden sollen. Das Selektionsmodul 410 ist konfiguriert, um einen Datenbank- Eintrag 300 für die Datei 340 zu bewerten und um festzulegen, welche einfachen Erkennungsmodule 420 und welche komplexen Erkennungsmodule 425 auf die Datei 340 anzuwenden sind.
  • Ein Hash-Generator 430 ist so konfiguriert, dass er einen Hash-Wert eines CVTR-Bereiches einer Datei 340 erzeugt. Die erzeugten Hash-Werte werden mit den zuvor erzeugten Hash-Werten 310 verglichen, die in der CVTR-Datenbank 215 gespeichert sind, um zu bestimmen, ob die Datei 340 verändert wurde.
  • Die Scan-Engine 205 enthält eine Gruppe einfacher Erkennungsmodule 420. Diese Erkennungsmodule 420 prüfen typischerweise ausgewählte Bereiche einer Datei 340 auf verschiedenwillige Codesequenzen oder andere Signaturinformationen. Alternativ können die Module 420 die Datei 340 auf verschiedenwillige Merkmale, zum Beispiel auf eine bestimmte Größe überprüfen. Jedes der einfachen Erkennungsmodule 420 ist mit einem bestimmten Angriffsmittel assoziiert. Die Scan-Engine 205 wendet typischerweise eine Vielzahl von einfachen Erkennungsmodulen 420 parallel an.
  • Die Scan-Engine 205 umfaßt zusätzlich einen Satz komplexer Erkennungsmodule 425. Diese Erkennungsmodule 425 sind konfiguriert, um weiter fortgeschrittene Prüfungen an einer Datei 340 durchzuführen, um zu bestimmen, ob Schadenscode anwesend ist. So ist zum Beispiel ein komplexes Erkennungsmodul 425 hilfreich, um die Anwesenheit eines verschlüsselten polymorphen Virus zu erkennen. Ein verschlüsselter polymorpher Virus („polymorpher Virus") enthält eine Entschlüsselungsroutine und einen verschlüsselten Virenkern. Um Standard-Erkennungsverfahren zu umgehen, verwenden polymorphe Viren Entschlüsselungsroutinen, die von der Funktion her für jede infizierte Datei 340 identisch sind, die jedoch unterschiedliche Befehlssequenzen aufweisen. Somit kann die Scan-Engine 205 einen polymorphen Virus nicht erkennen, wenn sie eines der einfachen Erkennungsmodule 420 anwendet. Statt dessen wendet die Scan-Engine 205 ein komplexes Erkennungsmodul 425 an, das die ausführbare Datei 340 in einen softwarebasierten CPU-Emulator lädt, der als simulierter virtueller Computer agiert. Die Datei 340 darf innerhalb dieses virtuellen Computers ohne Einschränkung ausgeführt werden. Falls die ausführbare Datei 340 einen polymorphen Virus enthält, ist es der Entschlüsselungsroutine erlaubt, den Virenkern zu entschlüsseln. Das Erkennungsmodul 425 erkennt den Virus, indem es den virtuellen Speicher des virtuellen Computers nach einer Signatur des entschlüsselten Virenkerns absucht. Die komplexen Erkennungsmodule 425 können auch so konfiguriert sein, dass sie metamorphe Viren erkennen, die, obzwar sie nicht notwendigerweise verschlüsselt sind, ebenfalls die Befehle verändern, die im Virenkern oder einem beliebigen anderen Typ eines Angriffsmittels gespeichert sind, das mit Hilfe eines einfachen, signaturbasierten Erkennungsverfahrens nicht erkannt werden kann.
  • Typischerweise ist jedes komplexe Erkennungsmodul 425 mit einem bestimmten Angriffsmittel assoziiert und so ausgelegt, dass es dessen Anwesenheit erkennt, obwohl in alternativen Ausführungsbeispielen eine Vielzahl von Erkennungsmodulen 425 einem einzigen Angriffsmittel zugeordnet sein kann, oder ein einzelnes Erkennungsmodul 425 dafür ausgelegt sein kann, eine Vielzahl von Angriffsmitteln zu erkennen.
  • Jedes komplexe Erkennungsmodul 425 enthält eine Versionsnummer, welche die letzte Version der Scan-Engine 205 anzeigt, die eine aktualisierte Version des Erkennungsmoduls 425 enthält. Wenn eine neue Version der Scan-Engine 205 installiert ist, enthalten die neueren Versionen derjenigen Erkennungsmodule 425, die aktualisiert sind, das Versions-Identifizierungszeichen der neu installierten Version der Scan-Engine 205. Diese Informationen ermöglichen es der Scan-Engine 205, zu bestimmen, ob eine Datei 340 mit der neuesten Version eines Erkennungsmoduls 425 überprüft wurde. Die Scan-Engine 205 überprüft den CVDAV-Eintrag 320, welcher mit der Datei 340 assoziiert ist, um die letzte Version der auf die Datei 340 angewandten Scan-Engine 205 zu bestimmen.
  • 5 ist ein Flußdiagramm, das ein bevorzugtes Ausführungsbeispiel der vorliegenden Erfindung zeigt. Das Programm beginnt damit, dass die Scan-Engine 205 die einfachen Erkennungsmodule 420 auf die zu scannende Datei 340 anwendet 505. Typischerweise wird dieses Programm abgearbeitet, bis sämtliche einfachen Erkennungsmodule 420 auf die Datei 340 angewandt wurden. Anschließend liest der Hash-Generator 430 die Datei 340 und berechnet 510 einen Hash-Wert des kritischen Virus-Zielbereichs der Datei 340.
  • Das Erkennungsmodul 410 bestimmt 520 anschließend, ob die CVTR-Datenbank 215 einen Eintrag 300 für die aktuelle Datei 340 enthält. Wenn die Datei 340 nicht in der Datenbank 215 vorhanden ist, wird vom Selektionsmodul 410 ein komplexes Erkennungsmodul 425 auf die Datei 340 angewandt 525.
  • Falls die Datei 340 in der Datenbank 215 auftaucht, bestimmt 535 das Selektionsmodul 410, ob die Datei 340 mit der neusten Version des Erkennungsmoduls 425 gescannt wurde, durch überprüfen des CVDAV-Abschnitts 320 des Eintrags 300, der mit der Datei 340 in der CVTR-Datenbank 215 korrespondiert, um die Version der Scan-Engine 205 zu bestimmen, die zuletzt auf die Datei 340 angewandt wurde. Das Selektionsmodul 410 prüft anschließend die Versionsnummer des aktuellen komplexen Erkennungsmoduls 425, um die letzte Version der Scan-Engine 205 zu bestimmen, die eine aktualisierte Version des Erkennungsmoduls 425 enthält. Wenn die Versionsnummer der Scan-Engine 205, die zuletzt auf die Datei 340 angewandt wurde, gleich oder höher als die Versionsnummer der neusten Version der Scan-Engine 205 ist, die eine aktualisierte Version des Erkennungsmoduls 425 enthält, bestimmt die Scan-Engine 205, dass die Datei 340 mit der neusten Version des aktuellen Erkennungsmoduls 425 gescannt wurde.
  • Falls das Selektionsmodul 410 feststellt, dass die Datei 340 nicht mit der neusten Version des Erkennungsmoduls 425 gescannt wurde, wird von der Scan-Engine 205 das neuste komplexe Erkennungsmodul 425 auf die Datei 340 angewandt 525.
  • Falls der CVDAV-Bereich 320 anzeigt, dass die Datei 340 mit dem aktuellen Erkennungsmodul gescannt wurde, bestimmt 540 das Selektionsmodul 410, ob der CVTR sich verändert hat, indem es den neu generierten Hash-Wert des CVTR mit dem Hash-Wert 310 vergleicht, der in der CVTR-Datenbank 215 gespeichert ist. Wenn das Selektionsmodul 410 festlegt, dass der CVTR verändert wurde, wendet die Scan-Engine 205 das komplexe Erkennungsmodul 425 auf die Datei 340 an. Wenn das Selektionsmodul 410 festlegt, dass der CVTR nicht verändert wurde, bestätigt 592 das Selektionsmodul 410, dass die Datei nicht mit dem aktuellen Angriffsmittel infiziert ist. Das Verfahren wird für jedes komplexe Erkennungsmodul 425 wiederholt 545, bis die Datei 340 auf jedes Angriffsmittel hin überprüft wurde, das der Scan-Engine 205 bekannt ist.
  • Falls ein komplexer Virensuchlauf (Scan) an der Datei 340 auf etwaige Angriffsmittel ausgeführt 525 ist, aktualisiert 598 das Aktualisierungsmodul 415 die CVTR-Datenbank 215, um etwaige Veränderungen wiederzuspiegeln. Das Aktualisierungsmodul 415 speichert den zuletzt generierten Hash-Wert des CVTR im Hash-Feld 310 und speichert die aktuelle Versionsnummer der Scan-Engine 205 im CVDAV-Feld 320. Falls zuvor kein Eintrag für die Datei 340 existierte, erzeugt das Aktualisierungsmodul 415 einen neuen Eintrag 300, speichert den zuletzt erzeugten CVTR Hash-Wert im Hash-Feld 310 und speichert die Versionsnummer der aktuellen Scan-Engine 205 im CVDAV-Feld 320. Anschließend beendet 550 die Scan-Engine 205 das Scannen der Datei 340.
  • Die vorliegende Erfindung kann mit Hilfe eines Computerprogramms implementiert werden, das auf einem Standard-Tischcomputer läuft. Ein Ausführungsbeispiel der vorliegenden Erfindung stellt auf diese Art und Weise ein Speichermedium bereit, das prozessorimplementierbare Befehle für die Steuerung eines Prozessors speichert, um das oben beschriebene Verfahren durchzuführen.
  • Weiterhin kann das Computerprogramm in elektronischer Form bezogen werden, zum Beispiel durch Herunterladen des Codes über ein Netzwerk, zum Beispiel über das Internet. Auf diese Art und Weise wird in Übereinstimmung mit einem anderen Ausführungsbeispiel der vorliegenden Erfindung ein elektrisches Signal bereitgestellt, das prozessorimplementierbare Befehle zur Steuerung eines Prozessors trägt, damit dieser das oben beschriebene Verfahren ausführt.
  • Die obige Beschreibung wurde mit aufgenommen, um den Betrieb der bevorzugten Ausführungsbeispiele anschaulich darzustellen und stellt keinerlei Einschränkung des Schutzbereichs der Erfindung dar. Der Schutzbereich der Erfindung wird ausschließlich von den nachfolgenden Ansprüchen bestimmt. Zahlreiche Abänderungen der Erfindung, die immer noch in den Schutzbereich der Erfindung fallen, sind für den Fachmann in Lichte der vorgenannten Offenbarung sofort ersichtlich.

Claims (18)

  1. Verfahren zum Betreiben eines Systems (205, 215) zum Erkennen der Infizierung einer Computerdatei (340) mit einem beliebigen, aus einer Vielzahl von Mitteln zum Angriff auf die Datensicherheit (Angriffsmitteln), wobei das Verfahren folgende Schritte umfasst: erzeugen (510) eines neuen Hash-Wertes eines kritischen Virus-Zielbereichs der Datei; und für jedes Angriffsmittel durchführen folgender Schritte: vergleichen (540) des neuen Hash-Wertes des kritischen Virus-Zielbereichs mit einem zuvor erzeugten Hash-Wert des kritischen Virus-Zielbereichs; feststellen (535), ob die Datei auf Infizierung mit dem Angriffsmittel mit einer neuesten Version eines entsprechenden Erkennungsmoduls (425) gescannt wurde, und feststellen (542), dass die Datei nicht mit dem Angriffsmittel infiziert ist, wenn der neue Hash-Wert und der zuvor erzeugte Hash-Wert identisch sind und wenn festgestellt wird, dass die Datei mit der neuesten Version des Erkennungsmoduls gescannt wurde.
  2. Verfahren nach Anspruch 1, weiter umfassend den Schritt, dass für jedes Angriffsmittel das Erkennungsmodul auf die Datei angewandt wird, in Antwort auf eine Feststellung, dass die Datei nicht mit der neuesten Version des Erkennungsmoduls gescannt wurde.
  3. Verfahren nach Anspruch 2, weiter umfassend den Schritt, dass für jedes Angriffsmittel ein Indikator einer neuesten Version einer Scan-Engine aktualisiert wird, die auf die Datei angewandt wird, um eine aktuelle Version der Scan-Engine zu kennzeichnen.
  4. Verfahren nach Anspruch 1, wobei der Schritt des Feststellens, ob die Datei mit einer neuesten Version des Erkennungsmoduls auf Infizierung mit dem Angriffsmittel gescannt wurde, folgende Teilschritte umfasst: feststellen einer neuesten Version einer Scan-Engine, die auf die Datei angewandt wird; feststellen einer neusten Version der Scan-Engine, um eine aktualisierte Version des Erkennungsmoduls einzubeziehen; und feststellen, dass die Datei mit der neuesten Version des Erkennungsmoduls gescannt wurde, wenn die neueste Version der Scan-Engine, die auf die Datei angewandt wurde, nicht früher erzeugt wurde, als die neueste Version der Scan-Engine, um eine aktualisierte Version des Erkennungsmoduls einzubeziehen.
  5. Verfahren nach Anspruch 1, weiter umfassend den Schritt des Anwendens (525) des Erkennungsmoduls auf die Datei, in Antwort auf eine Feststellung, dass der neue Hash-Wert und der zuvor erzeugte Hash-Wert nicht identisch sind.
  6. Verfahren nach Anspruch 5, weiter umfassend den Schritt des Ersetzens (549) des zuvor erzeugten Hash-Wertes des kritischen Virus-Zielbereichs durch den neuen Hash-Wert des kritischen Virus-Zielbereichs.
  7. Verfahren nach Anspruch 1, wobei der kritische Virus-Zielbereich einen Anfangskennsatz einer ausführbaren Datei enthält.
  8. Verfahren nach Anspruch 1, wobei der kritische Virus-Zielbereich den Anfang eines Auslagerungsbereichs enthält.
  9. Verfahren nach Anspruch 1, wobei der kritische Virus-Zielbereich einen Bereich um einen Programmeintrittspunkt enthält.
  10. Verfahren nach Anspruch 1, wobei den besagten Schritten ein weiterer Schritt vorausgeht, in welchem ein Satz von Hochgeschwindigkeitsscans der Datei unter Verwendung eines korrespondierenden Satzes einfacher Erkennungsmodule (420) durchgeführt wird.
  11. System zum Erkennen der Infizierung einer Computerdatei (340) mit einem beliebigen, aus einer Vielzahl von Angriffsmitteln, wobei das System umfasst: eine Vielzahl von Erkennungsmodulen (425), von denen jedes so konfiguriert ist, dass es die Computerdatei auf Infizierung mit einem jeweiligen Angriffsmittel überprüft, wobei das Erkennungsmodul ein Identifizierungszeichen einer neuesten Version einer Scan-Engine (205) enthält, um eine Aktualisierung des Erkennungsmoduls einzubeziehen; eine Datenbank (215), die mit den Erkennungsmodulen kommuniziert und Einträge speichert, wobei jeder Eintrag einer Datei (340) zugeordnet ist und einen zuvor erzeugten Hash-Wert (310) eines kritischen Virus-Zielbereichs und ein Identifizierungszeichen (320) enthält, das eine neueste Version der Scan-Engine anzeigt, um die Datei auf die Anwesenheit von bösartigem Code zu scannen; einen Hash-Generator (430), der mit der Datenbank kommuniziert und der so ausgelegt ist, dass er einen neuen Hash-Wert des kritischen Virus-Zielbereichs erzeugt; ein Selektionsmodul (410), das mit der Datenbank und dem Hash-Generator kommuniziert, und so konfiguriert ist, dass es für jedes Angriffsmittel: den neuen Hash-Wert des kritischen Virus-Zielbereichs mit dem zuvor erzeugten Hash-Wert des kritischen Virus-Zielbereichs vergleicht; das Identifizierungszeichen der neuesten Version der Scan-Engine, mit der die Datei gescannt wird, mit dem Identifizierungszeichen der neuesten Version der Scan-Engine vergleicht, um eine Aktualisierung des Erkennungsmoduls einzubeziehen; und feststellen, dass die Datei nicht mit einem Angriffsmittel infiziert ist, wenn der neue Hash-Wert und der zuvor erzeugte Hash-Wert identisch sind und die neueste Version der zum Scannen der Datei verwendeten Scan-Engine keine ältere Version als die neueste Version der Scan-Engine ist, um eine Aktualisierung des Erkennungsmoduls einzubeziehen.
  12. System nach Anspruch 11, wobei das Selektionsmodul weiterhin so konfiguriert ist, dass es: das Erkennungsmodul auf die Datei anwendet, in Antwort auf eine Feststellung, dass die neueste Version der zum Scannen der Datei verwendeten Scan-Engine eine ältere Version als die neuste Version der Scan-Engine ist, um eine Aktualisierung des Erkennungsmoduls einzubeziehen.
  13. System nach Anspruch 12, weiter umfassend ein Aktualisierungsmodul (415), das mit der Datenbank und mit dem Selektionsmodul kommuniziert und das so konfiguriert ist, dass das Identifizierungszeichen der neuesten Version der zum Scannen der Datei verwendeten Scan-Engine aktualisiert wird, um anzuzeigen, dass die neueste Version der zum Scannen der Datei verwendeten Scan-Engine die aktuelle Version der Scan-Engine ist.
  14. System nach Anspruch 11, wobei das Selektionsmodul weiterhin so ausgelegt ist, dass es das Erkennungsmodul auf die Datei anwendet, in Antwort auf eine Feststellung, dass für das entsprechende Angriffsmittel der neue Hash-Wert und der zuvor erzeugte Hash-Wert nicht identisch sind.
  15. System nach Anspruch 14, wobei ein Aktualisierungsmodul (415) so konfiguriert ist, dass es die Datenbank aktualisiert, damit diese den neuen Hash-Wert des kritischen Virus-Zielbereichs speichert.
  16. System nach Anspruch 11, umfassend einen Satz einfacher Erkennungsmodule (420), deren Funktion darin besteht, Hochgeschwindigkeitsscans auf die Datei anzuwenden.
  17. Computerlesbares Medium, das Befehle in Maschinensprache enthält, um ein System so zu steuern, dass es sämtliche Schritte eines Verfahrens nach einem der Ansprüche 1 bis 10 ausführt.
  18. Elektrisches Signal, das prozessorimplementierbare Befehle trägt, um einen Prozessor zu steuern, damit dieser das Verfahren nach einem der Ansprüche 1 bis 10 ausführt.
DE60303753T 2002-10-07 2003-09-30 Selektives Erkennen von böswilligem Rechnercode Expired - Lifetime DE60303753T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/266,365 US7337471B2 (en) 2002-10-07 2002-10-07 Selective detection of malicious computer code
US266365 2002-10-07

Publications (2)

Publication Number Publication Date
DE60303753D1 DE60303753D1 (de) 2006-04-27
DE60303753T2 true DE60303753T2 (de) 2006-12-28

Family

ID=32030342

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60303753T Expired - Lifetime DE60303753T2 (de) 2002-10-07 2003-09-30 Selektives Erkennen von böswilligem Rechnercode

Country Status (5)

Country Link
US (2) US7337471B2 (de)
EP (1) EP1408393B1 (de)
AT (1) ATE319128T1 (de)
DE (1) DE60303753T2 (de)
ES (1) ES2257643T3 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008010790B4 (de) * 2008-02-22 2015-09-10 Fachhochschule Schmalkalden Verfahren zum Echtzeitvirenschutz unverschlüsselter und verschlüsselter Daten

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7783765B2 (en) 2001-12-12 2010-08-24 Hildebrand Hal S System and method for providing distributed access control to secured documents
US7930756B1 (en) 2001-12-12 2011-04-19 Crocker Steven Toye Multi-level cryptographic transformations for securing digital assets
US7478418B2 (en) * 2001-12-12 2009-01-13 Guardian Data Storage, Llc Guaranteed delivery of changes to security policies in a distributed system
US7565683B1 (en) 2001-12-12 2009-07-21 Weiqing Huang Method and system for implementing changes to security policies in a distributed security system
US7921284B1 (en) 2001-12-12 2011-04-05 Gary Mark Kinghorn Method and system for protecting electronic data in enterprise environment
US10033700B2 (en) 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
US7178033B1 (en) 2001-12-12 2007-02-13 Pss Systems, Inc. Method and apparatus for securing digital assets
US7260555B2 (en) 2001-12-12 2007-08-21 Guardian Data Storage, Llc Method and architecture for providing pervasive security to digital assets
US8065713B1 (en) 2001-12-12 2011-11-22 Klimenty Vainstein System and method for providing multi-location access management to secured items
US10360545B2 (en) 2001-12-12 2019-07-23 Guardian Data Storage, Llc Method and apparatus for accessing secured electronic data off-line
US7921450B1 (en) 2001-12-12 2011-04-05 Klimenty Vainstein Security system using indirect key generation from access rules and methods therefor
US7380120B1 (en) 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US7921288B1 (en) 2001-12-12 2011-04-05 Hildebrand Hal S System and method for providing different levels of key security for controlling access to secured items
USRE41546E1 (en) 2001-12-12 2010-08-17 Klimenty Vainstein Method and system for managing security tiers
US8006280B1 (en) 2001-12-12 2011-08-23 Hildebrand Hal S Security system for generating keys from access rules in a decentralized manner and methods therefor
US7681034B1 (en) 2001-12-12 2010-03-16 Chang-Ping Lee Method and apparatus for securing electronic data
US7631184B2 (en) * 2002-05-14 2009-12-08 Nicholas Ryan System and method for imposing security on copies of secured items
US7950066B1 (en) 2001-12-21 2011-05-24 Guardian Data Storage, Llc Method and system for restricting use of a clipboard application
US8176334B2 (en) 2002-09-30 2012-05-08 Guardian Data Storage, Llc Document security system that permits external users to gain access to secured files
US8613102B2 (en) 2004-03-30 2013-12-17 Intellectual Ventures I Llc Method and system for providing document retention using cryptography
US7512810B1 (en) 2002-09-11 2009-03-31 Guardian Data Storage Llc Method and system for protecting encrypted files transmitted over a network
US7337471B2 (en) 2002-10-07 2008-02-26 Symantec Corporation Selective detection of malicious computer code
US7260847B2 (en) 2002-10-24 2007-08-21 Symantec Corporation Antivirus scanning in a hard-linked environment
US7836310B1 (en) 2002-11-01 2010-11-16 Yevgeniy Gutnik Security system that uses indirect password-based encryption
US7890990B1 (en) 2002-12-20 2011-02-15 Klimenty Vainstein Security system with staging capabilities
US7293290B2 (en) 2003-02-06 2007-11-06 Symantec Corporation Dynamic detection of computer worms
US7246227B2 (en) 2003-02-10 2007-07-17 Symantec Corporation Efficient scanning of stream based data
US7546638B2 (en) 2003-03-18 2009-06-09 Symantec Corporation Automated identification and clean-up of malicious computer code
US8707034B1 (en) 2003-05-30 2014-04-22 Intellectual Ventures I Llc Method and system for using remote headers to secure electronic files
US7739278B1 (en) 2003-08-22 2010-06-15 Symantec Corporation Source independent file attribute tracking
US7703140B2 (en) 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US8127366B2 (en) 2003-09-30 2012-02-28 Guardian Data Storage, Llc Method and apparatus for transitioning between states of security policies used to secure electronic documents
US7130981B1 (en) 2004-04-06 2006-10-31 Symantec Corporation Signature driven cache extension for stream based scanning
US7861304B1 (en) 2004-05-07 2010-12-28 Symantec Corporation Pattern matching using embedded functions
US7707427B1 (en) 2004-07-19 2010-04-27 Michael Frederick Kenrich Multi-level file digests
US7580993B2 (en) * 2004-07-30 2009-08-25 Sap Ag Document broadcasting utilizing hashcodes
WO2006047163A2 (en) * 2004-10-26 2006-05-04 Priderock, L.L.C. System and method for identifying and removing malware on a computer system
US10043008B2 (en) 2004-10-29 2018-08-07 Microsoft Technology Licensing, Llc Efficient white listing of user-modifiable files
US20060095964A1 (en) * 2004-10-29 2006-05-04 Microsoft Corporation Document stamping antivirus manifest
US20060101277A1 (en) * 2004-11-10 2006-05-11 Meenan Patrick A Detecting and remedying unauthorized computer programs
US7904940B1 (en) * 2004-11-12 2011-03-08 Symantec Corporation Automated environmental policy awareness
US7349931B2 (en) 2005-04-14 2008-03-25 Webroot Software, Inc. System and method for scanning obfuscated files for pestware
US7591016B2 (en) * 2005-04-14 2009-09-15 Webroot Software, Inc. System and method for scanning memory for pestware offset signatures
US7571476B2 (en) * 2005-04-14 2009-08-04 Webroot Software, Inc. System and method for scanning memory for pestware
US7975303B1 (en) 2005-06-27 2011-07-05 Symantec Corporation Efficient file scanning using input-output hints
US7895654B1 (en) 2005-06-27 2011-02-22 Symantec Corporation Efficient file scanning using secure listing of file modification times
US8272058B2 (en) 2005-07-29 2012-09-18 Bit 9, Inc. Centralized timed analysis in a network security system
US8984636B2 (en) 2005-07-29 2015-03-17 Bit9, Inc. Content extractor and analysis system
US7895651B2 (en) 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US8060747B1 (en) 2005-09-12 2011-11-15 Microsoft Corporation Digital signatures for embedded code
US8255992B2 (en) * 2006-01-18 2012-08-28 Webroot Inc. Method and system for detecting dependent pestware objects on a computer
US8205087B2 (en) 2006-02-27 2012-06-19 Microsoft Corporation Tool for digitally signing multiple documents
US8190902B2 (en) 2006-02-27 2012-05-29 Microsoft Corporation Techniques for digital signature formation and verification
GB0605117D0 (en) * 2006-03-14 2006-04-26 Streamshield Networks Ltd A method and apparatus for providing network security
US8205261B1 (en) 2006-03-31 2012-06-19 Emc Corporation Incremental virus scan
US8443445B1 (en) 2006-03-31 2013-05-14 Emc Corporation Risk-aware scanning of objects
US7854006B1 (en) 2006-03-31 2010-12-14 Emc Corporation Differential virus scan
US20080022378A1 (en) * 2006-06-21 2008-01-24 Rolf Repasi Restricting malicious libraries
US8122507B1 (en) * 2006-06-28 2012-02-21 Emc Corporation Efficient scanning of objects
US8087084B1 (en) 2006-06-28 2011-12-27 Emc Corporation Security for scanning objects
US8151352B1 (en) * 2006-07-14 2012-04-03 Bitdefender IPR Managament Ltd. Anti-malware emulation systems and methods
US8190868B2 (en) 2006-08-07 2012-05-29 Webroot Inc. Malware management through kernel detection
JP4998019B2 (ja) * 2007-03-06 2012-08-15 富士通株式会社 状態表示制御装置
US8132258B1 (en) 2008-06-12 2012-03-06 Trend Micro Incorporated Remote security servers for protecting customer computers against computer security threats
US10262136B1 (en) * 2008-08-04 2019-04-16 Zscaler, Inc. Cloud-based malware detection
US8230510B1 (en) 2008-10-02 2012-07-24 Trend Micro Incorporated Scanning computer data for malicious codes using a remote server computer
US9292689B1 (en) 2008-10-14 2016-03-22 Trend Micro Incorporated Interactive malicious code detection over a computer network
TWI409665B (zh) * 2008-10-23 2013-09-21 Shrisinha Technology Corp Enter the information instantly against the protection method and its hardware
US8087081B1 (en) 2008-11-05 2011-12-27 Trend Micro Incorporated Selection of remotely located servers for computer security operations
US8813222B1 (en) 2009-01-21 2014-08-19 Bitdefender IPR Management Ltd. Collaborative malware scanning
US11489857B2 (en) 2009-04-21 2022-11-01 Webroot Inc. System and method for developing a risk profile for an internet resource
US8312548B1 (en) * 2009-04-24 2012-11-13 Network Appliance, Inc. Volume metadata update system for antivirus attributes
US9015840B2 (en) * 2009-06-08 2015-04-21 Clevx, Llc Portable media system with virus blocker and method of operation thereof
GB2471716A (en) * 2009-07-10 2011-01-12 F Secure Oyj Anti-virus scan management using intermediate results
US8863279B2 (en) 2010-03-08 2014-10-14 Raytheon Company System and method for malware detection
US8769373B2 (en) 2010-03-22 2014-07-01 Cleon L. Rogers, JR. Method of identifying and protecting the integrity of a set of source data
US8548961B2 (en) 2011-03-30 2013-10-01 Splunk Inc. System and method for fast file tracking and change monitoring
US8566336B2 (en) 2011-03-30 2013-10-22 Splunk Inc. File identification management and tracking
GB2506622A (en) * 2012-10-04 2014-04-09 Ibm Anti-virus data management
RU2523112C1 (ru) * 2012-12-25 2014-07-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ выбора оптимального типа антивирусной проверки при доступе к файлу
US9792436B1 (en) * 2013-04-29 2017-10-17 Symantec Corporation Techniques for remediating an infected file
US9117081B2 (en) 2013-12-20 2015-08-25 Bitdefender IPR Management Ltd. Strongly isolated malware scanning using secure virtual containers
CN103942491A (zh) * 2013-12-25 2014-07-23 国家计算机网络与信息安全管理中心 一种互联网恶意代码处置方法
RU2634175C2 (ru) * 2015-12-18 2017-10-24 Акционерное общество "Лаборатория Касперского" Способ выполнения антивирусных проверок
GB2561562A (en) * 2017-04-18 2018-10-24 F Secure Corp Method for detecting and preventing an attack
US10903988B1 (en) 2019-11-04 2021-01-26 International Business Machines Corporation Unique instruction identifier that identifies common instructions across different code releases

Family Cites Families (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5212765A (en) * 1990-08-03 1993-05-18 E. I. Du Pont De Nemours & Co., Inc. On-line training neural network system for process control
JP2501771B2 (ja) * 1993-01-19 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 不所望のソフトウェア・エンティティの複数の有効なシグネチャを得る方法及び装置
US5398196A (en) 1993-07-29 1995-03-14 Chambers; David A. Method and apparatus for detection of computer viruses
JPH0778098A (ja) * 1993-09-08 1995-03-20 Fujitsu Ltd ファイル管理システム
US5495607A (en) * 1993-11-15 1996-02-27 Conner Peripherals, Inc. Network management system having virtual catalog overview of files distributively stored across network domain
US5475826A (en) * 1993-11-19 1995-12-12 Fischer; Addison M. Method for protecting a volatile file using a single hash
US5572590A (en) * 1994-04-12 1996-11-05 International Business Machines Corporation Discrimination of malicious changes to digital information using multiple signatures
US5613002A (en) * 1994-11-21 1997-03-18 International Business Machines Corporation Generic disinfection of programs infected with a computer virus
US6944555B2 (en) * 1994-12-30 2005-09-13 Power Measurement Ltd. Communications architecture for intelligent electronic devices
US5675710A (en) * 1995-06-07 1997-10-07 Lucent Technologies, Inc. Method and apparatus for training a text classifier
US5854916A (en) * 1995-09-28 1998-12-29 Symantec Corporation State-based cache for antivirus software
US6006242A (en) * 1996-04-05 1999-12-21 Bankers Systems, Inc. Apparatus and method for dynamically creating a document
US5884033A (en) * 1996-05-15 1999-03-16 Spyglass, Inc. Internet filtering system for filtering data transferred over the internet utilizing immediate and deferred filtering actions
US5944821A (en) * 1996-07-11 1999-08-31 Compaq Computer Corporation Secure software registration and integrity assessment in a computer system
JPH1040197A (ja) * 1996-07-19 1998-02-13 Fujitsu Ltd 通信管理装置
US5832208A (en) * 1996-09-05 1998-11-03 Cheyenne Software International Sales Corp. Anti-virus agent for use with databases and mail servers
US6072942A (en) * 1996-09-18 2000-06-06 Secure Computing Corporation System and method of electronic mail filtering using interconnected nodes
US6167520A (en) * 1996-11-08 2000-12-26 Finjan Software, Inc. System and method for protecting a client during runtime from hostile downloadables
US5994821A (en) * 1996-11-29 1999-11-30 Matsushita Electric Industrial Co., Ltd. Displacement control actuator
US6125459A (en) 1997-01-24 2000-09-26 International Business Machines Company Information storing method, information storing unit, and disk drive
US6126459A (en) * 1997-03-24 2000-10-03 Ford Motor Company Substrate and electrical connector assembly
US5974549A (en) * 1997-03-27 1999-10-26 Soliton Ltd. Security monitor
US6298351B1 (en) * 1997-04-11 2001-10-02 International Business Machines Corporation Modifying an unreliable training set for supervised classification
US6357008B1 (en) 1997-09-23 2002-03-12 Symantec Corporation Dynamic heuristic method for detecting computer viruses using decryption exploration and evaluation phases
US6021510A (en) * 1997-11-24 2000-02-01 Symantec Corporation Antivirus accelerator
US6094731A (en) * 1997-11-24 2000-07-25 Symantec Corporation Antivirus accelerator for computer networks
US6751789B1 (en) * 1997-12-12 2004-06-15 International Business Machines Corporation Method and system for periodic trace sampling for real-time generation of segments of call stack trees augmented with call stack position determination
WO1999032985A1 (en) * 1997-12-22 1999-07-01 Accepted Marketing, Inc. E-mail filter and method thereof
US6023723A (en) * 1997-12-22 2000-02-08 Accepted Marketing, Inc. Method and system for filtering unwanted junk e-mail utilizing a plurality of filtering mechanisms
US6052709A (en) * 1997-12-23 2000-04-18 Bright Light Technologies, Inc. Apparatus and method for controlling delivery of unsolicited electronic mail
US6088803A (en) 1997-12-30 2000-07-11 Intel Corporation System for virus-checking network data during download to a client device
US6324649B1 (en) * 1998-03-02 2001-11-27 Compaq Computer Corporation Modified license key entry for pre-installation of software
US6347310B1 (en) * 1998-05-11 2002-02-12 Torrent Systems, Inc. Computer system and process for training of analytical models using large data sets
US6253169B1 (en) * 1998-05-28 2001-06-26 International Business Machines Corporation Method for improvement accuracy of decision tree based text categorization
US6161130A (en) * 1998-06-23 2000-12-12 Microsoft Corporation Technique which utilizes a probabilistic classifier to detect "junk" e-mail by automatically updating a training and re-training the classifier based on the updated training set
US6546416B1 (en) * 1998-12-09 2003-04-08 Infoseek Corporation Method and system for selectively blocking delivery of bulk electronic mail
US6397200B1 (en) * 1999-03-18 2002-05-28 The United States Of America As Represented By The Secretary Of The Navy Data reduction system for improving classifier performance
US6505167B1 (en) * 1999-04-20 2003-01-07 Microsoft Corp. Systems and methods for directing automated services for messaging and scheduling
US6370526B1 (en) * 1999-05-18 2002-04-09 International Business Machines Corporation Self-adaptive method and system for providing a user-preferred ranking order of object sets
US20020038308A1 (en) * 1999-05-27 2002-03-28 Michael Cappi System and method for creating a virtual data warehouse
US6502082B1 (en) * 1999-06-01 2002-12-31 Microsoft Corp Modality fusion for object tracking with training system and method
US6772346B1 (en) * 1999-07-16 2004-08-03 International Business Machines Corporation System and method for managing files in a distributed system using filtering
US7366702B2 (en) * 1999-07-30 2008-04-29 Ipass Inc. System and method for secure network purchasing
US6442606B1 (en) * 1999-08-12 2002-08-27 Inktomi Corporation Method and apparatus for identifying spoof documents
US6456991B1 (en) * 1999-09-01 2002-09-24 Hrl Laboratories, Llc Classification method and apparatus based on boosting and pruning of multiple classifiers
US6424960B1 (en) * 1999-10-14 2002-07-23 The Salk Institute For Biological Studies Unsupervised adaptation and classification of multiple classes and sources in blind signal separation
US6397215B1 (en) * 1999-10-29 2002-05-28 International Business Machines Corporation Method and system for automatic comparison of text classifications
AU2262601A (en) * 1999-12-21 2001-07-03 Tivo, Inc. Intelligent system and methods of recommending media content items based on userpreferences
US20020087649A1 (en) * 2000-03-16 2002-07-04 Horvitz Eric J. Bounded-deferral policies for reducing the disruptiveness of notifications
US6842861B1 (en) * 2000-03-24 2005-01-11 Networks Associates Technology, Inc. Method and system for detecting viruses on handheld computers
US6973578B1 (en) * 2000-05-31 2005-12-06 Networks Associates Technology, Inc. System, method and computer program product for process-based selection of virus detection actions
US6721721B1 (en) * 2000-06-15 2004-04-13 International Business Machines Corporation Virus checking and reporting for computer database search results
US20020046207A1 (en) * 2000-06-30 2002-04-18 Seiko Epson Corporation Information distribution system, information distribution method, and computer program for implementing the method
US6778986B1 (en) * 2000-07-31 2004-08-17 Eliyon Technologies Corporation Computer method and apparatus for determining site type of a web site
US6886099B1 (en) * 2000-09-12 2005-04-26 Networks Associates Technology, Inc. Computer virus detection
US6928555B1 (en) * 2000-09-18 2005-08-09 Networks Associates Technology, Inc. Method and apparatus for minimizing file scanning by anti-virus programs
WO2002033525A2 (en) 2000-10-17 2002-04-25 Chuang Shyne Song A method and system for detecting rogue software
US20020147694A1 (en) * 2001-01-31 2002-10-10 Dempsey Derek M. Retraining trainable data classifiers
US20020178375A1 (en) * 2001-01-31 2002-11-28 Harris Corporation Method and system for protecting against malicious mobile code
US8949878B2 (en) * 2001-03-30 2015-02-03 Funai Electric Co., Ltd. System for parental control in video programs based on multimedia content information
US7024403B2 (en) * 2001-04-27 2006-04-04 Veritas Operating Corporation Filter driver for identifying disk files by analysis of content
US20020194489A1 (en) * 2001-06-18 2002-12-19 Gal Almogy System and method of virus containment in computer networks
US7194625B2 (en) * 2001-06-19 2007-03-20 Intel Corporation Method and apparatus for authenticating registry information
US7673342B2 (en) * 2001-07-26 2010-03-02 Mcafee, Inc. Detecting e-mail propagated malware
US7487544B2 (en) * 2001-07-30 2009-02-03 The Trustees Of Columbia University In The City Of New York System and methods for detection of new malicious executables
US7657935B2 (en) * 2001-08-16 2010-02-02 The Trustees Of Columbia University In The City Of New York System and methods for detecting malicious email transmission
US20030033587A1 (en) * 2001-09-05 2003-02-13 Bruce Ferguson System and method for on-line training of a non-linear model for use in electronic commerce
US8041803B2 (en) * 2001-09-26 2011-10-18 Qurio Holdings, Inc. Method and system for delivering files in digital file marketplace
US20030110395A1 (en) * 2001-12-10 2003-06-12 Presotto David Leo Controlled network partitioning using firedoors
US7159036B2 (en) * 2001-12-10 2007-01-02 Mcafee, Inc. Updating data from a source computer to groups of destination computers
US7150043B2 (en) 2001-12-12 2006-12-12 International Business Machines Corporation Intrusion detection method and signature table
US20030115479A1 (en) * 2001-12-14 2003-06-19 Jonathan Edwards Method and system for detecting computer malwares by scan of process memory after process initialization
US20030115458A1 (en) 2001-12-19 2003-06-19 Dongho Song Invisable file technology for recovering or protecting a computer file system
US20030154394A1 (en) * 2002-02-13 2003-08-14 Levin Lawrence R. Computer virus control
US20030233352A1 (en) * 2002-03-21 2003-12-18 Baker Andrey George Method and apparatus for screening media
US8924484B2 (en) * 2002-07-16 2014-12-30 Sonicwall, Inc. Active e-mail filter with challenge-response
US6952779B1 (en) * 2002-10-01 2005-10-04 Gideon Cohen System and method for risk detection and analysis in a computer network
US7337471B2 (en) 2002-10-07 2008-02-26 Symantec Corporation Selective detection of malicious computer code
US7249187B2 (en) * 2002-11-27 2007-07-24 Symantec Corporation Enforcement of compliance with network security policies
US7631353B2 (en) * 2002-12-17 2009-12-08 Symantec Corporation Blocking replication of e-mail worms
JP3979285B2 (ja) * 2002-12-17 2007-09-19 株式会社日立製作所 情報処理システム
JP4991283B2 (ja) * 2003-02-21 2012-08-01 カリンゴ・インコーポレーテッド コンテンツベースのアドレシングにおける追加ハッシュ関数

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008010790B4 (de) * 2008-02-22 2015-09-10 Fachhochschule Schmalkalden Verfahren zum Echtzeitvirenschutz unverschlüsselter und verschlüsselter Daten

Also Published As

Publication number Publication date
ATE319128T1 (de) 2006-03-15
EP1408393A2 (de) 2004-04-14
US7337471B2 (en) 2008-02-26
ES2257643T3 (es) 2006-08-01
US7458099B1 (en) 2008-11-25
EP1408393B1 (de) 2006-03-01
US20040068664A1 (en) 2004-04-08
DE60303753D1 (de) 2006-04-27
EP1408393A3 (de) 2004-11-24

Similar Documents

Publication Publication Date Title
DE60303753T2 (de) Selektives Erkennen von böswilligem Rechnercode
Duan et al. Detective: Automatically identify and analyze malware processes in forensic scenarios via DLLs
DE60105611T2 (de) Erkennung von viren durch histogramme
KR101122650B1 (ko) 정상 프로세스에 위장 삽입된 악성코드 탐지 장치, 시스템 및 방법
DE112019001121B4 (de) Auf einem computer implementiertes verfahren zum identifizieren von malware und system hierfür
Lindorfer et al. Lines of malicious code: Insights into the malicious software industry
EP2955658B1 (de) System und Verfahren zum Nachweis von schädlichen Dateien verschiedener Formate
Crussell et al. Andarwin: Scalable detection of android application clones based on semantics
US7085934B1 (en) Method and system for limiting processor utilization by a virus scanner
DE202011111121U1 (de) System zum Erfassen komplexer Schadsoftware
US8291493B2 (en) Windows registry modification verification
RU2624552C2 (ru) Способ обнаружения вредоносных файлов, исполняемых с помощью стековой виртуальной машины
CN103886252A (zh) 受信进程地址空间中执行的软件代码的恶意性的选择评估
DE112013002012B4 (de) Verfahren eines Erkennens von Schadsoftware in einem Betriebssystemkern
Eskandari et al. To incorporate sequential dynamic features in malware detection engines
US8788884B2 (en) Automatic correction of program logic
Rad et al. Metamorphic virus detection in Portable Executables using opcodes statistical feature
Rodríguez et al. A tool to compute approximation matching between windows processes
DE202013103358U1 (de) Selektive Einschätzung der Schädlichkeit von im Adressraum eines vertrauenswürdigen Prozesses ausgeführtem Software-Code
DE102019106914A1 (de) Anwendungsverhaltenssteuerung
US8788845B1 (en) Data access security
RU2665909C1 (ru) Способ избирательного использования шаблонов опасного поведения программ
DE102019106912A1 (de) Gefährdungserfassungssystem
DE102021212994B3 (de) Verfahren zur Erkennung von auf eine Manipulation hindeutenden Anomalien während eines sicheren Startvorgangs einer softwaregesteuerten Vorrichtung
Bayer Large-scale dynamic malware analysis

Legal Events

Date Code Title Description
8364 No opposition during term of opposition