Proconda -- Protected Control Data
Memory corruption vulnerabilities often enable attackers to take control of a target system by overwriting control-flow relevant data (such as return addresses and function pointers), which are potentially stored in close proximity of related, typically user-controlled data on the stack. In this pap...
Gespeichert in:
Hauptverfasser: | , , , |
---|---|
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Memory corruption vulnerabilities often enable attackers to take control of a
target system by overwriting control-flow relevant data (such as return
addresses and function pointers), which are potentially stored in close
proximity of related, typically user-controlled data on the stack. In this
paper, we propose ProConDa, a general approach for protecting control-flow
relevant data on the stack ProConDa leverages hardware features to enforce a
strict separation between control-flow relevant and regular data of programs
written in non-memory-safe languages such as C. Contrary to related approaches,
ProConDa does not rely on information hiding and is therefore not susceptible
to several recent attacks specifically targeting information hiding as a
foundation for memory isolation. We show that ProConDa enforcement is
compatible with existing software by applying a software-based prototype to
industry benchmarks on an ARM CPU running Linux. |
---|---|
DOI: | 10.48550/arxiv.1909.03758 |