Dynamic behavior matching: a complexity analysis and new approximation algorithms

  • Authors:
  • Matthew Fredrikson;Mihai Christodorescu;Somesh Jha

  • Affiliations:
  • University of Wisconsin, Madison;IBM Research, Hawthorne, NY;University of Wisconsin, Madison

  • Venue:
  • CADE'11 Proceedings of the 23rd international conference on Automated deduction
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

A number of advances in software security over the past decade have foundations in the behavior matching problem: given a specification of software behavior and a concrete execution trace, determine whether the behavior is exhibited by the execution trace. Despite the importance of this problem, precise descriptions of algorithms for its solution, and rigorous analyses of their complexity, are missing in the literature. In this paper, we formalize the notion of behavior matching used by the software security community, study the complexity of the problem, and give several algorithms for its solution, both exact and approximate. We find that the problem is in general not efficiently solvable, i.e. behavior matching is NP-Complete. We demonstrate empirically that our approximation algorithms can be used to efficiently find accurate solutions to real instances.