Die n.runs AG hat während ihrer Forschungstätigkeiten hunderte von Schwachstellen in AV Produkten gefunden. Diese ermöglichen zum einen Denial-of-Service-Attacken auf interne E-Mail Infrastrukturen, zum anderen kann Schadcode an der Sicherheitslösung vorbei ins Firmennetz geschleust und sogar Programmcode mit Hilfe der AV-Software auf den internen Servern ausgeführt werden.
Die Konsequenzen dieser Entdeckung und die Gründe, warum diese Fehler auch langfristig Bestand haben werden, wurden weltweit auf Sicherheitskonferenzen demonstriert, in Folge heftig in der Presse diskutiert, von anderen Sicherheits-Experten bestätigt.
Von den Schwachstellen ist jedes auf dem Markt befindliche AV-Programm mehrfach betroffen. Da diese Schwachstellen auf eine konzeptionelle Parsingschwäche der AV Software zurückzuführen sind, wird sich diese Problematik auch in der näheren Zukunft nicht bessern, sondern eher noch verschlimmern. Dies zeigen auch die unabhängigen Statistiken und Aussagen der Firma Secunia 
Auch die Anti-Virus Hersteller selber sind sich der Problematik bewusst, nach einer Befragung durch die Computerwoche antwortete Sophos : "Wir haben in unseren
Labors mit Hilfe unserer Honeypots
festgestellt, dass es vermehrt
Versuche gibt, den Virenscanner
auszuhebeln“, Symantec "Aber: Es ist Software!
Wenn ein Angreifer sich
hinsetzt und partout unser Produkt
verwenden will, um etwas
lahmzulegen, wird ihm das – wie
bei jeder anderen Software - irgendwann
gelingen“ und Kaspersky "So ärgerlich ein Rechnerabsturz
auch ist, wirklich gefährlich
ist die unbemerkte Infektion
mit einem Schädling". Die n.runs AG begegnet diesen Aussagen mit einer Architektur die den E-mail Schutz kompletiert und sogar alle Angriffe auf die Anti-Viren Software selbst unterbindet.
Bei der Inspektion des Programm-Codes zeigte sich, dass die ungewöhnliche Vielzahl von Lücken auf eine Kernfunktion der AV-Programme zurückzuführen ist – das Parsen von Dateiformaten. Die Parsing-Engine ist integraler Bestandteil eines jeden Virenscanners. Um binäre Dateiformate verstehen zu können, teilen Applikationen diese Datei wiederum in Blöcke und Strukturen auf. Hierbei werden Speicherblöcke reserviert und Daten aus der Datei in diese kopiert. Datenblöcke werden ohne Kontrolle des Inhaltes, oft auch ohne Kontrolle der Länge in den Speicher kopiert. Dies ist ein Vorgang, bei dem der Hersteller sich häufig auf Formatvorgaben (falls vorhanden) oder die Ergebnisse eigenen Reverse Engineerings verlässt.
Das Problem hierbei ist, dass die große Vielfalt von Formaten und Spezifikationen es fast unmöglich macht alle korrekt zu unterstützen.
AV-Software basiert in aller Regel darauf, dass die Einhaltung einer gewissen Vorgabe überprüft wird, in etwa die Konformität von Netzwerkkommunikation mit den Protokollrichtlinien oder die Freiheit von unerwünschten Inhalten in Datensätzen.
Damit ergibt sich für die AV-Software auch die Notwendigkeit, entsprechende zu überprüfende Daten genau zu analysieren, bevor die Entscheidung über ihre Konformität getroffen werden kann.
Bei der Vielzahl von zu überprüfenden Daten-Formaten bedeutet dies, dass die Analyse jedes einzelnen Formats wiederum eine potentielle Fehlerquelle darstellt. Dies ist insbesondere deshalb so, da diese Formate mitunter hochkomplex werden können und somit auch das Einlesen und Analysieren einen komplexen und somit fehleranfälligen Vorgang darstellt.
Generell kann gesagt werden: Je mehr Dateiformate ein Anti-Viren Scanner unterstützt desto größer ist die Wahrscheinlichkeit, dass dieser fehleranfällig ist.
Dabei hat Anti-Viren-Software ein ganz bestimmtes Ziel: Das Erkennen von möglichst vielen Schädlingen. Um dieses zu erreichen, müssen AV-Programme viele Dateiformate verstehen und verarbeiten. So unterstützte ein namhaftes AV Produkt 2006 rund 2000 Formate, 2007 waren es über 3000. Dies stellt nicht nur ein grosses Wachstum an Angriffsfläche dar, sondern auch ein grosses Wachstum an potentiellen Fehlerquellen - Zum Vergleich, die ZIP Archiv Formatspezifikation besitzt 61 Seiten und 19.357 Wörter.
Durch dieses massive Wachstum des ständig E-Mails verarbeitenden Parsing-Codes bietet sich eine enorme und ständig wachsende Angriffsfläche, die auch für anonyme, externe Angreifer zu erreichen ist. Die Angriffsfläche zu verkleinern und die Bedrohung in den Griff zu bekommen, ist mit herkömmlichen Mitteln und Architekturen kaum möglich.
Dazu kommt auch, dass die Qualität von AV-Software seit jeher an der Schnelligkeit der Reaktion auf neue Gefahren gemessen wird. Insbesondere dieser inhärente Druck wirkt sich negativ auf die Qualität des Programmcodes aus, da die Entwickler ständig unter Zeitdruck sind.
Anti-Viren Produkte laufen heutzutage auf fast jedem PC und Server. Jede dieser AV-Lösungen untersucht unentwegt E-Mails, Festplatten, Speicherbereiche oder Netzwerkverkehr. Insbesondere beim Mailverkehr ist dies risikobehaftet, da es sich bei E-Mails um Daten handelt, die ihren Ursprung oft außerhalb des vertrauenswürdigen, internen Bereichs haben. Denn E-Mails durchlaufen innerhalb eines Unternehmens in der Regel eine festgelegte Kette von Mailservern. Auf diesen wird oftmals Antivirus-Software verschiedener Hersteller in Reihe geschaltet, um die Erkennungsrate zu verbessern. Diese Tatsache vermag nicht zu überraschen - schließlich wird dies als „Best Practise“ empfohlen und oft fälschlicherweise als „Defense in Depth“ verstanden. Die Gefahr durch potentielle Schwachstellen in den Antiviren-Produkten selbst wächst jedoch proportional zur Anzahl der verwendeten AV-Lösungen.
Jede Antiviren-Software weist bei isolierter Betrachtung bereits potentiell Schwachstellen auf, in der Gesamtschau aller verwendeter Lösungen erhöht sich dadurch allerdings die Gesamtangriffsfläche und die Wahrscheinlichkeit für einen erfolgreichen Angriff steigt massiv an. Es wird paradoxerweise nicht schwieriger, sondern einfacher für einen Angreifer, je mehr Anti-Viren-Software im Einsatz ist.
Findet der Angreifer nur einen einzigen Fehler in der Parsing-Engine einer der benutzen Virenscanner, kann er diesen ausnutzen , um die Kontrolle über den Server zu erlangen, den die E-Mail gerade durchläuft. Dieser Server kann im Herzen des Unternehmens stehen und dem Angreifer Zugriff auf alle Daten des Mailservers geben. Oft befindet sich auf diesem die gesamte elektronische Kommunikation des Unternehmens. Außerdem kann der Angreifer den Zugriff nutzen um sich Zugang zu anderen Segmenten des Netzes zu verschaffen und Trust Relationships auszunutzen.
Sicherheits-Software ist oftmals genau dort in einem Unternehmensnetzwerk platziert, wo die kritischen Daten abgelegt sind, da genau diese geschützt werden sollen. Die Schutzsoftware selbst muss oft mit hohen Zugriffsrechten laufen. Damit ergeben sich höchst attraktive Angriffsziele.
Findet der Angreifer nur einen einzigen Fehler in der Parsing Engine der jeweiligen Anti-Virus-Software, kann er dies dazu nutzen, die Kontrolle über den Mailserver zu erlangen, den die E-Mail gerade durchläuft, indem er zum Beispiel eine E-Mail mit einem präpariertem ZIP Anhang verschickt. Ein externer Angreifer kann diverse Manipulationen an jenen internen Systemen vornehmen, auf denen sich Antivirussoftware im Einsatz befindet :

Abb.1 Vereinfachtes Angriffsszenario - AV Schwachstellen auf ein Firmennetz übertragen
Da das Parsing als Erkennungsmechanismus bei der Bekämpfung digitaler Schädlinge jedoch unverzichtbar ist, sieht n.runs nur eine Möglichkeit : Eine weiterhin hohe Virenerkennungsrate durch herkömmliche AV-Programme, allerdings eingebettet in eine hochsichere Architektur, die unter anderem erfolgreiche Angriffe auf die gesamte AV-Infrastruktur verhindert.
Genau dies war das Ziel der von n.runs-eigenen Entwicklung aps-AV, die bisher unter dem Codenamen "ParsingSafe" bekannt ist : Unter Einbindung der beim Anwender-Unternehmen etablierten AV-Hersteller als Technologiepartner wird Hochsicherheit und -verfügbarkeit sowie Investitionsschutz gewährleistet, indem die bestehenden Virenschutzlösungen weiter genutzt werden können.
Der Aufbau der aps-AV-Lösung folgt den Design-Paradigmen eines BSL-4 Virenlabors, wobei Kontroll-, Abschottungs- und Vernichtungsmechanismen nachgebildet werden. Gemeinsam mit AV-Anbietern als Technologiepartnern will die n.runs AG damit Funktionalität, Hochverfügbarkeit und Sicherheit der AV-Lösungen gewährleisten und die Kontrollübernahme z. B. des Mailservers oder der dahinter liegenden Clients verhindern. Dazu unterstützt die Lösung Mail-Systeme wie SMTP-Mailer, Lotus Notes und Exchange.
Die aps-AV Umgebung folgt ebenfalls dem „Defense in Depth“ Designprinzip, nur wird in diesem Fall als Angriffsziel auch die Anti-Virus-Software selbst betrachtet. Um hier eine Umgebung wie in einen „Klasse 4“ Virenlabor zu errichten, unterteilt sich die Architektur in drei Schutzzonen: Dem Front-End, die Distribution und den Execution Bereich. Die drei Schutzzonen der Sicherheitsarchitektur werden wie in der Abbildung dargestellt über Firewalls (Paketfilter) separiert. Die Kommunikation der verschiedenen Systeme über diese Sicherheitsschichten hinweg erfolgt lediglich über ein speziell für die Sicherheitsbedürfnisse der Architektur entwickeltes Protokoll.
Das Systemdesign basiert hierbei nicht auf unmittelbaren Vertrauensbeziehungen. Alle Daten werden derartig kryptographisch gesichert übertragen, dass nur die für den Betrieb der Lösung notwendigen Daten übertragen werden können.
Bei der Implementierung wurde strikt dafür Sorge getragen die Daten, welche zu den AV-Scannern übertragen werden, zu keiner Zeit zu inspizieren. Ein Parsing der Daten findet nicht statt.

Abb. 2 : aps-AV 3-Tier Architektur
aps-AV zeichnet sich durch eine hochsichere Architektur aus, die in enger Zusammenarbeit mit Felix ('FX') Lindner entwickelt wurde. Die Architektur gewährleistet eine sichere, einfache und flexible Integration in existierende Infrastrukturen. Da die potentiell schädlichen Daten nicht geparsed, inspiziert oder sonst wie interpretiert werden, bevor sie in die abgeschottete Analyse-Umgebung gelangen, bleiben selbst erfolgreiche parsing-spezifische Angriffe auf benachbarte Systeme und Netzwerke ohne Auswirkungen.
Die zu untersuchenden Daten werden dabei von aps-AV weder auf bekannte Viren-Signaturen hin inspiziert noch sonst wie durch Parsing interpretiert, bevor sie in die abgesicherte Ausführungsumgebung gelangen. Erst im Execution Environment, das zusätzlich zu dem gehärteten Hochsicherheitsbetriebssystem über keinerlei Netzwerkschnittstellen verfügt, kommen demnach die verwundbaren AV-Engines zum Zug und überprüfen den Mail-Anhang auf Schadcode. Bei Feststellung einer Anomalie bei der Untersuchung wird die abgeschottete Umgebung samt dem Betriebsystem komplett gelöscht und der Vorgang als Angriff auf das AV-Produkt markiert.
Die Distribution Engine gibt dem Mail-Server dann entweder grünes Licht oder veranlasst das Blockieren der E-Mail; zusätzlich wird der Vorfall zentral geloggt und gemeldet.
Um Angriffe auf aps-AV selbst zu verhindern, ist dieses vollständig im überprüfbaren, typensicheren C# entwickelt und die Angriffsfläche der aps-AV Lösung selbst auf ein absolutes Minimum reduziert. Zudem sind sämtliche Prozesse innerhalb der 3-Tier-Architektur gegeneinander in beide Richtungen authentifiziert und die Kommunikation zwischen den drei Kernkomponenten durch Signaturen und ein spezielles Mehrwegeprotokoll abgesichert. Während der Implementierung wurden kein unsicherer Code produziert (unsafe code) und auch keine unsicheren Methoden oder Bibliotheken (p/Invoke) verwendet.

 |
aps-AV erhöht den Schutz gegen Viren und Malware durch die Verwendung mehrerer kundenspezifischer Anti-Virus Engines.
|
 |
aps-AV schützt indirekt alle im Unternehmen eingesetzten AV-Systeme vor bekannten und unbekannten Angriffen von Aussen. |
 |
aps-AV erhöht die Gesamtsicherheit durch Abschotten der Anti-Virus-Engines gleich einem BSL-4 Virenlabor |
 |
aps-AV enthält eine Gesamtüberwachung durch zentralisierte Protokollierung, auch bei mehreren AV-Engines
|
 |
aps-AV schützt, anders als andere AV-Systeme, die mehrere AV Engines einsetzen, auch vor Angriffen auf die AV-Systeme selbst
|
 |
aps-AV passt sich modular und zukunfts- orientiert ihrem Unternehmen an |
 |
Aktualisierungen ohne Serviceunterbrechung im laufenden Betrieb |
 |
Definition unterschiedlicher AV-Richtlinien für verschiedene Datenquellen
|
|