• DocumentCode
    24066
  • Title

    Vulnerability Scrying Method for Software Vulnerability Discovery Prediction Without a Vulnerability Database

  • Author

    Rahimi, S. ; Zargham, Michael

  • Author_Institution
    Dept. of Comput. Sci., Southern Illinois Univ., Carbondale, IL, USA
  • Volume
    62
  • Issue
    2
  • fYear
    2013
  • fDate
    Jun-13
  • Firstpage
    395
  • Lastpage
    407
  • Abstract
    Predicting software vulnerability discovery trends can help improve secure deployment of software applications and facilitate backup provisioning, disaster recovery, diversity planning, and maintenance scheduling. Vulnerability discovery models (VDMs) have been studied in the literature as a means to capture the underlying stochastic process. Based on the VDMs, a few vulnerability prediction schemes have been proposed. Unfortunately, all these schemes suffer from the same weaknesses: they require a large amount of historical vulnerability data from a database (hence they are not applicable to a newly released software application), their precision depends on the amount of training data, and they have significant amount of error in their estimates. In this work, we propose vulnerability scrying, a new paradigm for vulnerability discovery prediction based on code properties. Using compiler-based static analysis of a codebase, we extract code properties such as code complexity (cyclomatic complexity), and more importantly code quality (compliance with secure coding rules), from the source code of a software application. Then we propose a stochastic model which uses code properties as its parameters to predict vulnerability discovery. We have studied the impact of code properties on the vulnerability discovery trends by performing static analysis on the source code of four real-world software applications. We have used our scheme to predict vulnerability discovery in three other software applications. The results show that even though we use no historical data in our prediction, vulnerability scrying can predict vulnerability discovery with better precision and less divergence over time.
  • Keywords
    program diagnostics; security of data; software maintenance; software reliability; stochastic processes; system recovery; VDM; backup provisioning; code complexity; code property; compiler-based static analysis; cyclomatic complexity; disaster recovery; diversity planning; maintenance scheduling; software vulnerability discovery prediction; source code; stochastic process; vulnerability database; vulnerability discovery model; vulnerability scrying method; Data models; Databases; History; Mathematical model; Predictive models; Security; Software; Code security; static analysis; vulnerability discovery model; vulnerability prediction;
  • fLanguage
    English
  • Journal_Title
    Reliability, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9529
  • Type

    jour

  • DOI
    10.1109/TR.2013.2257052
  • Filename
    6502762