Leitung: quapona technologies (QTE)
Ziele: Instrumentierung der Programme durch VM-Trapping und Injektion. Aufbau einer generischen Sensor-Bibliothek. Aufbau der Hardware zur Unterstützung des IDS. Weiterentwicklung einer kleinen Trusted Computing Base (TCB).
Methodik:
Es wird ein Hardware-Software-Co-Design angestrebt. Dabei werden die folgenden Methoden zur Integration und Qualitätssteigerung genutzt.
- Entwicklung einer modularen, architekturunabhängigen Virtual-Machine-Manager (VMM) Infrastruktur und EXPLOIDS-spezifische Module (auf das Forschungsvorhaben bezogen), z. B. für Introspektion, Watchdogs, Debugging, Code Injection, Gast-OS- spezifische Analyse
- Einsatz testgetriebener Entwicklung (TDD), FPGA-Prototyping und HW-SW-Co- Simulatoren, um Software sowie Hardware zielführend und mit hohen Güte und parallel entwickeln zu können.
- Untersuchung und Erweiterung des Virtual Machine Monitors hin zu einem Instrumentierten Virtual Machine Monitors (iVMM)
- Entwickeln von Treiberkomponenten für L4 und Linux, um die Hardware anzusprechen.
T2.1 Erweiterung L4 VMM
- Basis iVMM und API: Konzeption, Spezifikation / Header der API, Break-Point basierte Instrumentierungsfähigkeiten, Entwicklung der Client- und Sensor API
- Hooking iVMM: Hooking-basierte Instrumentierungsfähigkeit, Adaption der Linux Hardware-Driver
- Snap-Shot und optimierte iVMM: Implementierung Snap-Shot Funktionalität, Geschwindigkeitsanalyse und Optimierung
T2.2 Anwendungssensorik
- Initialer Anwendungssensor: Identifizierung relevanter Anwendungen, Identifizierung relevanter Anwendungsabläufe und Daten, Entwicklung von Grundfunktionalitäten der Datenerhebung
- Gesichertes Sensorframework: Erweiterung um iVMM Schnittstelle, IntegritätssicherungderSensoren,VerschlüsselungderSensordaten
- Sensorbibliothek: Implementierung weiterer Sensoren,Evaluation und Optimierung
T2.3 Gastsystemsensorik
- Systemdaemon: Konzeption, Grundgerüst des Linux-Kernelmoduls, Erhebung von Basis-Systemkernelsensoren, Userspace Daemon zum Erheben von Systemverhalten
- Injizierter Systemdaemon: Erhebung erweiterten Systemkernelressourcen, Umsetzung von Laderfunktionalität über iVMM
- Gesicherter IDS Systemdaemon; Verschlüsselung und Härtung der Sensorik, Evaluation und Optimierung
T2.4 IDS Client
- Basisclient: Konzeption, Implementierung Grundgerüst, Implementierung Hypervisor-Schnittstelle, Implementierung der RPC-Schnittstelle, Implementierung Injektionslogik
- Integrierter Client: Implementierung der Adress- und Adressraumdecodierung, Implementierung der Datenabholung, Evaluation und Optimierung
- Robuste- und optimierte Injects: Implementierung eines Inject-Loader / Interpreter, Implementierung ASLR-sensitiver Injects, Implementierung Patch-sensitiver Injects, Evaluation und Optimierung
T2.5 IDS Hardware
- Basis Hardware: Konzeption, Umsetzung Schnittstellen (PCIe / Ethernet), Umsetzung Netzwerkkommunikation
- Systemintegrierte Hardware: Erweiterung um DMA Sensorik, Linux Treiber, Integritätssicherung der Sensoren
- IDS Hardware: Verschlüsselung der Sensordaten, Evaluation und Optimierung