Chapter

Computer Aided Verification

Volume 6806 of the series Lecture Notes in Computer Science pp 463-469

BAP: A Binary Analysis Platform

  • David BrumleyAffiliated withCarnegie Mellon University
  • , Ivan JagerAffiliated withCarnegie Mellon University
  • , Thanassis AvgerinosAffiliated withCarnegie Mellon University
  • , Edward J. SchwartzAffiliated withCarnegie Mellon University

* Final gross prices may vary according to local VAT.

Get Access

Abstract

BAP is a publicly available infrastructure for performing program verification and analysis tasks on binary (i.e., executable) code. In this paper, we describe BAP as well as lessons learned from previous incarnations of binary analysis platforms. BAP explicitly represents all side effects of instructions in an intermediate language (IL), making syntaxdirected analysis possible. We have used BAP to routinely generate and solve verification conditions that are hundreds of megabytes in size and encompass 100,000’s of assembly instructions.