2006
DOI: 10.1109/iccd.2006.4380863
|View full text |Cite
|
Sign up to set email alerts
|

Architectural Support for Run-Time Validation of Control Flow Transfer

Abstract: Abstract-Current micro-architecture blindly uses the address in the program counter to fetch and execute instructions without validating its legitimacy. Whenever this blind-folded instruction sequencing is not properly addressed at a higher level by system, it becomes a vulnerability of control data attacks, today's dominant and most critical security threats. To remedy it, this paper proposes a micro-architectural mechanism to validate control flow transfer at run-time at machine instruction level. It is prop… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
9
0

Year Published

2007
2007
2015
2015

Publication Types

Select...
5
2

Relationship

0
7

Authors

Journals

citations
Cited by 8 publications
(9 citation statements)
references
References 13 publications
0
9
0
Order By: Relevance
“…Additionally, these attacks have received considerable attention within the research community. Earlier works such as Program Shepherding [6] have attempted to address control-flow attacks, as well as Control Flow Integrity (CFI) [7] which has inspired many descendant works [8,9,10,11,12,13,14,15]. Adoption of these countermeasures serves to make control-flow increasingly difficult, but ultimately, these countermeasures only represent stumbling blocks for attackers, as they have repeated devised more sophisticated attacks (e.g., heap spray attacks), and blended attacks (e.g., canary key read attacks), such that control flow attacks remain a dire software vulnerability to this day.…”
Section: Control-flow Attacksmentioning
confidence: 99%
“…Additionally, these attacks have received considerable attention within the research community. Earlier works such as Program Shepherding [6] have attempted to address control-flow attacks, as well as Control Flow Integrity (CFI) [7] which has inspired many descendant works [8,9,10,11,12,13,14,15]. Adoption of these countermeasures serves to make control-flow increasingly difficult, but ultimately, these countermeasures only represent stumbling blocks for attackers, as they have repeated devised more sophisticated attacks (e.g., heap spray attacks), and blended attacks (e.g., canary key read attacks), such that control flow attacks remain a dire software vulnerability to this day.…”
Section: Control-flow Attacksmentioning
confidence: 99%
“…Countermeasures such as stack protection, Address Space Layout Randomization (ASLR), and Non-Executable Data (NXD) have been widely adopted. Though many countermeasures have been devised [1,6,7,26,27,30,34], controlflow attacks remain a pervasive threat to computer security [35] due to the persistence of mixing runtime data with program control. Recently, mitigating techniques such as Control Flow Integrity (CFI) [1] and its descendents [33,34], Program Shepherding [17], and taint analysis [13] have been proposed.…”
Section: Control-flow Attacksmentioning
confidence: 99%
“…Contemporary research to protect control-flow has been focused on verifying the user data to be injected into the program counter (PC) [1,6,13,17,26,30,33,34] in an effort to establish trusted user data for control-flow targets. These previous works approach control-flow security by layering additional complexity on top of user data in an effort to shield the vulnerability from attack.…”
Section: Introductionmentioning
confidence: 99%
“…There are two ways to collect the records [18]. We can either extract the normal behavior through static analysis of the legacy code, or perform training as many models-based approaches have done [11].…”
Section: B Training the Full Record Set (Frs)mentioning
confidence: 99%
“…If the full record does not completely cover the normal behavior, using it as a reference to validate program execution at run-time will incur false alarms (false positives). Previous works have shown that the number of control flow transfers actually converges quickly as the number of indirect control instructions increases [18]. In our study, we use train-data inputs for SPECINT benchmarks to profile them and to get their FRS.…”
Section: B Training the Full Record Set (Frs)mentioning
confidence: 99%