ACM Home Page
Please provide us with feedback. Feedback
Architectural support for software-based protection
Full text PdfPdf (643 KB)
Source Architectural Support for Programming Languages and Operating Systems archive
Proceedings of the 1st workshop on Architectural and system support for improving software dependability table of contents
San Jose, California
Pages: 42 - 51  
Year of Publication: 2006
ISBN:1-59593-576-2
Authors
Mihai Budiu  Microsoft Research
Úlfar Erlingsson  Microsoft Research
Martín Abadi  Microsoft Research and UC Santa Cruz
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 72,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1181309.1181316
What is a DOI?

ABSTRACT

Control-Flow Integrity (CFI) is a property that guarantees program control flow cannot be subverted by a malicious adversary, even if the adversary has complete control of data memory. We have shown in prior work how CFI can be enforced by using inlined software guards that perform safety checks. The first part of this paper shows how modest Instruction Set Architecture (ISA) support can replace such guard code with single instructions.On the foundation of CFI we have implemented XFI: a protection system that offers fine-grained memory access control and fundamental integrity guarantees for critical system state. XFI can be seen as a flexible, generalized form of software-based fault isolation (SFI). In the second part of this paper we present ISA support for XFI, in the form of simple bounds-check instructions.CFI and XFI can significantly increase the security and integrity of software execution. Our results indicate that support for CFI and XFI is a straightforward, simple addition to hardware architectures. Compared to software guards, such hardware support increases the efficiency and simplicity of enforcement.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
Martín Abadi, Mihai Budiu, Úlfar Erlingsson, and Jay Ligatti. A theory of secure control-flow. In International Conference on Formal Engineering Methods (ICFEM), pages 111--124, Manchester, UK, November 1--4 2005.
 
3
Miguel Castro, Manuel Costa, and Tim Harris. Securing software by enforcing data-flow integrity. In Symposium on Operating System Design and Implementation (OSDI), Seattle, WA, November 6--8 2006.
 
4
5
 
6
R. Desikan, D. C. Burger, S. W. Keckler, and Todd Austin. Sim-alpha: a validated, execution-driven Alpha 21264 simulator. Technical Report TR-01-23, University of Texas at Austin, Department of Computer Sciences, 2003.
 
7
Úlfar Erlingsson, Martín Abadi, Michael Vrable, Mihai Budiu, and George C. Necula. XFI: Software guards for system address spaces. In Symposium on Operating System Design and Implementation (OSDI), Seattle, WA, November 6--8 2006.
8
9
 
10
11
 
12
 
13
Standard Performance Evaluation Corp. SPEC CPU 2000 Benchmark Suite, 2000. http://www.specbench.org/osg/cpu2000.
14
15
16
17
18
19
20
21

Collaborative Colleagues:
Mihai Budiu: colleagues
Úlfar Erlingsson: colleagues
Martín Abadi: colleagues