arrow
Return

Effective and Efficient Memory Protection Using Dynamic Tainting

delete2012-01-01
delete18
PRE
AI
I
Ioannis Doudalis *
J
James Clause
G
Guru Venkataramani
M
Milos Prvulović
A
Alessandro Orso
DOI:10.1109/TC.2010.215delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Programs written in languages allowing direct access to memory through pointers often contain memory-related faults, which cause nondeterministic failures and security vulnerabilities. We present a new dynamic tainting technique to detect illegal memory accesses. When memory is allocated, at runtime, we taint both the memory and the corresponding pointer using the same taint mark. Taint marks are then propagated and checked every time a memory address m is accessed through a pointer p; if the associated taint marks differ, an illegal access is reported. To allow always-on checking using a low overhead, hardware-assisted implementation, we make several key technical decisions. We use a configurable, low number of reusable taint marks instead of a unique mark for each allocated area of memory, reducing the performance overhead without losing the ability to target most memory-related faults. We also define the technique at the binary level, which helps handle applications using third-party libraries whose source code is unavailable. We created a software-only prototype of our technique and simulated a hardware-assisted implementation. Our results show that 1) it identifies a large class of memory-related faults, even when using only two unique taint marks, and 2) a hardware-assisted implementation can achieve performance overheads in single-digit percentages.
Keywords:
Computer systems organization
hardware/software interfaces
processor architectures
monitors

Journal

IEEE Transactions on Computers cover
IEEE Transactions on Computers
IF:
3.8
Papers:
5.3K
Citations:
9.8K

Organization

G
Georgia Institute of Technology
Scholars:
1.8W
Papers: 1.4W
Citations: 5.9W
U
University of Delaware
Scholars:
1.3W
Papers: 1.3W
Citations: 2.0W
U
university system of georgia
Scholars:
7.3W
Papers: 6.5W
Citations: 101
researcher View more organizations