Goal and Approach
The goal of this thesis is to develop a framework for selecting the most efficient mitigation of cross-HyperThread attacks for a given system. To this end, the performance and energy characteristics of the two mitigations, disabling HyperThreading and Core Scheduling, are determined. These analyses also take into account different workload types and system configurations.
Hardware vulnerabilities threaten the security guarantees of modern operating systems, such as Linux. Some vulnerabilities allow for attacks between HyperThreads (HTs) (e.g., Microarchitectural Data Sampling). With these cross-HT attacks, a malicious process can sample all data accessed by any other process running on the same physical core. The only effective measure to prevent such attacks is to disable HyperThreading for the entire system, which can incur significant performance penalties. Recently, a new feature serving as an alternative to disabling HT has been introduced to the Linux kernel: Core Scheduling.
With Core Scheduling, trust relationships between processes can be defined that are the basis for ensuring that only trusted processes are scheduled on the same physical core. While this allows keeping HyperThreading enabled, Core Scheduling also comes with additional overhead, especially during the scheduling process itself.
This leaves the question of which mitigation to use when optimizing the system in terms of not only performance, but also energy efficiency.
If you are interested but have no prior experience with hardware vulnerabilities in the context of operating systems,
feel free to contact us. We can provide you with further material and an overview of the vulnerabilities and their mitigations.