| Prioritizing software security fortification throughcode-level metrics |
| Full text |
Pdf
(957 KB)
|
Source
|
Conference on Computer and Communications Security
archive
Proceedings of the 4th ACM workshop on Quality of protection
table of contents
Alexandria, Virginia, USA
SESSION: Software security
table of contents
Pages 31-38
Year of Publication: 2008
ISBN:978-1-60558-321-1
|
|
Authors
|
|
Michael Gegick
|
North Carolina State University, Raleigh, NC, USA
|
|
Laurie Williams
|
North Carolina State University, Raleigh, NC, USA
|
|
Jason Osborne
|
North Carolina State University, Raleigh, NC, USA
|
|
Mladen Vouk
|
North Carolina State University, Raleigh, NC, USA
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 26, Downloads (12 Months): 134, Citation Count: 0
|
|
|
ABSTRACT
Limited resources preclude software engineers from finding and fixing all vulnerabilities in a software system. We create predictive models to identify which components are likely to have the most security risk. Software engineers can use these models to make measurement-based risk management decisions and to prioritize software security fortification efforts, such as redesign and additional inspection and testing. We mined and analyzed data from a large commercial telecommunications software system containing over one million lines of code that had been deployed to the field for two years. Using recursive partitioning, we built attack-prone prediction models with the following code-level metrics: static analysis tool alert density, code churn, and count of source lines of code. One model identified 100% of the attack-prone components (40% of the total number of components) with an 8% false positive rate. As such, the model could be used to prioritize fortification efforts in the system.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
S. Barnum and M. Gegick, "Design Principles," https://buildsecurityin.us--cert.gov/portal/article/knowledge/Principles, 2005.
|
| |
2
|
|
| |
3
|
|
| |
4
|
|
 |
5
|
|
| |
6
|
E. Dijkstra, Structured Programming, Brussels, Belgium, 1970.
|
| |
7
|
M. Gegick and L. Williams, "Toward the Use of Static Analysis Alerts for Early Identification of Vulnerability- and Attack-prone Components," First International Workshop on Systems Vulnerabilities (SYVUL'07) Santa Clara, CA, July 1--6 2007.
|
| |
8
|
T. Hastie, R. Tibshirani, and J. H. Friedman, The Elements of Statistical Learning, New York, Springer, 2001.
|
| |
9
|
S. Heckman and L. Williams, "Automated adaptive ranking and filtering of static analysis alerts," Fast abstract at the International Symposium on Software Reliability Engineering, Raleigh, NC, November 2006.
|
| |
10
|
ISO, "ISO/IEC DIS 14598--1 Information Technology - Software Product Evaluation - Part 1: General Overview," October 28 1996.
|
| |
11
|
ISO/IEC 24765, "Software and Systems Engineering Vocabulary," 2006.
|
| |
12
|
|
| |
13
|
|
| |
14
|
R. J. Lipton and F. G. Sayward, "The Status of Research on Program Mutation," In Digest for the Workshop on Software Testing and Test Documentation, pp. 355--373, December 1978.
|
| |
15
|
|
 |
16
|
|
 |
17
|
|
 |
18
|
Stephan Neuhaus , Thomas Zimmermann , Christian Holler , Andreas Zeller, Predicting vulnerable software components, Proceedings of the 14th ACM conference on Computer and communications security, October 28-31, 2007, Alexandria, Virginia, USA
[doi> 10.1145/1315245.1315311]
|
 |
19
|
A. Offutt, The coupling effect: fact or fiction, Proceedings of the ACM SIGSOFT '89 third symposium on Software testing, analysis, and verification, p.131-140, December 13-15, 1989, Key West, Florida, United States
|
 |
20
|
|
| |
21
|
V. Prevelakis and D. Spinellis, "The Athens Affair," IEEE Spectrum, vol. 44, no. 7, pp. 26--33, July, 2007.
|
 |
22
|
|
| |
23
|
Jiang Zheng , Laurie Williams , Nachiappan Nagappan , Will Snipes , John P. Hudepohl , Mladen A. Vouk, On the Value of Static Analysis for Fault Detection in Software, IEEE Transactions on Software Engineering, v.32 n.4, p.240-253, April 2006
[doi> 10.1109/TSE.2006.38]
|
|