A large scale exploratory analysis of software vulnerability life cycles

Muhammad Shahzad, Muhammad Shafiq, Alex X. Liu

2012 · 123 citations · 16 references

Concepts

TL;DR

Software systems contain vulnerabilities that have been exploited, causing significant losses, and studying their life cycles can aid development, deployment, policy design, audits, and risk assessment for vendors. The study aims to explore the life cycle of 46,310 software vulnerabilities disclosed between 1988 and 2011. The authors analyze the dataset across seven dimensions: life‑cycle phases, yearly evolution, functionality, exploitation access requirements, risk level, vendors, and products. The analysis reveals several statistically significant patterns with implications for software development and deployment.

Abstract

Software systems inherently contain vulnerabilities that have been exploited in the past resulting in significant revenue losses. The study of vulnerability life cycles can help in the development, deployment, and maintenance of software systems. It can also help in designing future security policies and conducting audits of past incidents. Furthermore, such an analysis can help customers to assess the security risks associated with software products of different vendors. In this paper, we conduct an exploratory measurement study of a large software vulnerability data set containing 46310 vulnerabilities disclosed since 1988 till 2011. We investigate vulnerabilities along following seven dimensions: (1) phases in the life cycle of vulnerabilities, (2) evolution of vulnerabilities over the years, (3) functionality of vulnerabilities, (4) access requirement for exploitation of vulnerabilities, (5) risk level of vulnerabilities, (6) software vendors, and (7) software products. Our exploratory analysis uncovers several statistically significant findings that have important implications for software development and deployment.

References

16