Predictive Run-Time Attack-Space Reduction

Context-based text elimination (CTE) is a technique that allows us to dynamically debloat programs by wiping the executable code and reloading single functions when they are needed. It has been shown that CTE elimination can be successfully used to debloat real-world servers with moderate run-time penalties. Most of the still existing run-time costs arise from individually loading functions on demand.

The goal of this thesis is to explore the possibilities of extending CTE in order to allow functions to be loaded in groups, based on per-application measurement-determined heuristics. The information obtained can also be used to improve the existing CFI facilities. The prototype is to be evaluated with the already existing CTE benchmarks.