Computer Science Department
School of Computer Science, Carnegie Mellon University
An Approach to Measuring A System's Attack Surface
Pratyusa K. Manadhata, Kymie M.C. Tan, Roy A. Maxion, Jeannette M. Wing
Supercedes Computer Science Technical Report
Practical software security measurements and metrics are critical to the improvement of software security. We propose a metric to determine whether one software system is more secure than another similar system with respect to their attack surface. We use a system's attack surface measurement as an indicator of the system's security; the larger the attack surface, the more insecure the system. We measure a system's attack surface in terms of three kinds of resources used in attacks on the system: methods, channels, and data. We demonstrate the use of our attack surface metric by measuring the attack surfaces of two open source IMAP servers and two FTP daemons. We validate the attack surface metric by conducting an expert user survey and by performing statistical analysis of Microsoft Security Bulletins. Our metric can be used as a tool by software developers in the software development process and by software consumers in their decision making process.