Control flow tracking at the machine instruction level is blindfolded without a validity check in the current processor architecture. Whatever the program counter points to the instruction is fetched and executed. Whenever this blindfolded instruction sequencing is not properly addressed at a higher level by system and application software, it becomes a vulnerability that malicious software exploits. To mend this fundamental flaw, this project explores incorporating control flow validation into modern high-performance pipelined processors. A straightforward idea of control flow validation can be collecting possible target addresses per branch to check every branching instance. Modern microprocessors do this checking in some sense already at micro-architecture level in the form of branch prediction. Since illegitimate control transfer in program execution can be made only when the processor's program counter is "forced" to point to "unseen" addresses, control flow altering attacks cause branch mis-predictions in the processor micro-architecture; branch mis-prediction is one of the symptoms of misbehavior in program execution such as binary code tampering and virus infection. This project develops micro-architecture for incorporating control flow validation into the branch prediction unit of modern high-performance pipelined processors. A processor core with secure control flow creates a basis for designing and building more trusted devices and cyber infrastructure. This project will produce a practical hardware support for validating program control flow to provide protection from not-yet-known attacks and exploits, i.e. before the behavior patterns, attack signatures, or vulnerabilities they exploit are analyzed and captured.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Network Systems (CNS)
Type
Standard Grant (Standard)
Application #
0627341
Program Officer
Carl Landwehr
Project Start
Project End
Budget Start
2006-09-01
Budget End
2009-08-31
Support Year
Fiscal Year
2006
Total Cost
$200,000
Indirect Cost
Name
University of Illinois at Chicago
Department
Type
DUNS #
City
Chicago
State
IL
Country
United States
Zip Code
60612