Seit Mitte 2015 soll durch ein neues IT-Sicherheitsgesetz eine signifikante Verbesserung der IT-Security in deutschen Unternehmen erreicht werden. Dieses soll Betreiber „kritischer Infrastrukturen“ ein Mindestmaß an IT-Sicherheit vorgeben und damit weitreichende gesellschaftliche Folgen durch Ausfälle oder Beeinträchtigungen vermeiden. Unter „kritischen Infrastrukturen“ werden Einrichtungen und Anlagen aus den Bereichen Energie, Informationstechnik und Telekommunikation, Transport und Verkehr, Gesundheit, Wasser, Ernährung sowie Finanz- und Versicherungswesen verstanden, bei deren Ausfall oder Beeinträchtigung erhebliche Versorgungsengpässe oder Gefährdungen für die öffentliche Sicherheit eintreten würden. Diese Unternehmen müssen nun außerdem Sicherheitsvorfälle dem Bundesamt für Sicherheit in der Informationstechnik (BSI) melden.
Doch wie kann ich all diesen Anforderungen noch Herr werden? Wie kann ich einen Mittelweg zwischen Security und Performance finden? Ich zeige Ihnen heute, wie Sie hier einen wichtigen Schritt weiterkommen können.
Anti-Malware Scanning früher und heute
Malware und Viren sind nicht erst seit 2015 ein Problem für Unternehmen. Lösungen zum Erkennen sowie zum Entfernen dieser gibt es mittlerweile wie Sand am Meer. Allerdings hatten diese Lösungen allesamt die gleichen Probleme:
- Performancebeeinträchtigung: Anti-Malware Agenten verbrauchen oftmals durchaus erwähnenswerte Teile des Arbeitsspeichers oder des Prozessors. Neben diesen offensichtlichen Werten verzögert sich durch die Real-Time Scans auch das Schreiben von Dateien, was besonders beim Schreiben vieler kleiner Dateien auffällt. Auch das Verteilen von Pattern Updates kann eklatante Auswirkungen auf Storage und Netzwerk haben
- Administrationsaufkommen: Bevor der eigentliche Schutz eines Servers beginnen kann, muss zuerst der Agent installiert werden. Dies wird in vielen Unternehmen zwar oftmals zentral über eine Softwareverteilung erledigt, allerdings muss auch diese konfiguriert und gepflegt werden
Diese Probleme fallen besonders in virtuellen Server- und Desktopumgebungen auf. So flexibel die darunterliegenden Lösungen sind, so unflexibel ist oftmals der Virenscanner. Werden beispielsweise zu einer bestimmten Uhrzeit die Pattern Updates aller virtuellen Maschinen verteilt, kann dies extreme Auswirkungen auf das gemeinsame Storage haben. Zwar schreibt jeder Endpunkt nur ca. 60 – 120 MB auf dessen virtuelle Festplatte, die Summe der IO Last ist allerdings eklatant. Eine weitere Problemstellung ist der Betrieb von „Stateless Virtual Desktops“, die sich nach jedem Neustart der virtuellen Maschine auf einen definierten Zustand zurücksetzen. Somit gehen natürlich auch alle Sicherheitsupdates des Anti-Malware Agenten verloren und müssen jedes Mal wieder verteilt werden.
Seit einigen Jahren ist es nun möglich diese Vorgänge ohne die Installation eines Agenten innerhalb der virtuellen Maschine zu tätigen.
Im nächsten Abschnitt werde ich diese Technologien erklären, Mythen widerlegen und Einschränkungen dieser Lösungen präsentieren.
Funktionsweise
Anti-Malware Scanning in virtuellen Umgebungen ohne Agent ist derzeit eine Technologie, die ausschließlich unter VMware vSphere verfügbar ist. Andere Hypervisor wie Hyper-V oder XenServer bieten Stand heute keine Schnittstellen für diese Vorgänge. VMware bietet hier nur die Schnittstellen, für das eigentliche Scanning ist immer der Einsatz eines Malware Scanners notwendig. In unseren Beispielen verwenden wir die Lösung Deep Security aus dem Hause Trend Micro.
vShield Endpoint
Durch den Einsatz von vShield Endpoint wird Herstellern seit einigen Jahren das agentenlose Malware Scanning ermöglicht. vShield Endpoint ist kostenlos für jede lizenzierte Version von ESXi verfügbar und wird mit Hilfe des vShield Managers auf jedem Host installiert. Der vShield Manager ist als virtuelle Appliance verfügbar und kann jederzeit problemlos installiert werden.
Wie ist nun möglich durch den vShield Endpoint am ESXi Host Viren innerhalb einer virtuellen Maschine zu erkennen und zu bereinigen? Normalerweise ist es innerhalb einer Vollvirtualisierung nämlich nicht möglich, dass ein Hypervisor in eine virtuelle Maschine sehen kann und/oder die virtuelle Maschine weiß, dass sie virtualisiert wurde. Das Stichwort hier ist Virtual Machine Communication Interface (VMCI). Diese stellt eine Verbindung zwischen Kernel und Betriebssystem der virtuellen Maschine her. Diese Schnittstelle wurde nach einigen, allerdings unbegründeten, Sicherheitsbedenken vor einiger Zeit deaktiviert. Ein kleiner Teil dieser Schnittstelle lebt allerdings in Form der „Guest Introspection Driver“ weiter. Als „Scanner“ fungiert die Trend Micro Deep Security Virtual Appliance (DSVA). Hierbei handelt es sich um ein gehärtetes Cent-OS mit Anti-Malware Agent. Es gibt sie einmal pro ESXi Host.
Was passiert also beim Ablegen von Malware auf einem, durch Deep Security, geschützten System?
- Die Guest Introspection Driver innerhalb der virtuellen Maschine erkennen eine Schreibiteration und melden dies über den vShield Endpoint im Kernel an die DSVA. Dabei werden auch einige Metainformationen der geschriebenen Datei mitgesendet
- Die Appliance überprüft den eingebauten Cache auf bereits angewandte Scans. Sollte die Datei bereits untersucht worden sein, muss diese natürlich nicht noch einmal überprüft werden. Hier kann direkt das „OK“ oder die Anweisung zur Quarantäne des Files gesendet werden
- Wurde die Datei noch nicht überprüft, wird diese nun über den VMCI Kanal an die Appliance gesendet und getestet. Dieser Vorgang klingt langsam? Er ist es allerdings nicht. Denn durch die reine Kernelkommunikation der Komponenten passieren alle Schritte in Millisekunden und nicht sichtbar für das menschliche Auge. Nach dem Scannen wird wiederum entweder ein „OK“ oder das Verschieben in die Quarantäne angewiesen
- (Optional) Wurde ein Virus oder Malware entdeckt, wird das File in die Quarantäne gesendet. Die Quarantäne befindet sich hierbei auf der Appliance. Damit ist diese Datei komplett von der virtuellen Maschine entfernt
Einschränkungen
Natürlich hat diese agentenlose Variante des Virenscannings nicht nur Vorteile, sondern weist auch diverse Einschränkungen auf:
- Nur unter Windows verfügbar: Nur unter Windows Betriebssystemen kann ohne Agent Malware gefunden und bereinigt werden. Wieso? VMware bietet die Guest Introspection Driver leider nur unter Windows an
- Erkennung von Prozessviren: Da die Guest Introspection Driver nur reine Dateiiterationen erkennen können, ist es unmöglich Viren oder Malware zu erkennen, die sich bereits in einen Prozess eingenistet hat
- Verlust der Quarantäne bei vMotion: Wird eine virtuelle Maschine im Live-Betrieb von einem physikalischem Host auf den anderen verschoben, geht dessen Quarantäne unwiderruflich verloren. Die DSVA’s tauschen diese Daten über einen InterVM Channel der ESXi Hosts aus, dieser ist allerdings auf 2KB beschränkt
Die Einschränkungen sollten zwar immer bedacht werden, hindern Unternehmen allerdings in den wenigsten Fällen daran diese Lösung zu betreiben. Gute und ausgereifte Lösungen wie Trend Micro Deep Security beherrschen den Umgang mit Maschinen ohne Agent oder mit Agent. So ist es beispielsweise möglich einen physikalischen Server mit den gleichen Einstellungen und Security Policies wie die eines virtuellen Servers ohne Agenten auszustatten. Dies geschieht alles über eine zentrale Administrationsoberfläche, dem Deep Security Manager.
Sollte ich mit Hilfe dieses Artikels Ihren Geschmack getroffen und Ihr Interesse auf intelligente Security Systeme geweckt haben, lesen Sie doch auch meinen Artikel über agentenloses IPS/IDS Scanning. Bei Fragen oder Anregungen würden wir uns sehr über eine Nachricht freuen!