Foundational software systems such as operating systems and web servers are implemented in unsafe programming languages for efficiency, and system designers often prioritize performance over security. Hence, these systems inherently suffer from a variety ofvulnerabilities and insecure designs that have been exploited by adversaries to launch critical system attacks. Two typical goals of these attacks are to leak sensitive data and to control victim systems. This thesis aims to defeat both data leaks and control attacks. We first identify that, in modern systems, preventing informationleaks can be a general defense that not only stops data leaks but also defeats control attacks. We then investigate three ways to prevent information leaks: eliminating information-leakvulnerabilities, re-designing system mechanisms against information leaks, and protecting certain sensitive data from information leaks. We have developed multiple tools for each way. Whileautomatically and reliably securing complex systems, all these tools impose negligible performance overhead. Our extensiveevaluation results show that preventing information leaks can be a general and practical approach to securing complex software systems.
【 预 览 】
附件列表
Files
Size
Format
View
Securing software systems by preventing information leaks