DocumentCode
2845168
Title
DESERVE: A Framework for Detecting Program Security Vulnerability Exploitations
Author
Mohosina, A. ; Zulkernine, Mohammad
Author_Institution
Sch. of Comput., Queen´´s Univ., Kingston, ON, Canada
fYear
2012
fDate
20-22 June 2012
Firstpage
98
Lastpage
107
Abstract
It is difficult to develop a program that is completely free from vulnerabilities. Despite the application of many approaches to secure programs, vulnerability exploitations occur in real-world in large numbers. Exploitations of vulnerabilities may corrupt memory spaces and program states, lead to denial of services and authorization bypassing, and leak sensitive information. Monitoring at the program code level can be a way of vulnerability exploitation detection at runtime. In this work, we propose a monitor embedding framework DESERVE (a framework for Detecting program Security Vulnerability Exploitations). DESERVE identifies exploitable statements from source code based on static backward slicing and embeds necessary code to detect attacks. During the deployment stage, the enhanced programs execute exploitable statements in a separate test environment. Unlike traditional monitors that extract and store program state information to compare with vulnerable free program states to detect exploitation, our approach does not need to save state information. Moreover, the slicing technique allows us avoid the tracking of fine grained level of information about runtime program environments such as input flow and memory state. We implement DESERVE for detecting buffer overflow, SQL injection, and cross-site scripting attacks. We evaluate our approach for real-world programs implemented in C and PHP languages. The results show that the approach can detect some of the well-known attacks. Moreover, the approach imposes negligible runtime overhead.
Keywords
program slicing; security of data; system monitoring; C language; DESERVE; PHP language; SQL injection; authorization bypassing; buffer overflow; cross-site scripting attacks; denial of services; memory spaces; monitor embedding framework; program code monitoring; program security; program states; secure programs; source code; static backward slicing; vulnerability exploitations; Databases; Instruments; Monitoring; Runtime; Security; Servers; Testing; Buffer overflow; SQL Injection; XSS; in-vivo testing;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Security and Reliability (SERE), 2012 IEEE Sixth International Conference on
Conference_Location
Gaithersburg, MD
Print_ISBN
978-1-4673-2067-2
Type
conf
DOI
10.1109/SERE.2012.22
Filename
6258299
Link To Document