An advanced approach for modeling and detecting software vulnerabilitiesShow others and affiliations
2012 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 54, no 9, p. 997-1013Article in journal (Refereed) Published
Abstract [en]
Context: Passive testing is a technique in which traces collected from the execution of a system under testare examined for evidence of flaws in the system.
Objective: In this paper we present a method for detecting the presence of security vulnerabilities bydetecting evidence of their causes in execution traces. This is a new approach to security vulnerabilitydetection.
Method: Our method uses formal models of vulnerability causes, known as security goal models and vulnerabilitydetection conditions (VDCs). The former are used to identify the causes of vulnerabilities andmodel their dependencies, and the latter to give a formal interpretation that is suitable for vulnerabilitydetection using passive testing techniques. We have implemented modeling tools for security goal modelsand vulnerability detection conditions, as well as TestInv-Code, a tool that checks execution traces ofcompiled programs for evidence of VDCs.
Results: We present the full definitions of security goal models and vulnerability detection conditions, aswell as structured methods for creating both. We describe the design and implementation of TestInv-Code. Finally we show results obtained from running TestInv-Code to detect typical vulnerabilities in severalopen source projects. By testing versions with known vulnerabilities, we can quantify the effectivenessof the approach.
Conclusion: Although the current implementation has some limitations, passive testing for vulnerabilitydetection works well, and using models as the basis for testing ensures that users of the testing tool caneasily extend it to handle new vulnerabilities.
Place, publisher, year, edition, pages
Elsevier , 2012. Vol. 54, no 9, p. 997-1013
Keywords [en]
Automatic testing; Dynamic analysis; Secure software engineering; Security modelling; Software security
National Category
Engineering and Technology
Identifiers
URN: urn:nbn:se:liu:diva-78641DOI: 10.1016/j.infsof.2012.03.004ISI: 000306631700006OAI: oai:DiVA.org:liu-78641DiVA, id: diva2:534210
Projects
SHIELDSFault-Tolerant and Secure Automotive Embedded Systems2012-06-152012-06-152018-07-17