Publication Type
Journal Article
Version
publishedVersion
Publication Date
2-2017
Abstract
Cross-site scripting and injection vulnerabilities are among the most common and serious security issues for Web applications. Although existing static analysis approaches can detect potential vulnerabilities in source code, they generate many false warnings and source-sink traces with irrelevant information, making their adoption impractical for security auditing. One suitable approach to support security auditing is to compute a program slice for each sink, which contains all the information required for security auditing. However, such slices are likely to contain a large amount of information that is irrelevant to security, thus raising scalability issues for security audits. In this paper, we propose an approach to assist security auditors by defining and experimenting with pruning techniques to reduce original program slices to what we refer to as security slices, which contain sound and precise information. To evaluate the proposed approach, we compared our security slices to the slices generated by a stateof-the-art program slicing tool, based on a number of open-source benchmarks. On average, our security slices are 76 % smaller than the original slices. More importantly, with security slicing, one needs to audit approximately 1%
Keywords
Security auditing, static analysis, vulnerability, automated code fixing
Discipline
Information Security
Research Areas
Cybersecurity
Publication
Journal of Systems and Software
Volume
137
First Page
766
Last Page
783
ISSN
0164-1212
Identifier
10.1016/j.jss.2017.02.040
Publisher
Elsevier
Citation
THOME, Julian; SHAR, Lwin Khin; BIANCULLI, Domenico; and BRIAND, Lionel.
Security slicing for auditing common injection vulnerabilities. (2017). Journal of Systems and Software. 137, 766-783.
Available at: https://ink.library.smu.edu.sg/sis_research/4894
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Additional URL
https://doi.org/10.1016/j.jss.2017.02.040