Network Access Control (NAC; deutsch Netzwerkzugangskontrolle) ist eine Technik, die die Abwehr von Viren, Würmern und unautorisierten Zugriffen aus dem Netzwerk heraus unterstützt. Mit NAC werden Endgeräte während der Authentifizierung auf Richtlinienkonformität geprüft. Ist z. B. der Virenscanner nicht aktuell oder fehlt dem Client-Betriebssystem der neueste Security-Patch, wird das betroffene Endgerät unter Quarantäne gestellt und mit aktuellen Updates versorgt, bis es wieder den geltenden Sicherheitsrichtlinien entspricht. Anfangs verteilten sich die dafür erforderlichen Funktionen auf Netzwerkkomponenten wie Router und Switches. Auf gehärteten Appliances können sämtliche Funktionalitäten auch gebündelt vorgehalten werden.
Aufgaben
Kernaufgaben sind: eindeutige Identifizierung und Rollenverteilung von Nutzern und Geräten Wahrung von erstellten Sicherheitsrichtlinien Quarantäne und automatische Wiederherstellung nichtkonformer Endgeräte Verwaltung und Erstellung individueller Richtlinien und Rollen für verschiedene Nutzergruppen
Anforderungen Network Access Control erfüllt grundlegend zwei Anforderungen:
Zum einen eine vollständige Übersicht, welche Geräte sich im (Unternehmens-)Netzwerk befinden und wo sie angeschlossen sind. Die Art der Endgeräte, wie Clients, Drucker, Produktionssysteme, Geldautomaten, medizinische Geräte, Tablets, Smartphones, Kühlschränke, Kaffeemaschinen etc. darf dabei keine Rolle spielen. Durch diese Übersicht wird verhindert, dass fremde oder unbekannte Systeme einfach durch Nutzen des WLAN oder einer freien Netzwerkdose Zugriff auf das (firmen-)interne Netzwerk bekommen. Dadurch können im Netzwerk nur noch eigene und dafür zugelassene Systeme betrieben werden.
Die zweite Anforderung stellt eine sogenannte Compliance-Funktion dar. Dies ist die Überprüfung, ob die Endgeräte, die sich bereits im Netzwerk befinden, den Sicherheitsanforderungen oder den Sicherheitsrichtlinien des Unternehmens entsprechen. Das betrifft in der Regel Eigenschaften wie die vorhandene Installation und den Status eines Antivirenprogramms oder einer Desktop-Firewall, ob neueste Patches installiert sind sowie nach Bedarf weitergehende Prüfungen auf vorhandene Patches für gängige Applikationen wie Firefox oder Adobe.
Ziel ist es, innerhalb des eigenen Netzwerkes nur Endgeräte und Software zu betreiben, die alle erwarteten Anforderungen erfüllen und damit der Sicherheitsrichtlinie entsprechen. Hält ein System der Überprüfung nicht stand, werden entsprechende Gegenmaßnahmen eingeleitet, dazu gehören Quarantäne und Heilung, i. d. R. durch Patches, oder eine Rekonfigurierung des Systems, bis hin zur Außerbetriebnahme.
Weiterhin gibt es Unterschiede in der Interpretation der zu überwachenden Netzwerkzugänge (LAN, WLAN, WAN). Zur Erfüllung dieser Anforderung gibt es diverse technische Ansätze und Umsetzungen sowie sowohl kommerzielle als auch Open Source Produkte.
Historie
Generell ist die Kontrolle der Netzwerkzugänge etwas, das seit der Existenz von ebendiesen Zugängen thematisiert wird. Dabei gab es Ansätze und Produkte, die mehr oder weniger erfolgreich waren. Heterogene Netzwerkinfrastrukturen, unzureichende Netzwerkabdeckungen, hohe Komplexität und hohe Kosten sind die häufigsten Gründe für fehlgeschlagene Ansätze. Der größte Teil der Unternehmen hat dafür noch keine Lösung. Ergänzend gibt es keine klare Definition des Begriffes „Network-Access-Control“, so dass die damit verbundenen Angebote ebenfalls stark variieren. Weitere Begriffe, die ebenfalls zu Verwirrungen beigetragen haben, da sie prinzipiell das gleiche Thema betreffen, sind unter anderen „Network-Admission-Protokoll“ (NAP), „Network-Admission-Control“ (NAC).
Technologien
IP-basiertes Netzwerkscannen
Bei dieser Technologie wird das Netzwerk nach verwendeten IP-Adressen gescannt, indem die Adressräume gepingt werden oder die ARP-Caches der Router ausgelesen werden. Dadurch erkannte Endgeräte werden dann in der Regel durch weitere Scans genauer identifiziert, um zu überprüfen, ob es sich um bekannte und zugelassene Geräte handelt.
Werden fremde Geräte erkannt, so werden diese durch verschiedene Technologien in der Kommunikation gestört oder zum Beispiel auf ein Gästeportal umgeleitet. Teilweise kommt dafür sogar ARP-Spoofing zum Einsatz, was eigentlich eher eine Angriffstechnologie ist.
Trafficanalyse mittels Gateway Appliances
Für die Trafficanalyse wurden von verschiedenen Herstellern Appliances geschaffen, die inline den Netzwerkverkehr überprüfen und dadurch auch jedes Gerät sehen, welches im Netzwerk kommuniziert. Datenpakete von unerwünschten Systemen können dabei einfach „gedropped“ werden, wodurch die Eindringlinge nicht mehr ungehindert im Netzwerk kommunizieren können. Problematisch dabei ist, dass diese Appliances überall im Netzwerk verteilt werden müssen, um jeden Teilbereich abdecken zu können. Das heißt, in jedem Subnetz muss ein Fühler stehen und den Traffic anschauen. Das macht diese Projekte in der Regel sehr aufwendig, komplex und vor allem sehr teuer, da je nach Größe des Unternehmens auch eine ganze Menge Geräte gekauft werden müssen. Die Überprüfung muss natürlich in Echtzeit geschehen, da sonst ein Flaschenhals erzeugt wird, der die Kommunikation im Netzwerk bremst und damit das tägliche Arbeiten stört. Eine weitere Schwachstelle dieser Technologie ist, dass Eindringlinge, die nur lauschen und dementsprechend keine Datenpakete versenden, nicht erkannt werden. Spionieren durch einfache Lauschangriffe ist also weiterhin uneingeschränkt möglich.
Selbst jedoch, wenn überall entsprechende Appliances verteilt wurden, gibt es Bereiche, die nicht erfasst werden können. Die Geräte, die an einem Switch hängen, können in der Regel miteinander kommunizieren, ohne dass der Datenverkehr durch eine NAC-Appliance läuft. Damit sind zumindest die direkten Nachbarn angreifbar und auch ausnutzbar, um von diesen Geräten aus ins weitere Netzwerk vorzudringen.
Agentenbasiert
Hier wird auf allen Endgeräten ein Agent installiert der dafür sorgt, dass die Endgeräte sich im Netzwerk gegen einen zentralen Dienst authentifizieren können und damit nur die entsprechend gemanagten Endgeräte (verschlüsselt) miteinander kommunizieren können. Fremde Systeme können sich also nicht direkt mit firmeneigenen Geräten verbinden. Die große Herausforderung bei diesem Ansatz ist es jedoch, Agenten für die vielen verschiedenen Betriebssysteme bereitzustellen und so das ganze Netzwerk abzudecken.
Neben proprietären Ansätzen zählt in diese Kategorie aber auch der Standard IEEE 802.1X, der unter anderem darauf baut, bereits vom Betriebssystem mitgelieferte Agenten (Supplikanten) zu verwenden. Dennoch ist auch hier die vollständige Abdeckung aller Netzwerkteilnehmer in der Regel nicht gewährleistet – vor allem ältere Endgeräte und Switches unterstützen diese Funktion häufig nicht.
802.1X ist in einem eigenen Artikel umfänglich beschrieben – der Vollständigkeit halber soll an dieser Stelle jedoch erwähnt werden, dass es sich um einen proaktiven Ansatz handelt. Wird ein Gerät mit einem Switch oder Access-Point verbunden, muss es sich mit einem geeigneten Ausweis (z. B. Benutzername & Passwort oder ein Zertifikat) authentifizieren. Der Switch oder Access-Point wiederum lässt die Gültigkeit des Ausweises durch einen RADIUS-Server überprüfen, der neben einem „Accept“ oder „Deny“ auch diverse andere Regeln als Antwort übermitteln kann, wie zugeordnete VLANs oder ACLs. Die Komplexität besteht hier vor allem in der Administration des RADIUS-Servers sowie der Identitäten.
Switchbasiert
In der Regel wird dafür das Protokoll SNMP verwendet, welches die Möglichkeit bietet, mit nahezu allen Switches zu kommunizieren, da fast jeder Hersteller von Business Switches dieses Protokoll unterstützt. Je nach Bedarf können aber z. B. auch SSH oder andere (möglichst verschlüsselte) Protokolle zum Einsatz kommen.
Über diese Kommunikation kann als erstes ein vollständiger Netzwerküberblick ermittelt werden, unabhängig von der Netzwerkgröße. Jedes Gerät, das an einem Switch Port angeschlossen ist und kommuniziert, wird erkannt. Sobald ein neues Gerät verbunden wird, informiert entweder der Switch das NAC-System aktiv über einen Trap oder das NAC-System fragt regelmäßig den Switch nach den aktuell angeschlossenen Geräten.
Die Identifizierung der Geräte erfolgt dabei über die MAC-Adresse, weshalb dieser Ansatz oft auch „MAC-based NAC“ genannt wird. Durch die Pflege einer Whitelist kann definiert werden, welche Geräte im Unternehmensnetzwerk zugelassen sind und welche nicht. Über den gleichen Kommunikationsweg wie die Erkennung kann so auch ein Switch einen Befehl von dem NAC-System erhalten und einen Netzwerk-Port umkonfigurieren. Wird also ein fremdes oder unerwünschtes System angeschlossen und entsprechend erkannt, kann z. B. der Netzwerk-Port automatisch abgeschaltet werden – das Gerät verliert sofort die Netzwerkverbindung – physikalisch!
Mit dem Reifen dieser Technologie wurden nach und nach mehr verschiedene Möglichkeiten in den Switches geschaffen, die einige Vorteile bringen. Selbst in kleinsten Netzwerken werden heutzutage bereits VLANs eingesetzt. Die virtuellen Netzwerke bieten eine komfortable Möglichkeit, das Netzwerk unabhängig von der physikalischen Struktur zu segmentieren.
Da auch die Konfiguration der VLANs an den Switches vorgenommen wird, ist es eine naheliegende Erweiterung von Network Access Control, Netzwerkports nicht nur sperren, sondern auch umleiten zu können. Fremde Systeme müssen damit nicht mehr vollständig vom Netzwerk getrennt werden, sondern können in einen separaten Gästebereich umgeschaltet werden, in dem z. B. nur Internet angeboten wird.
Problematisch bleibt, dass die MAC-Adresse sehr leicht fälschbar ist. Ein Eindringling kann sich jede beliebige Adresse aussuchen – sie beispielsweise vom Drucker abschreiben und eintippen um Netzwerkzugang zu erlangen.
Aus diesem Grund gehen einige professionelle Lösungen noch einige Schritte weiter und vergleichen viele weitere Systemeigenschaften, wie die IP-Adresse, den Hostnamen, das Betriebssystem oder offene und geschlossene Ports. Im Resultat bedeutet das, dass ein Eindringling nicht nur die MAC-Adresse fälschen muss, um Zugang zu erlangen, sondern auch all die anderen Eigenschaften. Weichen Teile der Eigenschaften ab, so kann das NAC-System entsprechend Alarm auslösen.
Neben dem Sicherheitsaspekt kann auf diese Weise auch ein komfortables Management der VLANs etabliert werden, indem je Port immer automatisch das zum Endgeräte gehörende VLAN konfiguriert wird. Jeder Mitarbeiter hat demzufolge, egal wo er sich anschließt, immer seine gewohnte Umgebung und seine benötigten Ressourcen zur Verfügung.
Identitäten
Bei der Kontrolle der Netzwerkzugänge geht es prinzipiell darum, die Identitäten der Netzwerkteilnehmer festzustellen und zu verwalten und entsprechend Zugang zu gewähren oder zu verweigern. Dabei müssen Geräteidentitäten und Benutzeridentitäten unterschieden werden, da die Netzwerkszugangskontrolle im ersten Schritt endgeräteorientiert ist. Die Kontrolle der Benutzer wiederum erfolgt innerhalb des Netzwerkes durch andere Systeme, wie das Berechtigungssystem im Active Directory oder anderen Verzeichnisdiensten.
Dennoch sind auch das Active Directory oder grundsätzlich LDAP Dienste eine beliebte Identitätsquelle, die auch für die Netzwerkzugangskontrolle herangezogen werden können. Folgende Einschränkungen gibt es dabei: Die reine Betrachtung der Geräte aus dem Active Directory ist relativ einfach und in der Regel zur Vereinfachung der Pflege auch sinnvoll. Zu beachten ist aber, dass die Definition, welche AD-Geräte-Gruppen in welches Netzwerksegment bzw. VLAN gesteuert werden sollen, gut geplant und strukturiert sein muss, damit Änderungen an der einen oder anderen Seite keine Schwierigkeiten verursachen.