Viren

aus SecuPedia, der Plattform für Sicherheits-Informationen

Anzeige
Wechseln zu: Navigation, Suche
Malware.png

Mit diesen Begriff definiert man eine Kategorie von Software-Fremdkörpern, deren wesentliche Eigenschaft die Selbstreproduktion ist. Darunter versteht man die Fähigkeit, den eigenen Programmcode an andere Objekte (i.d.R. Programme oder Systemkomponenten) weiter zu geben - sie zu "infizieren". Abhängig von der Infektionsstrategie des Virus wird das zu infizierende Objekt dabei verändert oder auch zerstört (überschreibender Virus). Überschreibende Viren sind aber in der Minderzahl, da eine Infektion sofort ersichtlich wird, wenn ein infiziertes Programm nicht mehr funktioniert.

Von Computerviren, wie wir sie heute kennen, spricht man etwa seit 1986. In diesem Jahr tauchte der "Pakistani Brain" auf und infizierte den Boot-Sektor von MS-DOS-Systemen. In dieser Zeit war das Betriebssystem MS-DOS die bevorzugte "Arbeitsbasis" für Computerviren. Heute jedoch ist MS-DOS weitestgehend ausgestorben und die Viren haben sich Windows und UNIX zugewendet. Computerviren gibt es für alle gängigen Betriebssysteme. Generell gilt, je populärer ein Betriebssystem ist, um so mehr Viren gibt es dafür. War MS-DOS zu Beginn den Viren noch schutzlos ausgeliefert, ist in den heutigen Betriebssystemen bereits zum Schutz ein Sicherheitssystem implementiert. Basiskomponente zur Abwehr von Computerviren sind üblicherweise Virenscanner. Dabei handelt es sich um Programme, welche andere Programme und Systemobjekte (Boot-Bereich, Systemtabellen, Arbeitsspeicher ...) auf Computerviren hin durchsuchen. Zur Suche werden dabei vorgegebene Suchpattern (Bytefolgen) und typische Virus-Verhaltensmuster verwendet. Vereinzelt kommen auch noch Prüfsummenprogramme zum Einsatz, welche die Integrität des Betriebssystems überwachen und Alarm schlagen, sobald eine Datei/Systemkomponente verändert wurde.

Viren können in fast jeder Programmiersprache erstellt werden. Egal, ob C++, Assembler, Delphi, Pascal, Basic oder Pearl. Lediglich ein Zugriff auf Systemobjekte muss möglich sein. Auch Makro- und Scriptsprachen können zur Programmierung von Viren genutzt werden. Unsichtbar für den PC-Anwender tobt ein erbitterter Kampf zwischen den Virenschreibern und den Personen, die Anti-Viren-Programme erstellen. Um beispielsweise die Erkennung durch Virenscanner zu verhindern, werden Viren mit sog. Laufzeitpackern wie UPX komprimiert . Dies führt dazu, dass ein Virenscanner u.U. erst das komprimierte File entkomprimieren muss, um dann auf die Suche zu gehen. Werden neue bzw. wenig verbreitete Laufzeitpacker genutzt, kann dies die Entdeckung eines Virus verzögern - oder ganz verhindern.

Neben der eigentlichen Aufgabe der Selbstreproduktion verfügen Viren i.d.R. auch über weitere Funktionskomponenten wie z.B.:

  • Nutzlast (Löschen von Dateien, Verändern von Systemkomponenten ...)
  • Tarnung (Verstecken des Virus im System)
  • Monitoring (Überwachen und Abwehren von Angriffen auf den Virus)
  • Kommunikation (Rückmelden einer Infektion an den Virusautor)
  • Schadfunktion (Zerstören aller *.JPG-Bilddateien ...)

Zur Vermeidung von Virusinfektionen wird in erster Linie Antiviren-Software verwendet. Wichtig ist dabei, nicht nur den PC/Server zu schützen, sondern auch die Anwendungsebene. Die Mehrzahl aller Viren verbreiten sich heute als E-Mail-Anlage oder über WebPages. Daher müssen auch WWW-Zugriffe und E-Mails mit einem Antiviren-Produkt geschützt werden.

Kommt es zu einer Infektion, sollten Notfallpläne existieren, welche die einzelnen zu ergreifenden Schritte beschreiben. Mindestens folgende Punkte sollten abgehandelt werden:

  • Isolation des infizierten Systems (Verhindern weiter Ausbreitung)
  • Beweissicherung (Was ist geschehen)
  • Infektionsanalyse (Wie kam es zur Infektion)
  • Öffentlichkeitsarbeit (Wer muss worüber informiert werden)
  • Rekonstruktion (Wiederherstellen des Systems)
  • Reaktion (Beseitigen der Schwachstelle)

Bei der Rekonstruktion kann man die BERT-Methode anwenden:

[B] Booten des Systems von einer virenfreien System-CD
[E] Entfernen der infizierten Komponenten
[R] Restaurieren der gelöschten Komponenten durch virenfreie Objekte
[T] Testen auf Systemkonsistenz und Virenfreiheit

Sollte es sich bei dem geschädigten System um einen normalen PC handeln (mit zentraler Datenablage), wird i.d.R. der PC komplett neu aufgesetzt, da dies schneller und billiger ist.

Bei einer flächendeckenden Infektion (Outbreak) sollte man immer nach einem Plan vorgehen, um alle Eventualitäten zu berücksichtigen. Überhastetes oder kopfloses Agieren kann sonst den Schaden vergrößern.


Siehe übergeordnete Stichworte


Siehe auch



Diese Seite wurde zuletzt am 25. Oktober 2016 um 12:43 Uhr von Oliver Wege geändert. Basierend auf der Arbeit von Peter Hohl, Admin und Ralph Dombach.

Anzeigen