Year: 2025
Type: dissertation
Abstract: In Betriebssystemen durchgesetzte Sicherheitspolitiken sind von zentraler Bedeutung um die Sicherheitsanforderungen von Anwendungen zu unterstützen. Für eine Vielzahl von Anwendungen ist attributbasierte Zugriffskontrolle (ABAC) wegen ihrer Flexibilität, Ausdrucksstärke und Skalierbarkeit zu einer beliebten Klasse von Politiken geworden. Standardbetriebssysteme nutzen allerdings vorrangig restriktivere Sicherheitspolitiken, die eng mit ihren Abstraktionen verknüpft sind. Dies limitiert nicht nur die Anwendbarkeit für dynamischere Einsatzzwecke, sondern es erschwert auch formale Analysen von Politiken, die Korrektheitsgarantien ermöglichen. Um diese Vorteile in Standardbetriebssystemen nutzen zu können, und um die Herausforderungen dieser Integration zu untersuchen, stellen wir eine erste Version des Rust DABAC LSMs vor, einem Linux Security Module (LSM), das flexible, formelbasierte ABAC Politiken mit zustandsverändernden Post-Conditions unterstützt. Wir nutzen dazu ein Referenzmonitor-Architekturschema als Basis und entscheiden uns aufgrund der Korrektheitsgarantien für eine Implementierung in Rust. Zusätzlich zur Implementierung und ihrer umfassenden Evaluierung steuern wir eine Analyse des Stands der Technik zu ABAC-Implementierungen in Linux sowie eine Anforderungsspezifikation und ein gründliches Design des Rust DABAC LSMs bei. Der Fokus des Entwurfs liegt auf der Anwendbarkeit der Referenzmonitor-Architektur im Linux-Kernel und auf Leistungsverbesserungen durch Caching. Unsere Ergebnisse zeigen den Grad der Praxistauglichkeit des Rust DABAC LSMs. Einzelne aufeinanderfolgende Anfragen werden effizient abgewickelt, jedoch führen die strengen Anforderungen der durchgesetzten dynamischen ABAC-Politiken nach wechselseitigem Ausschluss zu Leistungseinbußen bei Sperrkonflikten. Für die ausgewählte Architektur und solche Politiken zeigen wir auch, dass die Caching-Verfahren die Performanz der Variante ohne Caching nicht effektiv verbessern können. Eine qualitative Analyse bestätigt die Tatsache, dass die monolithische Architektur von Linux die ordnungsgemäße Erfüllung des Verifizierbarkeitskriteriums der Referenzmonitoreigenschaften verhindert. Darüber hinaus kommen wir zu dem Schluss, dass sich die Unterstützung von Rust im Kernel zwar noch im Anfangsstadium befindet, für die Implementierung aber größtenteils genügt und stetig besser wird.
DOI: 10.22032/dbt.66733
Author: Fischer, Lukas
Language: English
Topic: Access Control and Trust
Subfield: Sociology and Political Science
Field: Social Sciences
Domain: Social Sciences
Open Access status: green
OpenAlex ID: W7108647075
Cites:
Cited by:
Related to:
