Software Anti-Tamper for Real-Time Systems

We are developing a tool that protects software from reverse engineering by analyzing and rewriting software binaries with anti-tamper techniques. The advantages of working on binaries include:

  • Machines do not run source code; they run executables. Therefore, binaries reflect actual behaviors that may arise during program execution.
  • Approaches based on source code must make assumptions (e.g., that the code is ANSI compliant) that cannot be checked. These assumptions can introduce a variety of problems, such as serious loss of precision and reliability. Tools based on binaries do not make such compromises.
  • External libraries and COTS components can be handled by binary tools.
  • Source code may not be available, may not be trustworthy, or may be in more than one language. In all of these cases, tools that examine binaries can still be applied.

Existing approaches to rewriting binaries are typically limited to simple patches. In contrast, GrammaTech's approach involves creation of a high-precision fine-grained intermediate representation of the binary that allows massive modification and restructuring of the program.

This project has been selected for the prestigious U.S. Army Commercialization Pilot Program (CPP). For more information see our press release.


Areas | Products | Sponsors | Publications | News | About Us © 2007-2012, GrammaTech, Inc. All rights reserved.
The Synthesizer Generator, Ada-ASSURED, Ada-Utilities, and SmashProof are trademarks of GrammaTech, Inc. CodeSurfer and CodeSonar are registered trademarks of GrammaTech, Inc.