Das Hochsicherheits-Windows
AppLocker & SRP: Profi-Schutz für alle
Es erhöht den Schutz vor Schadsoftware enorm, wenn Windows nur noch jene Programme ausführen darf, die Sie zuvor ausdrücklich erlaubt haben. Was dafür nötig ist, haben alle Windows-Editionen von Home bis Enterprise von Haus aus an Bord. c’t-Werkzeuge helfen beim Einrichten.
Schadsoftware aller Art stellt auch heute noch eine ständige Gefahr für Windows-Nutzer dar, und das, obwohl sich Microsoft seit Jahren bemüht, daran etwas zu ändern. Mit dem Defender bringt Windows einen eigenen Virenscanner mit, der mit der Konkurrenz locker mithält (und zudem nicht mit Werbung nervt). Doch eines gilt für ihn genauso wie für jeden anderen: Sobald er nur ein einziges Mal daneben liegt und eine Schadsoftware fälschlich als harmlos einstuft, wird Windows trotzdem infiziert. Das Arbeiten ohne Administratorrechte hilft ebenfalls nicht in allen Fällen weiter, denn das Installieren von Software klappt an manchen Stellen auch ohne, etwa im Nutzerverzeichnis im versteckten Verzeichnis „C:\Benutzer\<Kontoname>\Appdata“. Microsoft könnte das unterbinden, nutzt solche Tricks aber lieber selbst, etwa beim Installieren von Teams.
Ganz anders funktioniert die Methode, die wir in dieser Ausgabe vorstellen: das „Whitelisting“. Verbieten Sie Windows das Ausführen sämtlicher Programme. Anschließend genehmigen Sie nur noch die Software, von deren Harmlosigkeit Sie überzeugt sind. Auf diese Weise spielt es plötzlich keine Rolle mehr, falls auf Ihrem Datenträger doch mal ein Virus in Form einer Datei landet: Windows verweigert deren Start und der enthaltene Programmcode bleibt inaktiv, kann also keinen Schaden anrichten.
Das Verfahren schützt aber nicht nur vor Schadsoftware: Damit können Admins verhindern, dass Mitarbeiter unerwünschte Software nachinstallieren oder portable Anwendungen nutzen, die ohne Installation auskommen. Das kann auch dann hilfreich sein, wenn Sie Windows-Rechner bei Verwandten, im Verein oder sonstwo betreuen. Es wäre nicht das erste Mal, dass bei PC-Problemen das Nachinstallieren von Software aus dubiosen Quellen die Wahrheit hinter der Behauptung „Ich hab nichts gemacht“ darstellt.
Erlaubnisliste
Der Name „Whitelisting“ kommt von „Weiße Liste“, also einer Erlaubnisliste, in der steht, welche Programme Windows ausführen darf. Die Einträge in der Liste heißen üblicherweise „Regeln“ oder „Richtlinien“, im englischen oft „Policies“. Falls Sie schon mit Firewall-Regeln zu tun hatten: Die Regeln der Erlaubnisliste funktionieren ähnlich.
Eine Regel bezieht sich letztlich immer auf eine ausführbare Datei. Gemeint ist damit, dass Sie nicht Programme wie „Mozilla Firefox“, „Libre Office“ oder „Baldurs’s Gate 2“ erlauben, sondern die jeweils im dazugehörigen Programmverzeichnis liegenden ausführbaren Dateien „firefox.exe“, „soffice.exe“ und „Baldur.exe“. Dateien, die ausführbaren Programmcode enthalten, haben Dateitypen wie .exe, .com, .msi, .cmd, .ps1, .bat, .vbs, .js und so weiter, streng genommen gehören auch Bibliotheken dazu (.dll, .ocx ...).
Dokumente hingegen werden nicht überwacht: Das Öffnen und Bearbeiten von Texten, Tabellen, Videos und so weiter bleibt also problemlos möglich – vorausgesetzt, die mit dem jeweiligen Dokumentendateityp verknüpfte Anwendung ist erlaubt, also beispielsweise das Office-Paket. Das bedeutet übrigens auch, dass von so einem Paket ausgeführte Makros ebenfalls erlaubt bleiben (was Sie aber üblicherweise in den Office-eigenen Einstellungen verbieten können).
Es gibt verschiedene Arten von Regeln. Damit sie sinnvoll greifen können, muss Windows eine ausführbare Datei sicher identifizieren, beispielsweise anhand ihrer Prüfsumme oder einem enthaltenen Zertifikat. Der Dateiname ist hingegen kein sicheres Erkennungsmerkmal, denn den könnte ein Schadprogramm leicht fälschen. Der Speicherort einer ausführbaren Datei kann dagegen durchaus als Ausweis gelten: In Ordnern, in denen der Anwender keine Schreibrechte genießt, kann er ja – egal, ob absichtlich oder versehentlich – auch keine unerwünschten Programme ablegen. Es gibt auch Regeln, die nur bestimmten Nutzern oder Nutzergruppen etwas erlauben.
Whitelisting taugt zugegebenermaßen keineswegs als alleiniger Schutz gegen alles. Das geht damit los, dass schon seit Jahren sehr ausgefeilte Schädlinge existieren, denen eine komplett dateilose Infektion gelingt [1]. So was ist heutzutage nicht mal mehr exotisch, doch immerhin: Sehr viele Schädlinge nisten sich auch heute noch als ausführbare Datei auf Windows-Rechnern ein, werden also durch Whitelisting blockiert. Wer jetzt einwendet, dass viele Viren statt als EXE-Datei doch beispielsweise via infizierten Makroviren und Website-Skripten auf dem PC landen: Stimmt, aber Makro, Skript & Co. haben für Schädlingsprogrammierer einen Nachteil. Sie werden nach einem Neustart des PCs nicht mehr ausgeführt. Daher richten sie oft gar nicht selbst den Schaden an, sondern laden stattdessen aus dem Netz eine ausführbare Datei nach und schreiben zudem einen Aufruf in die Registry, damit Windows diese Datei beim nächsten Hochfahren automatisch mitstartet. Whitelisting verhindert zwar nicht den Registy-Eintrag, blockiert aber den Aufruf der Datei.
Noch kurz zur Idee, statt einer Erlaubnis- eine Verbotsliste zu verwenden, also alles zu verbieten, von dem bekannt ist, dass es schadet: Das funktioniert bei Schadsoftware leider nicht, weil sie sich ständig ändert und anpasst. Eine Verbotsregel könnte also nur bekannte Viren aussperren, aber keine neuen Varianten.
Aufwandsabschätzung
Die Regeln der Erlaubnisliste können Pflege erfordern, doch wie viel genau, lässt sich nicht vorhersagen. Denn es hängt vom Zielrechner sowie dem Menschen davor ab. Kommen auf dem PC immer nur dieselben wenigen Programme zum Einsatz (Mail-Client, Browser, Skatspiel, fertig), gibt es nach der Ersteinrichtung nichts mehr zu tun. Wenn Sie hingegen ein neues Programm auf eine Art ausprobieren, die von den vorhandenen Regeln nicht abgedeckt ist, benötigen Sie eine neue Regel. Auch Skript- und Programmentwickler, bei denen das Überschreiben vorhandener ausführbarer Dateien zum Alltag gehört, müssen mit erhöhtem Aufwand rechnen.
Bedenken Sie, dass das Beseitigen eines Schädlings noch weit zeitraubender sein kann als die Pflege der Whitelist. Nach einer Infektion ist Windows gemäß der reinen Lehre sauber neu zu installieren und alle Daten sind aus den Backups wiederherzustellen. Das wird noch schlimmer, wenn sich das Backup in so einer Situation als nicht ausreichend aktuell oder gar als nicht vorhanden entpuppt – oder ebenfalls vom Schädling befallen wurde. Für Unternehmen kann das existenzbedrohend sein. Doch auch für Privatleute kommt es einer Katastrophe gleich, wenn beispielsweise die Abschlussarbeit oder die unwiederbringlichen Fotos vom Nachwuchs vernichtet wurden (unsere aktuelle „Checkliste Backup“ finden Sie in [2]).
Lauter Bordmittel
Windows bringt gleich mehrere Whitelisting-Bordmittel mit. Seit Windows XP sind die „Software Restriction Policies“ (SRPs) dabei. Für Windows 7 entwickelte Microsoft die SRPs weiter und nannte sie nun „AppLocker“ (intern als „SRPv2“ bezeichnet). Beide bieten dasselbe hohe Schutzniveau, der Unterschied liegt woanders: Die SRPs kennen weniger Regel-Arten als AppLocker. Zudem gelten SRPs auf einem einzelnen PC entweder für alle Konten mit eingeschränkten Rechten oder sogar für alle Nutzerkonten (dann gelten sie auch für Administratoren). Mit AppLocker können Sie auch Regeln für selbsterstellte Gruppen oder Nutzer definieren, Ausnahmen sind möglich (Beispielregel: Programm „Klassenchat.exe“ erlaubt für alle Mitglieder der Gruppe „Lehrkräfte“ außer Nutzer „Bernd“).
Gedacht sind beide Bordmittel für die teuren Windows-Editionen Pro und vor allem Enterprise. Admins verwalten sie in Firmen, Behörden & Co. mit Gruppenrichtlinien. Doch wir stellen Ihnen Werkzeuge zur Verfügung, mit denen Sie sowohl die SRPs als auch AppLocker viel einfacher nutzen können, und zwar unter allen Windows-Editionen – sogar unter Home.
Ein weiteres Bordmittel könnte auf den ersten Blick ebenfalls den Eindruck erwecken, als stecke hier eine Art Whitelisting dahinter: die Option „Nur Apps aus dem Store zulassen“. Klingt wie eine einfache Regel, funktioniert aber nicht [3].
Bei „Smart App Control“ handelt es sich zwar um Whitelisting [4]. Doch hierbei entscheiden nicht Sie, was Windows ausführen darf, sondern Microsoft, und Sie haben keine Chance, den Konzern zu überstimmen.
Echtes Whitelisting bekommen Sie hingegen mit dem Kiosk-Modus, allerdings kann Ihre Erlaubnisliste hier nur einen einzigen Eintrag enthalten. Für öffentlich zugängliche Computer kann das eine prima Sache sein [5], für einen produktiv genutzten Rechner taugt es nicht. Microsoft hat zwar mittlerweile einen „Multi-App-Kiosk“ angekündigt, der mehrere Anwendungen erlaubt, doch das ist im Wesentlichen auch bloß AppLocker.
Und los
Die nachfolgenden Artikel stellen SRPs und AppLocker mitsamt der jeweils von uns dafür entwickelten c’t-Werkzeuge vor. Doch bevor Sie nun loslegen: AppLocker ist wie erwähnt eine Weiterentwicklung der SRPs, unter der Haube nutzen beide dieselbe Systembibliothek (AppIdSvc.dll). Wenn Sie nun manche Regeln mit AppLocker und andere mit SRPs verwalten, führt das schnell zu Chaos und unerwarteten Erlebnissen. Unsere Empfehlung daher: Nutzen Sie entweder SRP oder AppLocker, aber nicht beide gemeinsam. Falls Sie beide erst mal ausprobieren wollen, empfehlen wir separate Testrechner oder virtuelle Maschinen [6].
Eines muss zudem noch deutlich gesagt werden: Für SRP und AppLocker gilt dasselbe wie für das restliche Betriebssystem und all Ihre Anwendungen. Es könnten jederzeit Sicherheitslücken darin entdeckt und ausgenutzt werden. Whitelisting darf also nur ein Baustein eines Sicherheitskonzepts sein. Sicherheits-Updates, Virenscanner, Firewall und so weiter bleiben unverzichtbar, Ihre persönlichen Daten gehören besser verschlüsselt [7], Passwörter sicher verwahrt [8] oder durch bessere Alternativen ersetzt [9] und, Sie wissen ja: kein Backup, kein Mitleid. Aber: Whitelisting dient nicht nur als ein Baustein von vielen, sondern kann in Ihrem Sicherheitskonzept eine zentrale Rolle einnehmen. (axv@ct.de)
SigCheck, SrpWatch: ct.de/yxcj