Vorbeugen ist besser als Nachsorge

20. Juli 2006, 9:40 Uhr | | Kommentar(e)

Proaktives Web-Filtern – Konventionelle Sicherheitstechniken wie Viren-Scanner reichen nicht mehr aus, um Angriffe zu unterbinden. Heute gilt es Viren, Würmer & Co. zu blocken, deren Eigenschaften noch unbekannt sind.

Die schlechte Nachricht zuerst: Weit über 100 000 verschiedene Varianten von Computerviren sind mittlerweile bekannt. Die Bedrohung wird zunehmend größer, da Viren immer häufiger und in zunehmend geringen Abständen nach dem Bekanntwerden einer Schwachstelle auftreten. Obwohl genügend Antivirus-Software und -Lösungen verfügbar sind, besteht der Gartner Group zufolge die Schwierigkeit darin, dass 90 Prozent der Cyberattacken bis Ende 2005 Sicherheitslücken ausnutzen werden, für die kein Patch existiert. Eine gezielte Verteidigung lässt sich schließlich nur aufbauen, wenn Angreifer und Ziele bekannt sind. Was benötigt wird, ist eine Methode zur Früherkennung und angemessene Verteidigungsmaßnahmen.

Die Antwort ist der neue Proaktive- Security-Ansatz. Proaktive-Security ist kein Ersatz für bestehende Sicherheitstechnologien, sondern ergänzt diese mit ausgefeilten, innovativen Erkennungsmechanismen. Die optimale »proaktive « Lösung soll sich von den IT-Administratoren mittels Konfiguration flexibel an die vorgegebenen Firmenrichtlinien anpassen lassen:

  • Sicherheitsrichtlinien bestehen auf Gruppen- oder Anwenderebene.
  • Proactive-Security-Filter können wahlweise für Web und/oder E-Mail aktiviert werden.
  • Sowohl eingehender als auch ausgehender Web- und/oder E-Mail-Verkehr inklusive aller ausführbarer Dateien und Skripte werden analysiert und gefiltert.
  • Proactive-Security-Filter können auf Objektebene definiert werden.
  • Aktionen sind vordefiniert und können um beliebige anwenderdefinierte Aktionen erweitert werden.
  • Die Möglichkeit zur Definition von hierarchischen Richtlinien mit Administratoren und Unteradministratoren erleichtert die Einhaltung der Sicherheitsrichtlinien in geographisch verteilten Organisationen mit Tochtergesellschaften an verschiedenen Standorten.
  • Einfache Definition von eigenen Sicherheitsrichtlinien oder Auswahl einer vordefinierten Policy.

Wie auch Virenscanner der Enterprise-Klasse wird die proaktive Lösung auf dem Gateway installiert und filtert allen eingehenden und ausgehenden Web- und E-Mail-Verkehr in bis zu vier Stufen.Die Dateien werden zuerst inspiziert und potentiell gefährliche Dateitypen wie Passwortgeschützte Archive oder bandbreitenintensive und produktivitätshemmende Inhalte wie Videos geblockt. Im nächsten Schritt werden digitale Signaturen geprüft und Objekte ohne oder mit ungültiger, beschädigter oder verfälschter Signatur verworfen. Anschließend wird der Programmcode heuristisch analysiert und bei potentiell schädlicher Wirkart aufgehalten. Im vierten und letzten Schritt werden verdächtige Scripte, die Schwachstellen auf dem Client ausnutzen wollen, neutralisiert.

Erkennungsmethoden im Einzelnen

Medientypfilter: Ein Media-Type-Filter scannt alle eingehenden und ausgehenden Objekte – sogar Archive, geschachtelt oder komprimiert – und identifiziert den zugehörigen Medientyp. Um ganz sicher zu gehen, werden nicht nur Datei-namenserweiterung und gemeldeter Mime- Type des Webservers evaluiert, sondern es erfolgt auch ein eingehender Scan der Byte-Muster. Somit ist eine Beeinflussung oder Fehlinterpretation ausgeschlossen.
Signaturchecker: Vor dem Ausführen eines Programms erlauben digitale Signaturen die Überprüfung des Autors und ob der Code manipuliert wurde oder nicht. Die Validierung digitaler Signaturen erlaubt die unternehmensweite Einführung von Sicherheitsrichtlinien zur Handhabung von ActiveX-Controls, Java-Applets, Win32-Executables and Win32-Dynamic-Link- Libraries. Sicherheitsrichtlinien sollen so eingestellt werden, dass nur Dateien von vertrauenswürdigen Quellen durchgelassen und ausgeführt werden können. Code ohne Signatur, mit manipulierter Signatur oder von nicht als vertrauenswürdig eingestuften Quellen,wird geblockt.
Proaktiver Scanner: Basierend auf einem umfangreichen Satz von Operationen wie Zugriff auf die Registry oder Netzwerkzugriff soll die detaillierte Anpassung und Limitierung der Rechte für ActiveX-Controls, Executables, Libraries, Applets sowie von Skripten möglich sein.

Es kann somit genau definiert werden, was erlaubt ist und was vom System unterbunden wird. Ein proaktiver Scanner gliedert sich in zwei Teile: heuristische Analyse und Erkennung der Ausnutzung von Schwachstellen (Exploit-Method- Detection). Die heuristische Analyse sucht nach für Schadcode typischen Instruktionen im gescannten Objekt und klassifiziert das Objekt an Hand einer Kombination der gefundenen Einzelklassifikationen.

Die Kombination der Einstufungskategorien wird auch »Verhaltensprofil « genannt. Im Gegensatz zu konventionellen Virenscannern, die gänzlich auf Muster- oder Prüfsummenerkennung beruhen, basiert diese Erkennungsart auf fundierten Annahmen und nicht auf Beweisen.Aus diesem Grund ist die Methode gegen gänzlich neue oder noch unbekannte Bedrohungen effektiv, die aber bekannte Verhaltensmuster und Funktionalitäten von Schadcode benutzen.

Der Code wird nach den benutzten Verhaltensmustern klassifiziert und diese werden dann gegen eine Regeldatenbank zur Erkennung von Schadcode verglichen. Alternativ erhalten einzelne Instruktionen auch eine Gewichtung und bei Überschreitung eines Grenzwertes wird das ganze Objekt geblockt. Als weitere Variante wird die Anzahl an Instruktionen einer Kategorie mit der Anzahl an Instruktionen anderer Kategorien in Relation gesetzt. Generell werden aber immer alle Instruktionen berücksichtigt und nicht nur diejenigen, die als potenziell schadhaft eingestuft sind. Dadurch kann ein versehentliches Blockieren von harmlosen Objekten – sogenannte False-Positives – ausgeschlossen werden.

Die Exploit-Method-Detection ist eine neue Technologie, bei der schon am Gateway Skripte darauf untersucht werden, ob sie Schwachstellen auf dem Client ansprechen. Auch wenn Skripte an sich nicht bösartig sind, so können sie doch als Türöffner operieren und Schadcode injizieren oder nachladen. Dabei werden auch Anti-Stealth-Technologien angewandt. Diese spüren Skriptcode auf, der absichtlich verschleiert wurde, um von normalen Virenscannern oder Anti-Spyware-Tools nicht erkannt zu werden.

Weitere Algorithmen scannen auf unterschiedliche Kodierungen und Verschlüsselungen sowie weitere programmatische Tricks zur Verschleierung.

Angriffspunkte bösartiger Mobile-Codes

Bösartiger Mobile-Code bezieht sich auf jeglichen Schadcode, der über das Internet oder E-Mail verbreitet werden kann. Auf Grund der Wandlungsfähigkeit des Codes können traditionelle Anti-Virus-Mechanismen nur schwer Angriffe erkennen und blockieren. Daher wird ein proaktiver Ansatz benötigt. Es folgt eine Übersicht einiger Angriffspunkte zur Penetration von Windows-Rechnern.

Das lokale File-System Es gibt eine Reihe von Initiatorskripten als Voraussetzung zum Zugriff auf die Festplatte oder verbundenen Netzwerkressourcen für ActiveX. Typische Beispiele sind »WScript.Shell« oder »Scripting.FileSystemObject ActiveX controls«. Die Kombination von Methoden wie »FileSystemObject « und »GetSpecialFolder« sind ein starker Hinweis auf Schadcode, der Zugriff auf das Dateisystem versucht und konsequenterweise eine deutlich höhere Wahrscheinlichkeitswertung bekommt.

Die Windows-Registry

Der Zugriff auf die Windows-Registry wird im Allgemeinen durch eines der oben erwähnten »ActiveX controls« initiiert. Finden sich während des Prüfvorganges am Gateway zusätzliche Aufrufe wie »RegRead()« oder »RegWrite()«, dann erhöht sich die Wahrscheinlichkeit für einen unbefugten Zugriff auf die Windows-Registry. Eine gute Filter-Lösung erkennt schon am Gateway zuverlässig alle Zugriffsversuche auf die Registry und blockt den Code bei Bedarf.

Netzwerkzugriff

Wenn mobiler Code wie Java, Javascript oder ActiveX versucht, auf das Netzwerk zuzugreifen, so kann dies ein Zeichen für Spyware,Adware oder sonstige Malware sein, die versucht Informationen an unbefugte Server zu übertragen.

Zugriff auf den Outlook-Client
Um auf Outlook zugreifen zu können, müssen Skripte das zugehörige »ActiveX control« instanzieren.

Als Beispiel dient hier die Replikationsroutine des VBS/Loveletter-Wurms, besser bekannt als »ILOVEYOU«. In diesem Fall wird der Windows-Scripting-Host missbraucht und die Wscript-Methode »CreateObject()«anstatt der globalen »CreateObject()«-Funktion benutzt.

Als nächstes wird die Messaging-API von Outlook angesprochen:
Set mapi = out.GetNameSpace (»MAPI«)
Beides deutet stark auf unberechtigten feindlichen Netzwerk- und Mailzugriff hin. Wenn dann noch die folgenden Zeilen gefunden werden:
male.Subject = »ILOVEYOU«
male.Body = vbCrLf & »kindly check the attached LOVELETTER coming from me.«
dann ist dies ein eindeutiger Hinweis auf den VBS/Loveletter.A Wurm.

Social-Engineering
Mit dem Auftreten des Melissa-Wurms wurde die Social-Engineering-Technik erstmals sehr erfolgreich angewandt,um Würmer schnell zu verbreiten.

Der Wurm versucht eine vertrauenswürdige Quelle vorzutäuschen, indem er die Absenderadresse manipuliert und den Inhalt der Mail glaubwürdig generiert.Zwar kann die letztere Methode (noch) nicht programmatisch erkannt werden, die Manipulation der Absenderadresse jedoch lässt sich leicht erfassen, da dies regelmäßig einfach durch Abarbeitung des Windows- Address-Book (WAB) auf dem infizierten Computer bewerkstelligt wird.

Dynamisches Laden oder Ausführen von Programmcode

Boshafte Skripte versuchen ihre wahre Absicht in der Regel durch willkürlich verschlüsselte Zeichenketten zu verbergen. Diese werden dann zur Laufzeit dynamisch entschlüsselt und mittels Methoden wie Javascripts »eval()«,VBScripts »Execute() «und des Internet-Explorer-DOMs »exec- Command()« sowie »execScript()« ausgeführt.

Visual-Basic-for-Applications-Makroviren

(VBA) wie »W97M/Melissa.A« verstecken den Schadcode vor Virenscannern, indem sie ihn zuerst verschleiern und dann in Office-Dokumente oder Templates injizieren.Früher oder später wird das neu erzeugte Makro ausgeführt, der Code wieder entschlüsselt und ausgeführt. Im Microsoft-Office-DOM ist die Codemodule-Eigenschaft verfügbar, um das VBA-Projekt eines Dokuments zu manipulieren.

Die pure Anwesenheit von Verschleierungstaktiken ist ein deutlicher Hinweis auf boshafte Absicht. In diesem Zusammenhang muss aber auch zwischen allgemein bekannten und unbekannten Verschlüsselungen unterschieden werden.

Verschleierung durch allgemein bekannte Kodierungs- und Verschlüsselungsmechanismen ist weit verbreitet und kann auch zu legitimen Zwecken verwendet werden.Viele als boshaft einzustufenden Webseiten nutzen den Microsoft- Script-Encoder, um ihre Skripte zu verschleiern. Da es sich hierbei um eine Kodierung und nicht um eine Verschlüsselung handelt, kann der ursprüngliche Inhalt durch Dekodierung leicht wieder hergestellt und analysiert werden.

Eine weitere weit verbreitete Kodierung ist das »URL Encoding«. Diese kann sehr einfach durch die entsprechenden »escape()/encodeURI() «- und »unescape()/decodeURI()«-Scriptmethoden erstellt und auch wieder aufgehoben werden.

Die Verschleierung durch spezielle – nicht öffentlich bekannte und gebräuchliche – Kodierungen wird im Allgemeinen in Würmern eingesetzt und als Verschlüsselung bezeichnet. Gebräuchliche Virenerstellungs-Toolkits unterstützen eine ganze Reihe von speziellen Verschlüsselungen.Polymorphe Viren und Würmer können sogar die Verschlüsselung von Generation zu Generation modifizieren.

Eine gute proaktive Content-Security-Lösung erkennt Entschlüsselungsalgorithmen und außergewöhnlich lange oder komplexe Stringvariablen vor »for«- oder »while«-Statements von Programmteilen, die diese Strings lesen, modifizieren und danach ausführen oder in externen Code injizieren.

Schwachstellen signierter ActiveX-Controls und Java-Applets

Ein ActiveX-Control ist ein ausführbares Programm, das automatisch über das Internet empfangen und typischerweise in der Umgebung des Browsers ausgeführt wird.ActiveX-Controls können in den verschiedensten Programmiersprachen erstellt werden und anschließend wahlweise digital signiert werden oder nicht. Das Vorhandensein einer digitalen Signatur erlaubt es dem Anwender die Identität des Autors zu verifizieren und sicher zu stellen, dass der Code seit der Erstellung nicht geändert wurde.

Boshafte ActiveX-Controls können sich sogar selbst zu der Liste vertrauenswürdiger Zertifikate einschmuggeln, ohne den Nutzer um Zustimmung zu fragen. Zertifikate können auch gestohlen werden, um eine falsche Identität vorzutäuschen.

Untersuchungen von Webwasher zufolge sind zwischen fünf und zehn Prozent der im Umlauf befindlichen Zertifikate ungültig.Abschließend kann gesagt werden, dass die grundlegende Methode, die ActiveX-Zertifikate an jedem Client zu akzeptieren, für Firmen ein nicht überschaubares Sicherheitsrisiko darstellt.

Ein Java-Applet ist ebenfalls ein Programm, das über das Internet empfangen und in der Browser-Umgebung ausgeführt wird.Der Autor kann das Applet digital signieren und wenn der Nutzer diese Signatur akzeptiert, wird der Autor in die Liste der vertrauenswürdigen Autoren aufgenommen. Jedes Applet von diesem Autor hat dann Schreib- und Lesezugriff auf das lokale Dateisystem und darf Netzwerkverbindungen herstellen.Boshaften Code in Java-Applets zu erstellen ist leider relativ einfach.Eine Lösung dieses Problems ist die zentrale Administration von Zertifikaten am Gateway und die Einführung einer globalen Sicherheitsrichtlinie, welchen Absendern vertraut wird oder nicht.

Fazit

Das Gefahrenpotential im Internet steigt ständig an. Immer wieder tauchen neue Viren und Würmer auf und bringen Computernetze zum Stillstand. Bei traditionellen Antiviren-Technologien müssen sie erst analysiert werden, bevor ein Virenschutz entwickelt und bereit gestellt werden kann. Dabei vergehen oft einige Stunden.

Weit verbreiteten Würmern wie Blaster,Mydoom oder Bagle genügten wenige Stunden, um weltweit Computer zu befallen. Proaktive Content- Filter – wie die der Webwasher-CSM-Suite – gehen anders vor: Sie analysieren Web und E-Mail- Verkehr auf Abweichungen, Objekte oder eine Kombination von Objekten und Code. Proaktives Filtern dient dabei als doppelter Boden zum konventionellen Scannen und hilft Viren zu blocken, deren Eigenschaften noch unbekannt sind.

In jüngster Vergangenheit hat die proaktive Filtertechnik bereits ihre Wirksamkeit bewiesen: So wurden JPEG-Buffer-Overflow-Vulnerability, der Internet-Explorer-Iframe-Tag-Exploit, Sober.I und die Java-VM-Vulnerability wirksam verhindert. Es ist beruhigend zu wissen, dass dank proaktivem Filtern ein sehr hoher Prozentsatz aller künftigen, heute noch unbekannten Attacken wirkungslos verpufft.

Roland Cuny,
Chief Technology Officer und Mitgründer von Webwasher, einem Unternehmen der Cyberguard


Matchmaker+