-
Hintergrund der Erfindung
-
Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft Anti-Schadsoftware-Technologie, und insbesondere ein System und ein Computerprogrammprodukt zum Erfassen unbekannter Schadsoftware-Bedrohungen auf der Grundlage automatischer Echtzeit-Ereignisse und der Analyse von Verhaltensmustern von Objekten.
-
Beschreibung des Stands der Technik
-
Die gegenwärtige Verbreitung schädlicher Programme verursacht weltweit wesentlichen Schaden an Computern. Die bestehende Methodik zum Schutz von Stand-Alone Personalcomputern sowie Firmennetzwerken konzentriert sich in erster Linie auf den Umgang mit bereits bekannten Computerbedrohungen.
-
Die seit den späten 1980er Jahren bestehenden Antivirus-Programme erfassen Viren und verwandte schädliche Software in herkömmlicher Weise auf zwei Arten: (1) Dateien werden auf Binärcode-Strings gescannt, die denen bekannter Viren entsprechen („Virussignaturen“), und (2) Dateien werden auf bekannten virusartigen Code gescannt („heuristisches Scannen“). Andere Techniken umfassen entweder das Blockieren virusartigen Verhaltens („Verhaltens-Blockierung“) oder das Überprüfen von Dateien auf einige Modifikationen („Integritätsprüfung“).
-
Die
US 7,152,164 B1 offenbart ein netzwerkbasiertes Antivirus-System, bei dem, wenn ein Client-Computer Dateien oder anderen Web-Inhalt aus dem Netzwerk herunterlädt, deren Kennungen an einen Antivirus-Host-Computer gesendet werden, der sie mit einer Datenbank der Kennungen bekannter virusinfizierter Dateien oder anderem bekannten virusinfizierten Web-Inhalt vergleicht, wobei Sicherheitsmaßnahmen ergriffen werden, wenn eine gesendete Kennung eine hinreichend genaue Entsprechung in der Datenbank aufweist, wobei ein Antivirus-Host-Computer Anfragen von Client-Computern bearbeitet, um zu prüfen, ob diese Client-Computer in Gefahr sind, mit Computerviren infiziert zu werden.
-
Die
US 2008/0027891 A1 offenbart ein Verfahren zum Identifizieren einer schädlichen Einheit in einem Verarbeitungssystem, wobei das Verfahren das Bestimmen eines Einheits-Bedrohungswerts für eine Einheit umfasst, wobei der Einheits-Bedrohungswert indikativ für eine Bedrohungsstufe ist, die die Einheit für das Verarbeitungssystem darstellt, wobei der Einheits-Bedrohungswert auf der Grundlage eines oder mehrerer kennzeichnender Merkmale der Einheit bestimmt wird, wobei ein Vergleich des Einheits-Bedrohungswerts mit einer Einheits-Bedrohungsschwelle gezogen wird, um festzustellen, ob die Einheit schädlich ist.
-
Das
US-Patent 6,016,546 offenbart ein Verfahren zum Erfassen der Wahrscheinlichkeit des Vorhandenseins eines beliebigen eines ersten Satzes von bekannten Dateneigenschaften in dem Daten-String durch Verwendung eines zweiten Satzes generischer Eigenschaften und eines dritten Satzes von Signaturen, wobei die generischen Eigenschaften und die Signaturen typisch für den ersten Satz von Dateneigenschaften sind.
-
Das
US-Patent 6,338,141 offenbart ein Verfahren, das an einem Stand-Alone-Computersystem in Echtzeit oder an einem vernetzten Gerät durchgeführt werden kann. Das Verfahren verwendet eine Sammlung von relationalen Daten, um Computerviren in den Computerdateien zu erfassen. Diese Sammlung von relationalen Daten umfasst verschiedene relationale Signaturobjekte, die durch Viren erzeugt werden. Computerdateien, die auf Viren geprüft werden, durchlaufen einen Prozess, der relationale Signaturobjekte erzeugt. Nachdem die Signaturobjekte als Ergebnis des Datei-Scans erzeugt wurden, werden sie anhand der Sammlung relationaler Daten geprüft, und abhängig von den Ergebnissen kann die Datei als infiziert betrachtet und ihre Ausführung in dem System verboten werden.
-
Dieser Ansatz zur Behandlung von Viren kann ein schädliches Objekt jedoch nur identifizieren, nachdem das schädliche Objekt bereits in das Computersystem oder einen der Knoten in dem Netzwerk eingedrungen ist, und ist unwirksam gegenüber unbekannten Bedrohungen mit neuen, unbekannten Signaturen oder gegenüber Computerviren, die unbekannte Verhaltensmuster zeigen.
-
Dementsprechend besteht auf diesem Gebiet Bedarf an einem System für einen wirksameren, proaktiven Ansatz zur Erfassung unbekannter Computerbedrohungen, bevor ein unbekannter Virus in das geschützte Computersystem oder Computernetzwerk eindringt und zu einem Problem wird.
-
Kurzer Abriss der Erfindung
-
Offenbart wird ein System zum Erfassen unbekannter Schadsoftware, das eine Risikoanalyse und eine Risikobeurteilung auf der Grundlage verschiedener Kriterien durchführt und das im Wesentlichen einen oder mehrere der Nachteile des Stands der Technik umgeht.
-
In einem Aspekt der Erfindung werden ein System und ein Computerprogrammprodukt zum Erfassen von zuvor unbekannter Schadsoftware zur Verfügung gestellt, wobei das System umfasst: Einen Prozessor, der dafür konfiguriert ist, Metadaten-Informationen über Dateien, die auf einem entfernten Computer ausgeführt werden, sowie Informationen über Ausführungsereignisse der Dateien zu empfangen, einschließlich Informationen über an den Dateien durchgeführte Aktionen, wobei bekannte Metadaten-Informationen und bekannte Informationen über Ereignisse auf der Grundlage von Informationen, die in Whitelist- und Blacklist-Wissensdatenbanken gespeichert sind, herausgefiltert werden; wobei der Prozessor sich dadurch auszeichnet, dass er weiterhin für Folgendes konfiguriert ist: Bestimmen einer Aufrufabfolge der Dateien auf der Grundlage der Informationen über Dateiausführungsereignisse, einschließlich wenigstens von Ereignissen des Herunterladens, Ablegens, Verlinkens und Aufrufens von Dateien; Konstruieren einer Eltern-Kind-Hierarchie auf der Grundlage der Aufrufabfolge der Dateien, wobei die Eltern-Kind-Hierarchie Eltern-Kind-Verhältnisse zwischen den Dateien beschreibt; Durchführen einer Risikoanalyse der Dateien auf der Grundlage der empfangenen, nicht gefilterten Informationen, und wenigstens teilweise auf der Grundlage eines der folgenden Kriterien: Statistiken der Ausführungsereignisse jeder Datei, Namensstabilität der Dateiquelle, Adressstabilität der Dateiquelle, Aktivität der Datei und ein Verhaltensmuster der Datei; Durchführen einer Risikobeurteilung der Dateien auf der Grundlage der Eltern-Kind-Hierarchie, um eine Gefahrenstufe der verwandten Dateien zu bestimmen, wobei ein Risiko, das einer Eltern-Datei zugeordnet wird, wenigstens teilweise auf dem Risiko beruht, das einer oder mehreren Kinder-Dateien der Eltern-Datei zugeordnet wird; und Bestimmen, ob die Dateien schädlich sind, auf der Grundlage der Risikoanalyse und Risikobeurteilung, wobei die Risikoanalyse einer Datei auf der Berechnung einer Aktivitätsstufe der Datei („Aktivitäts“-Parameter), eines Gefahrengrads der Datei („Gefahr“-Parameter) und einer Signifikanz für die Datei („Signifikanz“-Parameter) beruht, wobei der Signifikanz-Parameter berechnet wird als Signifikanz = (Aktivität · Gefahr), und wobei der Gefahr-Parameter auf der Grundlage eines Entscheidungsbaums von Gewichtskoeffizienten berechnet wird, der für die Kriterien aufgebaut wird, die bei der Risikoanalyse der Datei verwendet werden.
-
Die Datei-Metadaten können Beliebiges aus Folgendem sein: Dateiname, Dateierweiterung, Dateigröße, Dateiverlinkungsstatus, unabhängig davon, ob die Datei digital signiert, ein Download-Hilfsprogramm oder gepackt ist, Dateiquelle, Datei-Aufruffrequenz, Dateipfad, die URL, von der die Datei empfangen wurde, sowie ein Port, auf den die Datei zugreift.
-
Die analysierten Ereignisinformationen können Informationen über Verhaltensmuster eines Objekts oder statistische Daten im Zusammenhang mit dem Ereignis, Namensstabilität der Objektquelle, IP-Adressstabilität der Objektquelle, die Aktivität des Objekts sowie Informationen bezüglich der Art des Ereignisses wie das Herunterladen einer Datei, das Ablegen einer Datei und das Verlinken einer Datei usw. umfassen.
-
Das System ist in der Lage, eine automatisierte Erfassung der zuvor unbekannten Schadsoftware in Echtzeit durchzuführen, oder kann in Zusammenarbeit mit menschlichen Analysten eine mehrstufige Analyse auf das Vorhandensein solcher Schadsoftware durchführen.
-
Das System unterhält eine sogenannte Whitelist von Objekten, die als ungefährlich bekannt sind oder betrachtet werden, und eine sogenannte Blacklist von Objekten, die als schädlich bekannt sind oder definiert werden.
-
Sobald eine Datei zu der Blacklist hinzugefügt wurde, beginnt die auf dem Computer des Benutzers installierte Antivirus-Software, das Objekt als schädlich zu erfassen, und schützt den Computer des Benutzers vor dem schädlichen Objekt. Die Antivirus-Software blockiert auch den Zugriff des Benutzers auf Domains und URLs, die auf der Blacklist stehen. Bezüglich der Domains berechnet das System auch einen Parameter, der „Reputation“ genannt wird und der einen Grad der Gefahr darstellt, der einer bestimmten Internet-Ressource zugeordnet wird.
-
Ein entsprechendes Verfahren umfasst (a) Empfangen von Ereignisinformationen und Datei-Metadaten von einem entfernten Computer; (b) Identifizieren, ob die Ereignisinformationen oder die Datei-Metadaten indikativ für bekannte Schadsoftware, indikativ für unbekannte Schadsoftware oder indikativ für das Nichtvorhandensein von Schadsoftware sind; (c) wenn die Ereignisinformationen oder die Datei-Metadaten indikativ für bekannte Schadsoftware oder indikativ für das Nichtvorhandensein von Schadsoftware sind, Herausfiltern der Ereignisinformationen und der Datei-Metadaten; (d) Durchführen einer Risikoanalyse und Risikobeurteilung für die übrigen Ereignisinformationen und die übrigen Datei-Metadaten, um zu bestimmen, ob das Ereignis und die Datei-Metadaten indikativ für das Vorhandensein zuvor unbekannter Schadsoftware sind; und (e) Durchführen einer Risikoanalyse und Risikobeurteilung, wobei diese Risikoanalyse und Risikobeurteilung die Konstruktion einer „Eltern-Kind“-Hierarchie auf der Grundlage des Aufrufs der Dateien umfasst, wobei das dem Elternteil zugeordnete Risiko auf dem Risiko beruht, das dem Kind zugeordnet wird.
-
Zusätzliche Merkmale und Vorteile der Erfindung sind in der folgenden Beschreibung dargelegt und werden zum Teil aus der Beschreibung deutlich oder können durch die praktische Anwendung der Erfindung erfahren werden. Die Vorteile der Erfindung werden durch die Struktur verwirklicht und erzielt, die in der schriftlichen Beschreibung und den Ansprüchen sowie den beigefügten Zeichnungen besonders hervorgehoben ist.
-
Es ist klar, dass sowohl die obenstehende allgemeine Beschreibung und die folgende ausführliche Beschreibung beispielhaft und erklärend sind und eine weitere Erläuterung der beanspruchten Erfindung bieten sollen.
-
Figurenliste
-
Die beigefügten Zeichnungen, die für ein weiteres Verständnis der Erfindung angehängt sind, bilden einen Teil dieser Beschreibung, illustrieren Ausführungsformen der Erfindung und dienen zusammen mit der Beschreibung zur Erläuterung der Prinzipien der Erfindung.
-
In den Zeichnungen zeigen:
- 1 ein Flussdiagramm der Erfassung unbekannter Bedrohungen gemäß einer Ausführungsform der Erfindung;
- 2 ein beispielhaftes DS-Diagramm (Download-Starter-Diagramm), das zur Identifikation einer unbekannten Bedrohungsart erstellt wurde;
- 3 einen Baum beispielhafter Gewichtskoeffizienten, der als Ergebnis der Auswertung verschiedener Kriterien gemäß einer Ausführungsform der Erfindung erstellt wurde;
- 4 ein Diagramm einer aggregierten Gewichtskalkulation gemäß einer Ausführungsform der Erfindung;
- 5 eine Erzeugung neuer Kriterien gemäß einer Ausführungsform der Erfindung;
- 6 den Datenfluss zwischen den verschiedenen Komponenten einer Ausführungsform der Erfindung;
- 7 ein Schema eines beispielhaften Computersystems, auf dem die Anti-Schadsoftware-Erfindung implementiert sein kann.
-
Ausführliche Beschreibung der bevorzugten Ausführungsformen
-
Im Folgenden wird detailliert auf die bevorzugten Ausführungsformen der Erfindung eingegangen, von denen Beispiele in den beigefügten Zeichnungen dargestellt sind.
-
Offenbart wird ein System zum Erfassen der folgenden Kategorien zuvor unbekannter Schadsoftware:
- • Schädliche Programme
- • potenziell unerwünschte Programme
- • Schädliche Websites
- • Betrügerische Websites
- • Über E-Mail, IM, öffentliche Netzwerke usw. übertragene Nachrichten, die schädliche Objekte oder Links zu solchen enthalten
- • Übrige Arten von Computerbedrohungen wie internetbasierte Angriffe, unerwünschte Banner, unerwünschter Inhalt (Pomografie, Glücksspiel, Werbung mit Bezug auf Drogen und Alkohol) usw.
-
Das System verfolgt aus der Entfernung die von verschiedenen Anwendungen aufgerufenen Dateien, die auf dem Computer eines Benutzers ausgeführt werden, um die ausführbaren Dateien auf die Anwesenheit von Schadsoftware zu prüfen, und umgeht dadurch im Wesentlichen einen oder mehrere Nachteile des einschlägigen Stands der Technik.
-
Bei einer Ausführungsform der Erfindung ist ein System zum Erfassen unbekannter Bedrohungen vorgeschlagen. Ein beispielhaftes System kann einen Teil des Kaspersky-Sicherheitsnetzwerks KSN umfassen, wie es von Kaspersky Lab zur Verfügung gestellt und unterhalten wird, und mehrere Benutzer, die während der üblichen täglichen Nutzung ihrer jeweiligen Computer mit dem KSN verbunden sind.
-
Vor dem Verbinden mit dem KSN installiert jeder Benutzer auf seinem Computer ein Antivirusprogramm, das in einem Ausführungsbeispiel von Kaspersky Lab zur Verfügung gestellt wird. Das Antivirusprodukt operiert im Hintergrund und berichtet an das KSN über jede Aktivität, die potenziell schädlich für das Computersystem des Benutzers sein könnte. Diese Aktivität könnte ein Benutzer sein, der zum ersten Mal auf eine bestimmte Datei zugreift oder diese herunterlädt, oder eine ausführbare Datei, die auf dem Computer eines Benutzers aufgerufen wird, oder ein Benutzer, der eine Verbindung zu einer kaum bekannten Internetressource herstellt, beispielsweise einer Website, die schädliche Dateien verbreiten könnte usw.
-
Die vom dem KSN gesammelten Informationen umfassen Ereignisinformationen und Objektinformationen. Ereignisinformationen beschreiben bestimmte Ereignisarten, die auf den Computern entfernter Benutzer stattfinden, wie Fälle des Herunterladens von Objekten, des Ablegens von Objekten, der Dateiverlinkung und des Dateiaufrufs. Ereignisinformationen können auch statistische Daten im Zusammenhang mit dem Ereignis, der Namensstabilität der Objektquelle, der IP-Adressstabilität der Objektquelle, der Aktivität des Objekts und einiger Verhaltensmuster des Objekts im Zusammenhang mit dem Ereignis enthalten. Die von dem KSN gesammelten Objektinformationen umfassen Datei-Metadaten, die eine bestimmte Datei beschreiben, wie Dateiname, Dateierweiterung, Dateigröße, Dateiverlinkungsstatus, ob die Datei digital signiert ist, ob die Datei eine ausführbare Datei oder ein Download-Hilfsprogramm ist oder ob die Datei gepackt ist, eine Dateiquelle, die Datei-Aufruffrequenz, den Dateipfad, die URL, von der die Datei empfangen wurde, sowie einen Port, auf den die Datei zugreift. Bezüglich der gesammelten Informationen unterhält das KSN eine Wissensdatenbank (Whitelist oder WL) von Ereignissen und Objekten, von denen bekannt ist, dass sie unschädlich oder „sauber“ sind, oder von denen angenommen wird, dass eine Schädlichkeit unwahrscheinlich ist. Das KSN unterhält auch eine Wissensdatenbank (Blacklist oder BL) von Ereignissen und Objekten, deren Schädlichkeit bekannt ist oder für wahrscheinlich gehalten wird.
-
Das System ist auch fähig, Benutzer vor Links zu schädlichen URLs zu schützen, die durch Instant Messenger (IM) an den Benutzer gesandt werden. Auf der Grundlage der in den Datenbanken des KSN gespeicherten Informationen können bestimmte Kontakte, die IMs versenden, als nicht vertrauenswürdig beurteilt werden. Hypertext-Links, die durch IMs von nicht vertrauenswürdigen Kontakten empfangen werden, werden von dem System erfasst, und das System entscheidet, ob der Link von schädlicher Art ist, und setzt das Ziel des Links auf die Blacklist.
-
Ein High-Level-Flussdiagramm, das die Verarbeitung von Informationen beschreibt, die von den teilnehmenden Benutzern empfangen werden, ist in 1 dargestellt. Während der ersten Verarbeitungsstufe werden die eingehenden Informationen bezüglich verschiedener Ereignisse und Datei-Metadaten, die von den Benutzern berichtet werden, unter Verwendung der in den WL- und BL-Wissensdatenbanken gespeicherten Informationen gefiltert (Schritt 101). Der Filteralgorithmus prüft sowohl die WL als auch die BL auf Vorhandensein von Daten bezüglich der eingehenden Ereignisinformationen und Objektinformationen und filtert die bekannten Ereignisinformationen und Objektinformationen heraus.
-
Die übrigen Informationen werden von dem System verarbeitet, das eine Risikoanalyse und Risikobeurteilung für die übrigen Ereignisinformationen und die übrigen Datei-Metadaten durchführt, um zu bestimmen, ob das Ereignis und die Datei-Metadaten indikativ für das Vorhandensein zuvor unbekannter Schadsoftware sind. Die Risikoanalyse und Risikobeurteilung werden in Schritt 102 in Echtzeit durchgeführt. Die Risikoanalyse wird unter Verwendung verschiedener Kriterien und verschiedener Techniken durchgeführt, um Risiken zu bestimmen (beispielsweise ist eine URL-basierte Analyse ein Risikofaktor, die Dateigrößenanalyse ist ein weiterer Faktor, und so weiter). Die Risikobeurteilung wird durchgeführt, indem verschiedene Metriken aggregiert werden, um beispielsweise zu bestimmen, ob das Risiko hoch, mittel oder gering ist. Verschiedene Parameter wie Aktivität, Gefahr, Signifikanz werden berechnet und bei der Erzeugung eines Download-Starter-Graphs (DS-Graphs) in Schritt 103 verwendet.
-
Auf der Grundlage der Analyse des DS-Graphs entscheidet das System, ob ein Schadsoftware-Ereignis oder -objekt erfasst wurde. Wenn ein schädliches Objekt oder Ereignis entdeckt wurde, oder wenn bestimmt wurde, dass dies mit einem hohen Grad an Sicherheit der Fall ist, wird in Schritt 105A die BL mit den Informationen über diese zuvor unbekannte Bedrohung aktualisiert. Wenn jedoch bestimmt wird, dass die Ereignisinformationen oder Objektinformationen unschädlich sind, aktualisiert das System in Schritt 105B die WL entsprechend.
-
Ein Beispiel für einen DS-Graph, der in Schritt 103 von 1 erstellt wurde, ist in 2 dargestellt. In den letzten Jahren haben sich schädliche Programme mit dem Verhalten der Art eines Trojan-Droppers und eines Trojan-Downloaders stark verbreitet. Trojan-Dropper werden verwendet, um ohne Wissen des Benutzers andere Schadsoftware auf Opfercomputern zu installieren. Dropper installieren ihre Payload entweder ohne eine Benachrichtigung anzuzeigen, oder sie zeigen eine falsche Nachricht über einen Fehler in einer archivierten Datei oder im Betriebssystem an. Die neue Schadsoftware wird an einem bestimmten Ort auf einer lokalen Festplatte abgelegt und anschließend gestartet. Die Funktion des Droppers enthält einen Code, um alle Payload-Dateien zu installieren und auszuführen. Ein Trojan-Downloader lädt eine neue Schadsoftware oder Adware auf den Opfercomputer herunter und installiert sie. Der Downloader startet dann entweder die neue Schadsoftware oder registriert sie, um eine automatische Ausführung entsprechend den Anforderungen des lokalen Betriebssystems zu ermöglichen. All dies geschieht ohne Wissen oder Zustimmung des Benutzers. Die Namen und Orte der herunterzuladenden Schadsoftware sind entweder in dem Trojaner codiert oder werden von einer bestimmten Website oder einem anderem Internet-Ort heruntergeladen.
-
In einem Beispiel ruft ein Benutzer einen Browser auf und lädt die ausführbare Datei Tubecodec934.exe herunter. Dieses Ereignis wird an das KSN berichtet. Bei der Ausführung lädt Tubecodec934.exe mehrere andere Dateien herunter, und diese Ereignisse werden ebenfalls dem KSN berichtet. In diesem Fall ist Tubecodec934.exe „Elternteil“ für fünf Dateien: Svch0st.exe, Ntkrnl.dll, Calc.exe, 1.exe und Hosts.vbs, die „Kind“-Dateien von Tubecodec934.exe sind. Das System fährt fort mit einer Echtzeit-Risikoanalyse und -risikobeurteilung, die die Konstruktion einer „Eltern-Kind-Hierachie“ auf der Grundlage der Aufrufabfolge der Dateien umfasst. Das der „Eltern“-Datei zugeordnete Risiko beruht auf dem Risiko, das dem „Kind“ oder den „Kindern“ dieser Datei zugeordnet wird. In diesem Fall haben die KSN-Datenbanken keine Informationen über die ersten drei dieser Dateien, und die Analysemodule des KSN beginnen die Durchführung der Analyse dieser Dateien, um eine Gefahrenstufe zu beurteilen, die diesen Dateien zugeordnet wird. Um die unbekannten Bedrohungen zu erfassen, die von „Eltern“ und „Kindern“ dargestellt werden, baut das System eine Graphendarstellung analog zu der in 2 gezeigten auf.
-
Sobald der Graph aufgebaut ist, berechnet das System für jeden „Elternteil“ einen so genannten X-Faktor. Der X-Faktor definiert die Gefahrenstufe eines gegebenen „Elternteils“ und beruht auf den Daten über dessen „Kinder“. Der X-Faktor zeigt, zu welcher Art von Programmen ein gegebenes Objekt tendiert: beispielsweise zu Dateimanagern oder einem Trojan-Dropper, zu Browsern und legitimen Downloads oder zu einem Trojan-Downloader.
-
Ein weiteres Verfahren zum Beurteilen einer Gefahrenstufe einer gegebenen ausführbaren Datei besteht darin, das Verhältnis von „sauberen“ zu schädlichen Programmen, die die Datei aufruft, zu analysieren. Zum Beispiel wäre es für den Durchschnittsfachmann offensichtlich, dass die Datei „explorer.exe“, eine ausführbare Datei eines bekannten Browsers, mehr „saubere“ als schädliche Dateien aufruft und daher eine sehr niedrige Gefahrenstufe hat.
-
Das System berechnet auch Parameter, die die Aktivitätsstufe, den Gefahrengrad und die Signifikanz für jedes Element des Graphen beschreiben. Der Parameter „Signifikanz“ ist eine Funktion, die die Aktivitätsstufe und den Gefahrengrad eines Ereignisses berücksichtigt und wie folgt berechnet wird: Signifikanz = (Aktivität · Gefahr). Der Parameter „Aktivität“ wird auf der Grundlage der Daten berechnet, die die Zahl der Downloads oder die Zahl von Malen, die ein gegebenes Objekt über einen bestimmten Zeitraum aufgerufen wird, betreffen. Ein bestimmter Algorithmus wird verwendet, um diesen Parameter auf eine Form zu reduzieren, die für die Analyse geeignet ist.
-
Unter Verwendung dieses Algorithmus wird die „Aktivität“ der Objekte auf eine bestimmte Form einer Wahrscheinlichkeitsverteilung reduziert. Das ermöglicht eine Reduzierung der Signifikanz von Ereignissen, die vor langer Zeit stattgefunden haben, und eine Offenlegung der Abweichungstrends dieses Parameters.
-
Der Parameter „Aktivität“ wird wie folgt berechnet: Aktivität = Treffer · F(Δt), wobei „Treffer“ die Zahl der Downloads, Programmstarts, versuchten Angriffe aus dem Netz usw. ist und Δt die Zeitspanne seit dem Auftreten des letzten Ereignisses ist. Jedoch ist eine starke Aktivität eines Programms für sich genommen nicht unbedingt ein Indikator, dass dieses Programm schädlich ist, da der Aktivitätstrend auch berücksichtigt werden kann (s. Tabelle 1 unten).
-
Beispiele für „Aktivitäts“-Berechnungen, die von dem System durchgeführt werden, sind in Tabelle 1 angeführt.
Tabelle 1. Aktivitätsberechnung und Trendanalyse
# | Treffer gesamt | Anstieg | Δt, min. | Aktivität | Trend |
| 10 | 10 | 0 | 10 | Aufwärts |
| 25 | 15 | 15 | 27,5 | Aufwärts |
| 80 | 55 | 15 | 68,75 | Aufwärts |
| 165 | 85 | 15 | 129,38 | Aufwärts |
| 245 | 80 | 15 | 138,69 | Stabil |
| 316 | 71 | 15 | 140 | Stabil |
| 336 | 20 | 15 | 92,7 | Abwärts |
| 351 | 15 | 15 | 61,4 | Abwärts |
| 352 | 1 | 105 | 19 | Abwärts |
0 | 353 | 1 | 175 | 1,73 | Abwärts |
-
Der Parameter „Gefahr“ wird auf der Grundlage des so genannten Entscheidungsbaums von Gewichtskoeffizienten berechnet, deren Mehrheit sich dynamisch ändert, abhängig von den akkumulierten Informationen in der Wissensdatenbank. Ein Baum von Gewichtskoeffizienten ist ein Ergebnis von Tests verschiedener Kriterien, die im AntiVirus-Labor des Erfinders für verschiedene Arten erfasster Objekte entwickelt wurden.
-
Detaillierte Beispiele der Berechnung von „Gefahr“ sind unten angeführt.
-
Beispiel 1
-
In diesem Beispiel, das in 3 dargestellt ist, erhält das System eine Benachrichtigung, dass eine ausführbare Datei http:**soho.com.server91l1ch/us/us1.exe.jpg mit einem Hashwert MD5=0x12A91C1CB575D154BAA9AAD1759F6EC8 von einem Benutzer heruntergeladen wurde. Beim Verarbeiten dieser Nachricht baut das System als Teil der Risikoanalyse und Risikobeurteilung einen Entscheidungsbaum aus einer Vielzahl von Kriterien auf, wobei jedes Kriterium eine bestimmte Logik implementiert. Beispielsweise wird einem Kriterium aus der Gruppe der Tests, bei denen der Host-Name geprüft und das Vorhandensein einer Maskierung erfasst wird, das maximale Gewicht von 100 zugeordnet, da der Name des Hosts den Host von der Whitelist soho.com umfasst. Einem weiteren Kriterium, das auf das Vorhandensein doppelter Erweiterungen prüft, wird das Gewicht 92 zugeordnet, da diese ausführbare Datei zwei Erweiterungen aufweist, exe und jpg, und sich als beliebtes Bildformat tarnt.
-
Das maximale Gewicht wäre vergeben worden, wenn diese beiden Dateierweiterungen durch ein Leerzeichen getrennt gewesen wären.
-
Die „Gefahr“ des Objekts ist numerisch gleich dem Aggregat der Gewichtskoeffizienten des Entscheidungsbaums.
-
Beispiel 2
-
Das System erhält eine Benachrichtigung, dass eine ausführbare Datei heruntergeladen worden ist. Wenn dies die erste Nachricht ist, die sich auf dieses Objekt bezieht, baut das System einen Entscheidungsbaum auf.
-
Betrachtet wird ein Zweig der Kriterien, die für die Analyse der URL verantwortlich sind. Es wird angenommen, dass das URL-Feld des empfangenen Datenpakets URL = http:**yahoo.com.server911.ch/us/us^;2.exe.jpg ist. Jeder Teil dieser URL-Zeichenfolge (Domainname, Host, Dateiname, Port usw.) wird unter Verwendung eines spezifischen Kriteriums analysiert, was zu dem in 4 gezeigten Entscheidungsbaum führt.
-
Bei der Aufschlüsselung des Host-Namens (yahoo.com.server911.ch) identifiziert das System einen Versuch der URL, sich als Domain von der Whitelist, „yahoo.com“ zu maskieren. Dem Kriterium 3.1.1.1 wird ein Gewicht von 80 zugeordnet.
-
Der Teil des Strings „Server911.ch“ stimmt mit keiner bekannten Domain überein, und daher ist das Gewicht des Kriteriums „Ähnlichkeit mit SoundEX-Algorithmus“ gleich 0.
-
Das resultierende Gewicht des Kriteriums „(Maskierender) Name“ W3.1.1 = F(w3.1.1.1, W3.1.1.2) = 80.
-
Jedesmal, wenn eine Internet-Ressource oder neue Domain registriert wird, ist der Registrierende verpflichtet, bestimmte Informationen zur Verfügung zu stellen, wie eine E-Mail-Adresse und zusätzliche Pflichtinformationen. Diese Registrierungsinformationen können von dem KSN verwendet werden, um die Ressourcen zu identifizieren, die Schadsoftware verbreiten. Das System prüft, ob es eine Geschichte der Verbreitung schädlicher Dateien im Zusammenhang mit der E-Mail-Adresse des Registrierenden gibt. Obgleich in einigen Fällen die E-Mail-Adressen fiktiv sein können, verlangen die meisten Registrierungsbehörden die Verifizierung der E-Mail-Adresse vor dem Registrieren der Ressource.
-
Das System prüft auch die Lebensdauer der Ressource. Viele Urheber schädlicher Software nutzen kostenlose Testzeiträume, die von Registrierungsbehörden angeboten werden. Sie registrieren viele Websites gleichzeitig, lenken so viel Verkehr wie möglich auf diese Websites um und verbreiten so viel Schadsoftware wie möglich, bis der kostenlose Testzeitraum endet und die Websites automatisch geschlossen werden.
-
Einige Registrierungsbehörden bieten eine Proxy-Domain-Registrierung durch die Behörde selbst an, und das KSN benutzt „Proxy-Registrierung“ als Indikator, dass die Domain mit schädlichen Websites in Zusammenhang stehen könnte.
-
Durch Erhalt der Registrierungsinformationen von dem Dienst WhoIs (oder ähnlichen Diensten) kann das System bestimmen, dass diese Domain erst seit 6 Tagen existiert und während dieser Zeit der Name des Servers und die IP-Adresse dreimal geändert wurden. Diese Art des Verhaltens ist charakteristisch für schädliche Websites, und dementsprechend werden den Kriterien „Stabilität des Nameservers“ und „Stabilität der IP-Adresse“ jeweils die Gewichte 70 und 75 zugeordnet.
-
Das resultierende Gewicht des Kriteriums „WhoIs-Information“ ist gleich W3.1.2 = F(w3.1.2.2, w3.1.2.3) = 87. Das System berechnet anschließend das aggregierte Gewicht für „Host-Name“: W3.1 = F(W3.1.1,W3.1.2) = 93.
-
Der Dateiname „us^;2“ ist nicht beliebt, weder bei schädlichen Programmen noch bei sauberen Dateien. Daher leistet das Kriterium (3.1.1.2) keinerlei Beitrag zu dem aggregierten Gewicht. Das Vorhandensein der Zeichenkette „^;“ im Namen der Datei ist nicht typisch für saubere Objekte und deutet auf eine zufällige Generierung eines Dateinamens hin. Daher wird dem Kriterium 3.2.2 ein Gewicht von 43 zugeordnet.
-
Die Summe der Kriterien für das Testen der maskierten Erweiterungen (3.2.3.1.1 und 3.2.3.1.2) hat ein Gewicht von 92. Die geprüfte Datei ist eine ausführbare Datei und weist zwei Erweiterungen auf (3.2.3.1.1). Weiterhin zeigt die zweite Erweiterung jpg einen Versuch an, die Datei als Bilddatei zu maskieren. Der maximale Gewichtswert würde erreicht, wenn die beiden Erweiterungen durch ein Leerzeichen getrennt wären. Das Objekt weist eine Erweiterung auf, und daher ist das Gewicht des Kriteriums „Fehlende Erweiterung“ gleich null. Auf der Grundlage des Obenstehenden ist das aggregierte Gewicht aller Kriterien, die den Dateinamen beurteilen, W3.2 = 95.
-
In diesem Fall ist der Port nicht spezifiziert, was bedeutet, dass ein Standard-http-Protokoll-Port verwendet wird, der nicht verdächtig ist. Daher ist das Gewicht W3.3 des Kriteriums „Port“ gleich null.
-
Der resultierende Wert für das Kriterium „Analyse der URL-Zeichenfolge“ W3 = F(w3.1, w3.2, w3.3) = 98 und zeigt an, dass die Wahrscheinlichkeit, dass diese URL ein schädliches Objekt aufweist, 0,98 oder 98% ist.
-
Beispiel 3
-
Unter Bezugnahme auf 4 wird ein weiteres Beispiel der Berechnung von „Gefahr“ betrachtet. Das System empfängt eine Benachrichtigung, dass eine ausführbare Datei, die als der Trojan-Downloader Win32.Agent.yyy identifiziert wurde, von einer Domain heruntergeladen wurde, die in der Whitelist gelistet ist. Um diesen Konflikt zu lösen, baut das System einen Entscheidungsbaum auf.
-
Im Folgenden werden zusätzliche Einzelheiten für einen Zweig der Kriterien beschrieben, die für die Analyse der URL verantwortlich sind. Angenommen, das URL-Feld des empfangenen Datenpakets ist URL = http:**www.nokia.com/files/support/nseries/phones/software/Nokia_Lifeblog-2_5_224-en-u k.exe. Jeder Teil dieser URL-Zeichenfolge (Domain-Name, Host-Name, Dateiname, Port usw.) wird unter Verwendung eines bestimmten Kriteriums analysiert.
-
Bei der Aufschlüsselung des Host-Namens http:**www.nokia.com bestimmt das System, dass kein Versuch vorliegt, die Domain als Domain der Whitelist zu maskieren. Daher haben die Kriterien 3.1.1.1 und 3.1.1.2 ein Gewicht von null, was zu einem aggregierten Gewicht für das Kriterium „maskierender Name“ von W3.1.1 = F(W3.1.1.1, W3.1.1.2) = 0 führt.
-
Bei Erhalt der Registrierungs-Informationen von dem Dienst Whols bestimmt das System, dass diese Domain seit 18 Jahren existiert und während dieser Zeit der Nameserver nie geändert wurde und die IP-Adresse einmal in den vergangenen 4 Jahren geändert wurde. Diese Art des Verhaltens ist charakteristisch für saubere Websites, und dementsprechend werden den Kriterien „Stabilität des Nameservers“ und „Stabilität der IP-Adresse“ jeweils die Gewichte 0 und 1 zugeordnet.
-
Das resultierende Gewicht des Kriteriums „Whols-Information“ ist gleich W3.1.2 = F(W3.1.2.2, W3.1.2.3) = 1. Das System berechnet anschließend das aggregierte Gewicht für „Host-Name“: W3.1 = F(W3.1.1, W3.1.2) = 1.
-
Der Dateiname „Nokia_Lifeblog_2_5_224_en_uk“ ist nicht beliebt bei schädlichen Programmen. Aus diesem Grund liefert das Kriterium (3.1.1.2) keinerlei Beitrag zu dem aggregierten Gewicht.
-
Der Dateiname umfasst Zeichen, die keinen Verdacht erregen. Die Wörter, die den Dateinamen bilden, haben eine Bedeutung und kommen in Namen „sauberer“ Programme vor. Daher ist das Gewicht des Kriteriums 3.2.2 gleich null.
-
Das aggregierte Gewicht der Kriterien für das Testen der maskierten Erweiterungen (3.2.3.1.1 und 3.2.3.1.2) hat einen Wert von 0, da die analysierte Datei ausführbar ist und eine typische Erweiterung hat - exe für ausführbare Dateien. Daher ist W3.2.3.1.1 = 0. Das Objekt weist eine Erweiterung auf, und daher ist das Gewicht des Kriteriums „Fehlende Erweiterung“ gleich null.
-
Auf der Grundlage des Obenstehenden ist das aggregierte Gewicht aller Kriterien zur Beurteilung des Dateinamens W3.2 = 0.
-
Der Port ist nicht spezifiziert. Das bedeutet, dass ein Standard-HTTP-Protokoll-Port verwendet wird, der nicht verdächtig ist. Daher ist das Gewicht W3.3 des Kriteriums „Port“ gleich null.
-
Das resultierende Gewicht für das Kriterium „Analyse der URL-Zeichenfolge“ W3 = F (W3.1, W3.2, W3.3) = 1 zeigt an, dass die Wahrscheinlichkeit, dass diese URL ein schädliches Objekt aufweist, zu vernachlässigen ist.
-
Es ist offensichtlich, dass die übrigen Kriterien des Entscheidungsbaums ebenfalls das minimale Gewicht haben. Die Situation wird als falscher Alarm eingestuft, und das System korrigiert automatisch die Antivirus-Wissensdatenbanken.
-
Der Entscheidungsbaum kann einfach durch Hinzufügen neuer Kriterien erweitert werden, die die Angemessenheit der von dem System getroffenen Entscheidungen verbessern. Dieses Merkmal der Erfindung ist in Beispiel 4 beschrieben und in 5 gezeigt.
-
Beispiel 4
-
Eine Aktualisierung des Systems zum Sammeln statistischer Informationen ist beendet. Das System beginnt, neue Informationen bezüglich des Verhaltens verschiedener Objekte in dem System zu empfangen. Eine Hinzufügung der beiden neuen Kriterien „Treiber-Installation“ und „Direktes Schreiben auf Platte“ führen zu einer Modifizierung des Entscheidungsbaums, hervorgehoben in 5.
-
Nach dieser Modifizierung des Entscheidungsbaums ändert sich das Maximalgewicht des Kriteriums 5.3 nicht. Dieses Kriterium wird jedoch informativer und präziser, was wiederum die Qualität der Entscheidungen positiv beeinflusst.
-
Das Folgende sind mehrere Beispiele der Kriterien, die das System zum Analysieren der eingehenden Informationen verwendet:
- 1) Verhältnis von sauberen zu infizierten Dateien, die von einem gegebenen Archivierungsprogramm gepackt werden. Es wird angenommen, dass in einem Strom von Benachrichtigungen das System die Information bezüglich 200 infizierter und 5 sauberer Dateien bekommt, die von einem Packer X komprimiert wurden. Das entscheidendungstreffende Unterstützungs-Subsystem (DSS, „http://en.wikipedia.org/wiki/Decision_support_system“) kommt zu dem Schluss, dass der Packer X meistens verwendet wird, um schädliche Dateien zu packen. Je infizierter Dateien sind, die das System in dem eingehenden Strom empfängt und die unter Verwendung des Packers X gepackt wurden, desto höher die Gefahrenstufe, die den Dateien zugeordnet wird, die unter Verwendung des Packers X gepackt wurden. Es ist zu beachten, dass dies auch für die Dateien gilt, die nicht von dem beschriebenen System erfasst werden. Das System berücksichtigt auch andere relevante Informationen über die Dateipacker: Open-Source oder kommerziell verkaufte, durch eine angesehene Software-Entwicklungsfirma digital signierte oder unsignierte, individuell entwickelte Archivierungssoftware.
Das System ist intelligent genug, nicht automatisch einen Host auf die Blacklist zu setzen, von dem ein oder zwei schädliche Programme heruntergeladen wurden. Was zählt, ist das Verhältnis von „sauberen“ zu schädlichen Dateien, die von einem bestimmten Host verteilt werden. Beispielsweise setzt das System einen Host mail.google.com nicht automatisch auf die Blacklist, nachdem ein Benutzer in seiner E-Mail neben vielen anderen „sauberen“ Nachrichten einen Virus erhalten hat, der von diesem Host ausging. Wenn sich andererseits das Verhältnis von „sauberen“ zu schädlichen Dateien, die von einem bestimmten Host empfangen werden, zu der Seite der schädlichen Dateien neigt, schließt das System daraus, dass der Host hauptsächlich der Verteilung von Schadsoftware dient.
- 2) Schätzung des Auftretens bestimmter Wörter in den Namen der Dateiobjekte. Das System extrahiert aus den Namen der Dateien die Wörter, die bei schädlichen Objekten am häufigsten vorkommen. Wenn eines dieser Wörter in dem Namen eines Dateiobjekts vorkommt, wird dem zugehörigen Kriterium das entsprechende Gewicht zugeordnet.
- 3) Ein weiteres Beispiel ist eine Datei mit mehreren Erweiterungen, wobei die erste nach dem Dateinamen eine bekannte, nicht ausführbare, aber beliebte Erweiterung ist, gefolgt von einer Reihe von Leerzeichen. Dies ist ein Beispiel eines Dateinamens, wobei dem Kriterium des Dateinamens das maximale Gewicht zugeordnet wird: „Sex_Girls.avi .exe“.
- 4) Ein wirksames Kriterium zur Erfassung von schädlichen Objekten beruht auf der Erfassung derselben Datei unter einer Vielzahl unterschiedlicher Namen. Dies ist typisch für schädliche Objekte, die von dem System empfangen werden, wenn die Namen dieser Objekte zufällig generiert wurden. Bei der Durchführung der Analyse eliminiert das System die temporären Dateien aus der Auswahl, da ein solches Verhalten charakteristisch für temporäre Systemdateien ist. Um diese Eliminierung zu implementieren, verwendet das System die Verlinkungsdaten und Dateierstellungsdaten von dem Computer des Benutzers wie folgt:
- • Wenn sich die Datei nicht in einem temporären Verzeichnis befindet und oft unterschiedliche Namen hat, wird dieses Verhalten als verdächtig eingestuft.
- • Unabhängig von dem Verzeichnis, in dem sich die Datei befindet, wird es ebenfalls als verdächtig eingestuft, wenn der Verlinkungsstatus der Datei „kürzlich verlinkt“ ist. Das Verlinkungsdatum ist das Datum, an dem eine exe-Datei aus einer obj-Datei erstellt wurde. Das Verlinkungsdatum ist eine Aufzeichnung in dem Dateikopf, und das Antivirus-Programm sammelt diese Information aus dem Dateikopf und leitet sie an das KSN weiter.
- 5) Die Datei ist ausführbar, hat aber eine „maskierende“ Erweiterung oder gar keine Erweiterung. Es gibt eine Vielzahl schädlicher Programme, die mit nicht ausführbaren Dateierweiterungen wie jpg, bmp, avi, mp3, doc, xls, txt, css usw. oder ganz ohne Erweiterungen auf verschiedenen Hosts platziert werden. Selbst wenn die Firewall des Benutzers eingeschaltet ist, generiert sie keinen Alarm, während einige Programme ein „Bild“ oder „Musik“ herunterladen. Einige Hosting-Dienste verbieten das Hochladen ausführbarer Dateien, und die beschriebenen Tricks zur Maskierung der Dateierweiterung werden verwendet, um diese Restriktionen zu umgehen.
- 6) Ein schädliches Objekt trägt einen Namen einer Windows-Systemdatei (zum Beispiel explorer.exe), ist aber nicht aus dem Ordner gestartet worden, der sich in dem Betriebssystem befinden soll.
-
Ähnliche Kriterien wurden für andere Arten von Objekten entwickelt, die das System analysiert. Alle gefährlichen Ereignisse werden zur weiteren Analyse an das System weitergeleitet. Anschließend verwendet das System einen Entscheidungsbaum, um eine Entscheidung bezüglich der nachfolgenden automatischen Erfassung des Objekts zu treffen.
-
Die Informationen über Ereignisse mit hoher Aktivitätsstufe, aber niedriger Gefahrenstufe wird zur Analyse an den Whitelist-Dienst weitergeleitet, um die Daten zu ergänzen, die in der Wissensdatenbank über saubere Objekte gespeichert sind. Wenn sie sich auf der Whitelist befinden, kann das bedeuten, dass die Quelle der Software oder die Art der Software so ist, dass sie wahrscheinlich keinen Virus enthält, so dass keine weiteren Prüfungen nötig sind; in diesem Fall kann der Rest des Antivirus-Scans auf die einfachere Variante beschränkt werden. Wenn die Software weder auf der Blacklist noch auf der Whitelist steht, sollte dem Benutzer empfohlen werden, einen Scan mit allen verfügbaren Techniken durchzuführen.
-
Wenn sie sich auf einer Blacklist befindet, bedeutet das andererseits, dass die neu heruntergeladene Software mit relativ hoher Wahrscheinlichkeit einen Virus enthält, entweder weil die Quelle der Software a priori als Quelle von Schadsoftware bekannt ist, oder weil diese Software früher oft infiziert war, oder aus anderen Gründen.
-
Das System führt kontinuierlich eine Effizienzeinschätzung aller von ihm verwendeten Risikobeurteilungskriterien durch. Die Genauigkeit der Risikobeurteilungskriterien wird anhand der zuvor durchgeführten Risikobeurteilung und empirischen Auswertung der erreichten Genauigkeit dynamisch angepasst. Andere Techniken, die während der Risikoanalyse und -beurteilung verwendet werden, sind verschiedene heuristische Erfassungsalgorithmen, statistische Analyse und Erstellung und Auswertung von kombinierten Risikobeurteilungskriterien. Die Entscheidungen des DSS-Systems werden regelmäßig in einer multidimensionalen Datenbank zur Einschätzung der Effizienz jedes dieser Kriterien verarbeitet (welchen dieser Kriterien sollte stärker vertraut werden, welche dieser Kriterien brauchen korrigierende Einstellungen usw.) Dieses Verarbeiten und verschiedene Datenströme, die durch die Hauptkomponenten des Systems zirkulieren, was die Rückkopplung illustriert, die immer zwischen den Daten in einem Strom von Ereignissen und den Daten in dem Expertensystem (Inferenzmaschine) aufrechterhalten wird, sind in 6 gezeigt. Der Rohdatenstrom 602, der von den Benutzern durch die Schutzmodule 601 gesammelt wird, wird zu der Echtzeit-Verarbeitungsdatenbank 603 geleitet. Die verarbeiteten statistischen Informationen 605 werden an die Verzögerte-Analyse-Datenbank 604 geleitet. Die Verzögerte-Analyse-Datenbank 604 leitet die zusätzlichen Informationsverarbeitungskriterien 606 und die korrekten Informationen 607 an die Echtzeit-Verarbeitungsdatenbank 603 zurück.
-
Es existiert ein bidirektionaler Informationsfluss (Ströme 608 und 609) zwischen der Echtzeit-Verarbeitungsdatenbank 603 und dem Whitelist-Dienst 610. Die Informationen über unbekannte schädliche Objekte 613 werden von der Echtzeit-Verarbeitungsdatenbank 603 an das Erfassungssystem 612 weitergeleitet. Das Erfassungssystem 612 führt eine automatische Informationsverarbeitung oder die Dienste menschlicher Analysefachleute (Analysten) durch, um die Informationen zu verarbeiten, die über die unbekannten schädlichen Objekte 613 empfangen werden. Die resultierende Einschätzung der Wirksamkeit der Kriterien (Strom 611) wird an die Verzögerte-Analyse-Datenbank 604 weitergeleitet, um ihre Verarbeitungskapazitäten zu erhöhen. Das Erfassungssystem 612 leitet die Aufzeichnungen (Strom 614) erfasster Bedrohungen an die Antivirus-Aufzeichnungs-Datenbank 615 weiter. Von der Antivirus-Aufzeichnungs-Datenbank 615 (Blacklist-Dienst) werden die Antivirusmodul-Aufzeichnungen 616 an die Schutzmodule 601 weitergeleitet. Falsche Positive eines gegebenen Kriteriums werden als Rückmeldung zur Verbesserung des Systems verwendet und führen zu einer Reduzierung der relativen Signifikanz eines Kriteriums, das viele falsche Positive generiert.
-
Die Wissensdatenbanken erzeugen auch zusätzliche Informationen, die bei den komplexen kombinierten Kriterien verwendet werden, beispielsweise für eine antizipatorische (vorausschauende) Suche nach schädlichen Internetressourcen.
-
Die obenstehenden Beispiele zeigen deutlich, wie die Erfindung die Nachteile des bestehenden Stands der Technik umgeht. Die existierende Antivirus-Software analysiert den Inhalt schädlicher Software, nachdem der Schaden bereits entstanden ist, oder nachdem die Schadsoftware identifiziert wurde und zu einer bekannten Bedrohung geworden ist. Stunden oder Tage können von dem Zeitpunkt vergehen, an dem die Schadsoftware freigegeben wird, bis Fachleute eine Chance haben, eine Datei zu erhalten, ihren Inhalt zu analysieren, ein Gegenmittel zu erzeugen, um sie von bereits infizierten Computern zu entfernen, und dieses an Benutzer zu verteilen, um noch nicht infizierte Computer zu schützen. Während dieser Zeit kann sich das schädliche Programm auf Millionen von Computern weltweit verbreiten.
-
Andererseits führt das vorgeschlagene System eine Erfassung unbekannter Bedrohungen automatisch und in Echtzeit durch, aufgrund bestimmter Informationen über ausführbare Dateien (wie Herkunft, Dateiname, Dateierweiterung(en), Dateigröße usw.), Internetressourcen (wie Lebensdauer, Aktivität usw.) oder verwandte Ereignisse. Das System identifiziert die unbekannten Bedrohungen nicht nur anhand der Inhalte der Datei, sondern auch auf der Grundlage statistischer Informationen, die von Millionen von Benutzern gesammelt werden. Es ist zu beachten, dass das KSN keine privaten Informationen über den Benutzer sammelt, gemäß den Bestimmungen der Nutzungsvereinbarung.
-
Sobald eine Datei zu der Blacklist hinzugefügt wurde, beginnt die auf dem Computer des Benutzers installierte Antivirus-Software, das Objekt als schädlich zu erfassen und den Computer des Benutzers vor diesem schädlichen Objekt zu schützen. Der Benutzer wird von dem Antivirus-Programm benachrichtigt, dass schädliche Software erfasst wurde. Die Antivirus-Software blockiert auch den Zugang des Benutzers zu Domains und URLs, die auf die Blacklist gesetzt wurden. Bezüglich Domains berechnet das System auch einen Parameter mit Namen „Reputation“, der einem Benutzer einen Grad der Gefahr zeigt, die dem Zugriff auf eine gegebene Internetressource zugeordnet wird.
-
Das erfindungsgemäße System ist zu einer mehrstufigen Analyse fähig. Einige Dateien, Ereignisse und Ressourcen werden als Ergebnis der automatischen Maschinenanalyse auf die Whitelist und die Blacklist gesetzt. Die übrigen Dateien können während der nachfolgenden Analyse der zweiten Stufe mit Hilfe eines menschlichen Analysten, seines Wissens und seiner Erfahrung analysiert werden. Das Ergebnis der menschlichen Analyse wird zu der Expertensystem-Wissensdatenbank hinzugefügt, die Whitelists und Blacklists unterhält, und die Maschinenanalyse und die menschliche Analyse können zusammenwirken und einander ergänzen, um die Genauigkeit der Erfassung unbekannter Bedrohungen zu verbessern.
-
Es ist klar, dass andere Formen der Erfassung für verschiedene andere Arten von Viren ebenfalls in Betracht gezogen werden. Beispielsweise können Viren mit verzögerter Aktivierung nicht nur anhand des Verhaltens erfasst werden, sondern auch anhand ihres Standorts in dem System, des Vorhandenseins einer digitalen Signatur, des Vorhandenseins einer Verpackung usw. Für solche Fälle kann der DS-Graph korrigiert werden, falls erforderlich.
-
Sobald ein Objekt auf die Blacklist gesetzt wurde, wird es anschließend von verschiedenen Antivirus-/Antispam-/Antischadsoftware-Programmen als schädlich erkannt und kann entfernt oder blockiert werden (im Fall einer URL). Der Benutzer kann über die Entdeckung eines schädlichen Objekts auf seinem Computer informiert werden. Allgemein ist eines der Ziele, die Zahl der korrekten Erfassungen von schädlichen Objekten zu erhöhen und die Zeit zu reduzieren, die zur Erkennung schädlicher Objekte benötigt wird.
-
Wie in 7 gezeigt, umfasst ein beispielhaftes System zum Implementieren der Erfindung eine Mehrzweck-Recheneinrichtung in Form eines Personalcomputers oder Servers 20 oder Ähnlichem, umfassend eine Verarbeitungseinheit 21, einen Systemspeicher 22 und einen Systembus 23, der verschiedene Systemkomponenten miteinander verbindet, darunter den Systemspeicher mit der Verarbeitungseinheit 21. Der Systembus 23 kann eine von mehreren Arten von Busstrukturen sein, darunter ein Speicherbus oder ein Speicher-Controller, ein Peripheriebus und ein lokaler Bus, wobei eine beliebige aus einer Vielzahl von Busarchitekturen verwendet wird. Der Systemspeicher umfasst einen permanenten Speicher (ROM) 24 und einen Arbeitsspeicher (RAM) 25. Ein Eingabe-/Ausgabesystem 26 (BIOS), das die Grundroutinen enthält, die helfen, Informationen zwischen den Elementen innerhalb des Personalcomputers 20 zu übertragen, beispielsweise beim Hochfahren, ist in dem ROM 24 gespeichert.
-
Der Personalcomputer 20 kann weiterhin ein Festplattenlaufwerk 27 zum Lesen aus und Schreiben auf einer Festplatte, nicht gezeigt, ein Magnetplattenlaufwerk 28 zum Lesen aus oder Schreiben auf einer entfernbaren Magnetplatte 29 sowie ein optisches Laufwerk 30 zum Lesen aus oder Schreiben auf einer entfernbaren optischen Platte 31 wie einer CD-ROM, DVD-ROM oder anderen optischen Medien umfassen. Das Festplattenlaufwerk 27, das Magnetplattenlaufwerk 28 und das optische Laufwerk 30 sind jeweils über eine Festplattenschnittstelle 32, eine Magnetplattenschnittstelle 33 und eine Schnittstelle 34 des optischen Laufwerks mit dem Systembus 23 verbunden. Die Laufwerke und die damit zusammenhängenden computerlesbaren Medien bieten eine nichtflüchtige Speicherung von computerlesbaren Instruktionen, Datenstrukturen, Programmmodulen/Subroutinen, wobei jeder der oben beschriebenen Schritte ein separates Modul sein kann oder mehrere Schritte zu einem einzigen Modul zusammengefasst sein können, und anderen Daten für den Personalcomputer 20. Obgleich die hier beschriebene beispielhafte Umgebung eine Festplatte, eine entfernbare Magnetplatte 29 und eine entfernbare optische Platte 31 verwendet, wird dem Fachmann klar sein, dass andere Arten computerlesbarer Medien, die Daten speichern können, auf die ein Computer Zugriff hat, wie Magnetcassetten, Flash-Speicherkarten, digitale Videoplatten, Bernoulli-Laufwerke, Arbeitsspeicher (RAMs), permanente Speicher (ROMs) und Ähnliches auch in der beispielhaften Betriebsumgebung verwendet werden können.
-
Mehrere Programmmodule können auf der Festplatte, einer Magnetplatte 29, einer optischen Platte 31, einem ROM 24 oder einem RAM 25 gespeichert sein, darunter ein Betriebssystem 35. Der Computer 20 umfasst ein Dateisystem 36, das mit dem Betriebssystem 35 in Verbindung steht oder von diesem umfasst wird, ein oder mehrere Anwendungsprogramme 37, andere Programmmodule 38 und Programmdaten 39. Ein Benutzer kann durch Eingabeeinrichtungen wie eine Tastatur 40 und eine Zeigereinrichtung 42 Befehle und Informationen in den Personalcomputer 20 eingeben. Andere Eingabeeinrichtungen (nicht gezeigt) können ein Mikrofon, einen Joystick, eine Spielkonsole, eine Satellitenschüssel, einen Scanner oder Ähnliches umfassen. Diese und andere Eingabeeinrichtungen sind oft über eine serielle Schnittstelle 46, die mit dem Systembus verbunden ist, mit der Verarbeitungseinheit 21 verbunden, und können durch andere Schnittstellen wie einen parallelen Port, einen Gameport oder einen universellen seriellen Bus (USB) verbunden sein. Ein Monitor 47 oder eine andere Art Anzeigeeinrichtung ist ebenfalls über eine Schnittstelle wie einen Videoadapter 48 mit dem Systembus 23 verbunden. Zusätzlich zu dem Monitor 47 umfassen Personalcomputer typischerweise andere periphere Ausgabeeinrichtungen (nicht gezeigt), wie Lautsprecher und Drucker.
-
Der Personalcomputer 20 kann in einer vernetzten Umgebung operieren und logische Verbindungen zu einem oder mehreren entfernten Computern 49 nutzen. Der entfernte Computer (oder die entfernten Computer) 49 kann durch einen anderen Personalcomputer, einen Server, einen Router, einen Netzwerk-PC, ein Partnergerät oder einen anderen üblichen Netzwerkknoten repräsentiert sein und umfasst viele oder alle Elemente, die mit Bezug auf den Personalcomputer 20 beschrieben wurden, obwohl nur eine Speichereinrichtung 50 dargestellt ist. Die logischen Verbindungen umfassen ein lokales Netzwerk (LAN) 51 und ein Weitverkehrs-Netzwerk (WAN) 52. Solche Netzwerkumgebungen sind üblich in Büros, unternehmensweiten Computernetzwerken, Intranets und dem Internet.
-
Wenn er in einer LAN-Netzwerkumgebung verwendet wird, ist der Personalcomputer 20 durch eine Netzwerkschnittstelle oder einen Adapter 53 an das lokale Netzwerk 51 angeschlossen. In einer WAN-Netzwerkumgebung umfasst der Personalcomputer 20 typischerweise ein Modem 54 oder andere Mittel zum Herstellen von Kommunikation über ein Weitverkehrs-Netzwerk 52 wie das Internet. Das Modem 54, das entweder intern oder extern sein kann, ist über die serielle Schnittstelle 46 mit dem Systembus 23 verbunden. In einer vernetzten Umgebung können die Programmmodule, die mit Bezug auf den Personalcomputer 20 dargestellt sind, oder Abschnitte davon in der entfernten Speichereinrichtung gespeichert sein. Es ist klar, dass die gezeigten Netzwerkverbindungen beispielhaft sind und andere Mittel zum Herstellen einer Kommunikationsverbindung zwischen den Computern verwendet werden können.
-
Nach dieser Beschreibung einer bevorzugten Ausführungsform wird dem Fachmann klar sein, dass bestimmte Vorteile der beschriebenen Vorrichtung erzielt werden können.
-
Das erfindungsgemäße System zum Erfassen unbekannter Schadsoftware kann in den folgenden Verfahren angewandt werden:
- a) Computerimplementiertes Verfahren zum Erfassen unbekannter Schadsoftware, wobei das Verfahren umfasst:
- (aa) Empfangen von Metadaten-Informationen über Dateien, die auf einem entfernten Computer ausgeführt werden, und Informationen über Ausführungsereignisse der Dateien, einschließlich Informationen über an den Dateien durchgeführte Aktionen;
- (bb) Herausfiltern bekannter Metadaten-Informationen und bekannter Informationen über Ereignisse auf der Grundlage von Informationen, die in Whitelist- und Blacklist-Wissensdatenbanken gespeichert sind;
gekennzeichnet durch
- (cc) Bestimmen einer Aufrufabfolge der Dateien auf der Grundlage der Informationen über Ereignisse der Dateiausführung, einschließlich wenigstens von Ereignissen des Herunterladens, des Ablegens, der Verlinkung und des Aufrufs von Dateien;
- (dd) Konstruieren einer Eltern-Kind-Hierarchie auf der Grundlage der Aufrufabfolge der Dateien, wobei die Eltern-Kind-Hierarchie Eltern-Kind-Beziehungen zwischen den Dateien beschreibt;
- (ee) Durchführen einer Risikoanalyse der Dateien auf der Grundlage der empfangenen, nicht gefilterten Informationen und wenigstens teilweise auf der Grundlage eines der folgenden Kriterien: Statistik der Ausführungsereignisse jeder Datei, Namensstabilität der Dateiquelle, Adressstabilität der Dateiquelle, Aktivität der Datei und ein Verhaltensmuster der Datei;
- (ff) Durchführen einer Risikoanalyse der Dateien auf der Grundlage der Eltern-Kind-Hierarchie, um eine Gefahrenstufe der verwandten Dateien zu bestimmen, wobei ein Risiko, das einer Eltern-Datei zugeordnet wird, wenigstens teilweise auf dem Risiko beruht, das einer oder mehreren Kinder-Dateien der Eltern-Datei zugeordnet wird; und (gg) Bestimmen, ob die Dateien schädlich sind, auf der Grundlage der Risikoanalyse und Risikobeurteilung, wobei die Risikoanalyse einer Datei auf der Berechnung einer Aktivitätssufe der Datei („Aktivitäts“-Parameter), einer Gefahrenstufe der Datei („Gefahr“-Parameter) und einer Signifikanz für die Datei („Signifikanz“-Parameter) beruht, wobei der Signifikanz-Parameter als Signifikanz = (Aktivität · Gefahr) berechnet wird, und wobei der Gefahr-Parameter auf der Grundlage eines Entscheidungsbaums von Gewichtskoeffizienten berechnet wird, der für die bei der Risikoanalyse der Datei verwendeten Kriterien aufgebaut wird.
- b) Verfahren nach Absatz a), wobei die Risikobeurteilung weiterhin das Aggregieren von Werten der berechneten Kriterien umfasst, um zu bestimmen, ob das Risiko der Datei hoch, mittel oder niedrig ist.
- c) Verfahren nach Absatz a), wobei das Durchführen der Risikobeurteilung einer Datei weiterhin das Bestimmen eines Verhältnisses von sauberen zu schädlichen Programmen, die die Datei aufruft, umfasst.
- d) Verfahren nach Absatz a), wobei eine Mehrheit der Gewichtskoeffizienten sich dynamisch ändert, abhängig von den akkumulierten Informationen in den Wissensdatenbanken.
- e) Verfahren nach Absatz a), wobei die folgenden weiteren Kriterien verwendet werden: Maskieren eines Namens, Maskieren einer Dateierweiterung, Fehlen einer Dateierweiterung, und/oder Syntax des Dateinamens.
- f) Verfahren nach Absatz a), wobei der Aktivitäts-Parameter auf der Grundlage einer Zahl von Downloads oder einer Zahl von Malen, die eine gegebene Datei über einen bestimmten Zeitraum aufgerufen wird, berechnet wird.
- g) Verfahren nach Absatz f), wobei der Aktivitäts-Parameter als Aktivität = Treffer · F(Δt) berechnet wird, wobei Treffer eine Zahl von Datei-Downloads, Programmstarts und versuchten Angriffen aus dem Netz ist, F eine Wahrscheinlichkeitsverteilungsfunktion ist und Δt der Zeitraum seit dem Auftreten eines letzten Ereignisses der Datei ist.
- h) Verfahren nach Absatz a), wobei der Gewichts-Entscheidungsbaum durch Hinzufügen neuer Kriterien erweiterbar ist, wobei ein maximales Gewicht eines Kriteriums, das einem Baumknoten einer höheren Ebene zugeordnet ist, nicht durch Gewichte hinzugefügter Kriterien in niedrigeren Baumknoten-Ebenen verändert wird.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- US 7152164 B1 [0004]
- US 2008/0027891 A1 [0005]
- US 6016546 [0006]
- US 6338141 [0007]