The most common cyber-attack vector is exploit of software vulnerability. Despite much efforts toward building secure software, software systems of even modest complexity still routinely have serious vulnerabilities. More alarmingly, even the trusted computing base (e.g. OS kernel) still contains vulnerabilities that would allow attackers to subvert security mechanisms such as the application sandbox on smartphones. Among all vulnerabilities, memory corruption is one of the most ancient, prevalent, and devastating vulnerabilities. This thesis proposed three projects on mitigating this threat. There are three popular ways to exploit a memory corruption vulnerability---attacking the code (a.k.a. code injection attack), the control data (a.k.a...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
The most common cyber-attack vector is exploit of software vulnerability. Despite much efforts towar...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
Memory corruption attacks, such as buffer overflow attacks, have been threatening software security ...
Errors in hardware and software lead to vulnerabilities that can be exploited by attackers. Proposed...
Errors in hardware and software lead to vulnerabilities that can be exploited by attackers. Proposed...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
The most common cyber-attack vector is exploit of software vulnerability. Despite much efforts towar...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
The complexity of computer programs has been increasing for multiple decades. As a result, the numbe...
Memory corruption attacks, such as buffer overflow attacks, have been threatening software security ...
Errors in hardware and software lead to vulnerabilities that can be exploited by attackers. Proposed...
Errors in hardware and software lead to vulnerabilities that can be exploited by attackers. Proposed...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...
Adversaries exploit software vulnerabilities in modern software to compromise computer systems. Whil...