Loading…
Thumbnail Image

From threats to solutions in data center networks

Thimmaraju, Kashyap

In this dissertation we adopt a threat model where the data center network infrastructure is potentially malicious. To describe practical threats and solutions related to malicious switches, we draw our attention to multi-tenant data center networks that i) consolidate control over the (hardware and software) switches to a logically centralized controller and ii) use virtualization techniques for multi-tenancy. Our extensive security analyses and evaluations of the design, specifications and systems of logically centralized data center network controllers reveals the following. Malicious switches can covertly bypass network-wide security policies and mechanisms via the controller. We identify three reasons for the existence of such covert channels: i) malicious switches share the logical controller, ii) lack of authentication and authorization of switches to the controller and iii) introduction of automation and programmability of the network. These channels can be reliable (TCP-based) and fast (10 Mbps). As a result malicious switches can launch several network-based attacks in the data center, e.g., to circumvent firewalls to access unauthorized data. Furthermore, our state transition and delay model of the switch- controller handshake allows us to design, implement and evaluate a covert timing channel that uses a frame-based transmission scheme for accurate and low bandwidth (20 bps) communication, e.g., to exfiltrate private keys. We also initiate the discussion of practical countermeasures, e.g., coupling TLS with the switch- controller handshake for authentication. Next, our security analysis of network virtualization architectures that use virtual switches—a key system for enforcing network isolation in multi-tenant data center networks—sheds light on the following. Increasing network functionality in the virtual switch coupled with co-locating it with the hypervisor and the lack of appropriate threat models among other reasons has resulted in an insecure design. An attacker can escape host and network virtualization and compromise the entire data center as a worm. By fuzzing the packet parser of a popular virtual switch (OvS), we discovered 3 exploitable memory corruption vulnerabilities. We use just one of them in a popular cloud management system (OpenStack) to demonstrate our point: From a virtual machine (VM) we could take down hundreds of servers in a few minutes. Our measurements of the impact of software-based countermeasures that could have prevented the discovered vulnerabilities from being exploited for OvS show that maximum packet processing throughput is reduced by half in the kernel whereas the overhead in user-space is minimal (1-15%). Finally, we continue our previous work by first surveying the security landscape of 23 virtual switches and conclude that nearly all of them lack security in their design. Hence, we introduce four secure design principles for virtual switches and accordingly build a scalable prototype that prevents the virtual switch from being a liability to the (multi-tenant) data center network. The key insights from our system and performance evaluations are as follows. We can isolate and scale the virtual switches and their respective virtual networks by placing them in containers in VMs. Using Single Root I/O Virtualization allows us to i) reduce the trusted computing base of virtual networking, ii) provide cloud operators an easy upgrade path and iii) increase the tenants’ network application (e.g., web servers and key-value stores) performance.
In dieser Dissertation nehmen wir ein Bedrohungsmodell an, bei dem die Netzwerkinfrastruktur eines Rechenzentrums potentiell bösartig ist. Zur eschreibung praktischer Bedrohungen und Lösungen im Zusammenhang mit böswilligen Switches, fokussieren wir uns auf Multi-Mandanten-Rechenzentrumsnetzwerke, i) bei denen die Kontrolle über die (Hard- und Software-) Switches einem (logisch) zentralisierten Controller unterliegt und ii) die Virtualisierungstechniken für Multi-Mandanten-Fähigkeit verwenden. Unsere umfangreichen Sicherheitsanalysen und Bewertungen des Designs, der Spezifikationen und der Systeme von Controllern für zentralisierte Rechenzentrumsnetzwerke zeigt, dass bösartige Switches die netzwerkweiten Sicherheitsrichtlinien und -mechanismen über den Controller verdeckt umgehen können. Wir identifizieren drei Gründe für die Existenz solcher verdeckten Kanäle. i) Der zentralisierte Controller wird von bösartige Switches mitbenutzt; ii) Switches benötigen keine Authentifizierung oder Autorisierung gegenüber dem Controller; sowie iii) die Einführung von Automatisierung und Programmierbarkeit des Netzwerks. Diese Kanäle können verlässlich (TCP-basiert) und schnell (10 Mbps) sein. Damit können bösartige Switches verschiedene netzwerkbasierte Angriffe im Rechenzentrum durchführen und beispielsweise zur Umgehung von Firewalls oder den unberechtigten Zugriff auf Daten benutzen. Darüber hinaus können wir mit Hilfe unseres Zustandsübergangs und Verzögerungsmodell des Switch-Controller-Handshakes einen verdeckten, Zeit-basierten Kommunikationskanal entwerfen, implementieren und evaluieren. Dieses Frame-basierte Übertragungsschema für bandbreitenarme (20 bps) Kommunikation mit niedriger Fehlerrate erlaubt es uns z.B. private Schlüssel zu exfiltrieren. Als Abwehrmaßnahme diskutieren wir unter anderem die Kopplung von TLS mit dem Switch-Controller-Handshake zur Authentifizierung. Eine weitere Schlüsseltechnologie zur Durchsetzung von virtuellen Netzwerk-Architekturen in Multi-Mandanten-Rechenzentrumsnetzwerken ist die Verwendung von virtuellen Switches. Unsere Sicherheitsanalyse dieser Architekturen zeigt, dass die Erhöhung der Funktionalität im virtuellen Switch in Verbindung mit der die Einbettung in den Hypervisor, das Fehlen geeigneter Bedrohungsmodelle neben anderen Gründen zu einem unsicheren Design geführt hat. Ein Angreifer kann der Host- und Netzwerkvirtualisierung entkommen und damit das gesamte Rechenzentrum als Wurm kompromittieren. Durch das Fuzzing des Paketparsers eines populären virtuellen Switch (OvS) entdeckten wir drei ausnutzbare Schwachstellen. Eine davon nutzen wir in einem beliebten Cloud-Management-System (OpenStack) um unseren Befund nachzuweisen: Von einer virtuellen Maschine (VM) aus könnten wir hunderte von Servern in wenigen Minuten kompromittieren. Unsere Messungen zeigen, dass die Auswirkungen von softwarebasierten Gegenmaßnahmen, die hätten verhindern können, dass die in OvS entdeckten Schwachstellen ausgenutzt werden können, den maximalen Paketdurchsatz im Kernel um die Hälfte reduzieren, während der Overhead im User Space minimal ist (1-15%). Abschließend bemerken wir dass in unserer Studie von 23 virtuellen Switches fast keiner Sicherheit als Design-Ziel verfolgt. Daher schlagen wir vier sichere Designprinzipien für virtuelle Switches vor und entwerfen einen skalierbaren Prototyp, der verhindert, dass der virtuelle Switch eine Gefahr für das Multi-Mandanten-Netzwerk darstellt. Die wichtigsten Erkenntnisse aus unseren System- und Leistungsbewertungen sind wie folgt. Wir können die virtuellen Switches und ihre jeweiligen virtuellen Netzwerke durch die Verwendung von VMs isolieren und skalieren. Die Verwendung von Single-Root-I/O- Virtualisierung ermöglicht es uns, i) die trusted computing base virtueller Netzwerke zu reduzieren, ii) Cloud-Betreibern eine einfachen Upgrade-Pfad zu bieten und iii) die Netzwerkdurchsatz der Mandanten-Maschinen zu erhöhen, beispielsweise für Webserver oder Key-Values-Datenbanken.