Autonomous Cybersecurity Testbed
Motivation
Intelligente und autonome Sicherheitslösungen benötigen eine sichere Umgebung in der diese Lösungen evaluiert werden können. Das Autonomous Cybersecurity Testbed dient uns zur Evaluation von Sicherheitsanwendungen, dem Studium von Verhalten für Netzwerkanwendungen und der Analyse von Schad-Software. Wir setzen dabei auf eine Kombination aus realer Hardware, Container- und Virtualisierung-Technologien. Im Rahmen von laufenden und geplanten Forschungsprojekten wird das Testbed laufend erweitert und aktualisiert.
Zielsetzung
Für Forschung und Lehre im CC SEC und in Projekten des AC Cyber & Public Security ist es unabdingbar reproduzierbare und überprüfbare Testumgebungen und Experimente erstellen zu können. Das Autonomous CyberSecurity Testbed stellt hierzu einerseits die Hardware bereit und anderseits auch Werkzeuge um dies zu ermöglichen. Für die Erstellung und Wartung von Testumgebung sowie für die Durchführung von Experimenten wird dabei stark auf die Nutzung von Infrastructure as Code (IaC) Ansätzen gebaut.Für Experimente in Forschungsprojekten stehen eine gemischte Umgebung aus Arbeitsplatzrechnern, Netzwerkequipment, einem Server-Cluster zur Virtualisierung, einer High Performance Computing Lösung und einem Data Storage Server bereit. Weiterhin beinhaltet das Testbed eine Reihe von Raspberry Pis, die auch für Aufgaben in der Lehre des CC SEC eingesetzt werden können.
Technologie
Mit der am DAI-Labor entwickelten Lösung namens Androlyzer führen wir statische Datenflussanalysen auf beliebige Android-Apps durch. Mit dieser Analysetechnik sind wir in der Lage ohne vorhandenen Quellcode einer App diese auf mögliche Datenschutzverletzungen zu untersuchen. Hierbei muss die App nicht einmal installiert oder gestartet werden. In Folge einer Quellen-Senken-Untersuchung wird der Zugriff auf private Daten detektiert. Von hier ausgehend werden weitere Verarbeitungsschritte der App analysiert, in der ein solcher Schritt die Versendung solcher Daten entsprechen könnte. Diese und weitere Analyseergebnisse werden dem Evaluator in Form eines Reports zugänglich gemacht.
Für die Definition, Durchführung von und Datensammlung in Experimenten wird im Testbed auf u.a. folgende Technologien gesetzt:
- vSphere
- Docker
- Kubernetes
- Packer
- Terraform
- Ansible
- ELK-Stack
Weiterhin beinhaltet das Testbed verschiedenen Netzwerk-Monitoring und Sicherheitslösungen, wie beispielsweise:
- OpenVAS
- SecurityOnion
- Suricata
- CheckMK