Zusammenfassung

Die Fernunterrichts- oder E-Learning-Plattform sollte ein virtuelles Labor bieten, in dem die Teilnehmer praktische Übungserfahrungen sammeln können, um ihre Fähigkeiten aus der Ferne zu üben. Insbesondere im Bereich Cybersicherheit E-Learning, wo die Teilnehmer in der Lage sein müssen, das IT-System anzugreifen oder zu verteidigen. Um eine praktische Übung durchzuführen, muss die virtuelle Laborumgebung der realen Betriebsumgebung ähnlich sein, in der ein Angriff oder ein Opfer durch einen Knoten in einer virtuellen Laborumgebung repräsentiert wird. Ein Knoten wird normalerweise durch eine virtuelle Maschine (VM) repräsentiert. Die Skalierbarkeit ist zu einem Hauptproblem des virtuellen Labors für E-Learning im Bereich Cybersicherheit geworden, da für eine VM eine erhebliche und feste Zuweisung von Ressourcen erforderlich ist. Die Verfügbare Ressourcen begrenzen die Anzahl der gleichzeitigen Benutzer. Die Skalierbarkeit kann erhöht werden, indem die verfügbaren Ressourcen effzienter genutzt und mehr Ressourcen bereitgestellt werden. Die Erhöhung der Skalierbarkeit bedeutet die Erhöhung der Anzahl gleichzeitiger Benutzer. In dieser Arbeit schlagen wir zwei Ansätze vor, um die Effzienz der Nutzung der verfügbaren Ressourcen zu erhöhen. Der erste Ansatz zur Erhöhung der Effzienz besteht darin, virtuelle Maschinen (VMs) durch Container zu ersetzen, wann immer dies möglich ist. Der zweite Ansatz besteht darin, die Last auf den Benutzer vor-ort-maschine zu verteilen, wobei der Benutzer vor-ort-maschine einen der Knoten in einem virtuellen Laborszenario repräsentiert. Wir schlagen auch zwei Ansätze vor, um mehr Ressourcen bereitzustellen. Eine Möglichkeit, mehr Ressourcen bereitzustellen, ist die Nutzung von Public Cloud Services. Eine andere Möglichkeit, mehr Ressourcen bereitzustellen, besteht darin, Ressourcen aus der Menge zu sammeln, die als Crowd-Resourcing Virtual Laboratory (CRVL) bezeichnet wird. In CRVL, kann die Menge ihre ungenutzten Ressourcen in Form einer VM, eines Bare-Metal-Systems, eines Accounts in einer Public Cloud, einer Private Cloud und einer isolierten Gruppe von VMs einbringen, aber in dieser Arbeit konzentrieren wir uns auf eine VM. Der Mitwirkende muss dem CRVL-System den Berechtigungsnachweis des VM-Administrators oder des Root-Benutzers geben. Wir schlagen eine Architektur und Methoden vor, um VMs automatisch in das CRVL-System zu integrieren oder daraus zu entfernen. Ein Team-Placement-Algorithmus muss ebenfalls untersucht werden, um die Ressourcennutzung zu optimieren und gleichzeitig den besten Service für den Benutzer zu bieten. Da das CRVL-System den Beitragsgeber-Hostcomputer nicht verwaltet, muss das CRVL-System in der Lage sein, sicherzustellen, dass die VM-Integration ihr System nicht beeinträchtigt und das Schulungsmaterial sicher auf den Beitragsgeberseiten aufbewahrt wird, damit niemand das Trainingsmaterial ohne Erlaubnis wegnehmen kann. Wir untersuchen Möglichkeiten, um mit dieser Art von Bedrohungen umzugehen. Wir schlagen drei Ansätze vor, um die VM von einem bösartigen Host Administrator zu stärken. Um die Integrität einer VM vor der Integration in das CRVL-System zu überprüfen, schlagen wir eine Remote-Veriffkationsmethode ohne zusätzliche Hardware wie den Trusted Platform Module-Chip vor. Als Besitzer des Host-Rechners können die Host-Administratoren über Random Access Memory (RAM) auf die Daten der VM zugreifen, indem sie Live Memory Dumping, Spectre- und Meltdown-Angriffe durchführen. Um es dem bösartigen Host- Administrator zu erschweren, die sensiblen Daten aus dem RAM zu erhalten, schlagen wir eine Methode vor, die kontinuierlich sensible Daten im RAM bewegt. Wir schlagen auch eine Methode zur Überwachung des Host-Rechners vor, indem ein Agent darauf installiert wird. Der Agent überwacht die Hypervisor-Konfigurationen und die Aktivitäten des Hostadministrators. Um unsere Ansätze zu bewerten, führen wir umfangreiche Experimente mit unterschiedlichen Einstellungen durch. Der Anwendungsfall in unserem Ansatz ist Tele-Lab, eine virtuelle Laborplattform für Cybersicherheit E-Learning. Wir nutzen diese Plattform als Grundlage für die Gestaltung und Entwicklung unserer Ansätze. Die Ergebnisse zeigen, dass unsere Ansätze praktisch sind und mehr Sicherheit bieten.

Abstract

Distance Education or e-Learning platform should be able to provide a virtual laboratory to let the participants have hands-on exercise experiences in practicing their skill remotely. Especially in Cybersecurity e-Learning where the participants need to be able to attack or defend the IT System. To have a hands-on exercise, the virtual laboratory environment must be similar to the real operational environment, where an attack or a victim is represented by a node in a virtual laboratory environment. A node is usually represented by a Virtual Machine (VM). Scalability has become a primary issue in the virtual laboratory for cybersecurity e-Learning because a VM needs a significant and fix allocation of resources. Available resources limit the number of simultaneous users. Scalability can be increased by increasing the efficiency of using available resources and by providing more resources. Increasing scalability means increasing the number of simultaneous users. In this thesis, we propose two approaches to increase the efficiency of using the available resources. The first approach in increasing efficiency is by replacing virtual machines (VMs) with containers whenever it is possible. The second approach is sharing the load with the user-on-premise machine, where the user-on-premise machine represents one of the nodes in a virtual laboratory scenario. We also propose two approaches in providing more resources. One way to provide more resources is by using public cloud services. Another way to provide more resources is by gathering resources from the crowd, which is referred to as Crowdresourcing Virtual Laboratory (CRVL). In CRVL, the crowd can contribute their unused resources in the form of a VM, a bare metal system, an account in a public cloud, a private cloud and an isolated group of VMs, but in this thesis, we focus on a VM. The contributor must give the credential of the VM admin or root user to the CRVL system. We propose an architecture and methods to integrate or dis-integrate VMs from the CRVL system automatically. A Team placement algorithm must also be investigated to optimize the usage of resources and at the same time giving the best service to the user. Because the CRVL system does not manage the contributor host machine, the CRVL system must be able to make sure that the VM integration will not harm their system and that the training material will be stored securely in the contributor sides, so that no one is able to take the training material away without permission. We are investigating ways to handle this kind of threats. We propose three approaches to strengthen the VM from a malicious host admin. To verify the integrity of a VM before integration to the CRVL system, we propose a remote verification method without using any additional hardware such as the Trusted Platform Module chip. As the owner of the host machine, the host admins could have access to the VM's data via Random Access Memory (RAM) by doing live memory dumping, Spectre and Meltdown attacks. To make it harder for the malicious host admin in getting the sensitive data from RAM, we propose a method that continually moves sensitive data in RAM. We also propose a method to monitor the host machine by installing an agent on it. The agent monitors the hypervisor configurations and the host admin activities. To evaluate our approaches, we conduct extensive experiments with different settings. The use case in our approach is Tele-Lab, a Virtual Laboratory platform for Cyber Security e-Learning. We use this platform as a basis for designing and developing our approaches. The results show that our approaches are practical and provides enhanced security.