Automatically Patching Errors in Deployed Software

Date Added: Aug 2009
Format: PDF

The authors present ClearView, a system for automatically patching errors in deployed software. ClearView works on stripped Windows x86 binaries without any need for source code, debugging information, or other external information, and without human intervention. ClearView observes normal executions to learn invariants that characterize the application's normal behavior, uses error detectors to distinguish normal executions from erroneous executions, identifies violations of learned invariants that occur during erroneous executions, generates candidate repair patches that enforce selected invariants by changing the state or flow of control to make the invariant true, and observes the continued execution of patched applications to select the most successful patch.