Directed proof generation for machine code

  • Authors:
  • Aditya Thakur;Junghee Lim;Akash Lal;Amanda Burton;Evan Driscoll;Matt Elder;Tycho Andersen;Thomas Reps

  • Affiliations:
  • University of Wisconsin, Madison, WI;University of Wisconsin, Madison, WI;Microsoft Research India, Bangalore, India;University of Wisconsin, Madison, WI;University of Wisconsin, Madison, WI;University of Wisconsin, Madison, WI;University of Wisconsin, Madison, WI;,University of Wisconsin, Madison, WI

  • Venue:
  • CAV'10 Proceedings of the 22nd international conference on Computer Aided Verification
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present the algorithms used in McVeto (Machine-Code VErification TOol), a tool to check whether a stripped machine-code program satisfies a safety property The verification problem that McVeto addresses is challenging because it cannot assume that it has access to (i) certain structures commonly relied on by source-code verification tools, such as control-flow graphs and call-graphs, and (ii) meta-data, such as information about variables, types, and aliasing It cannot even rely on out-of-scope local variables and return addresses being protected from the program's actions What distinguishes McVeto from other work on software model checking is that it shows how verification of machine-code can be performed, while avoiding conventional techniques that would be unsound if applied at the machine-code level.