Modeling Security Vulnerabilities: A Constraints and Assumptions Perspective

  • Authors:
  • Anil Bazaz;James D. Arthur;Joseph G. Tront

  • Affiliations:
  • Microsoft, Inc., USA;Virginia Tech, USA;Virginia Tech, USA

  • Venue:
  • DASC '06 Proceedings of the 2nd IEEE International Symposium on Dependable, Autonomic and Secure Computing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Preventing exploits from compromising software applications requires a fundamental understanding of how they are being exploited, and then leveraging that understanding in the formulation of tests that reveal software application vulnerabilities. To advance that understanding this paper first presents a Process/Object Model of Computation that establishes a relationship between software vulnerabilities, an executing process, and computer system resources such as memory, input/output, and cryptographic resources. That relationship promotes the concept that a software application is vulnerable to exploits when it violates (a) constraints imposed by computer system resources or (b) assumptions made about the usage of those resources. Secondly, the Process/Object Model also serves as a foundation for the definition of a Taxonomy of Vulnerabilities. That is, the computer system resources (or objects) identified in the Process/Object Model form the categories and refined subcategories of the taxonomy. Vulnerabilities, which are expressed in the form of constraints and assumptions, are classified within the Taxonomy according to these categories and subcategories. This Taxonomy of Vulnerabilities is novel and distinctively different from other taxonomies found in literature, and is also outlined in this paper.