Automated verification of security pattern compositions

  • Authors:
  • Jing Dong;Tu Peng;Yajing Zhao

  • Affiliations:
  • Department of Computer Science, University of Texas at Dallas, Richardson, TX 75083, USA;Department of Computer Science, University of Texas at Dallas, Richardson, TX 75083, USA;Department of Computer Science, University of Texas at Dallas, Richardson, TX 75083, USA

  • Venue:
  • Information and Software Technology
  • Year:
  • 2010
  • An algebra of design patterns

    ACM Transactions on Software Engineering and Methodology (TOSEM) - In memoriam, fault detection and localization, formal methods, modeling and design

Quantified Score

Hi-index 0.03

Visualization

Abstract

Software security becomes a critically important issue for software development when more and more malicious attacks explore the security holes in software systems. To avoid security problems, a large software system design may reuse good security solutions by applying security patterns. Security patterns document expert solutions to common security problems and capture best practices on secure software design and development. Although each security pattern describes a good design guideline, the compositions of these security patterns may be inconsistent and encounter problems and flaws. Therefore, the compositions of security patterns may be even insecure. In this paper, we present an approach to automated verification of the compositions of security patterns by model checking. We formally define the behavioral aspect of security patterns in CCS through their sequence diagrams. We also prove the faithfulness of the transformation from a sequence diagram to its CCS representation. In this way, the properties of the security patterns can be checked by a model checker when they are composed. Composition errors and problems can be discovered early in the design stage. We also use two case studies to illustrate our approach and show its capability to detect composition errors.