The Insight Project

The Insight project is devoted to binary analysis to serve several purposes such as:

  • Binary verification
  • Reverse engineering
  • Binary test cases extraction
  • Decompilation to higher-level languages

We aim to have a full and efficient platform to easily try out novel algorithms or techniques. For this, we provide a full C++ framework designed for Unix systems (*BSD, Linux, MacOS X, ...) which contains a wide-spectrum binary format loaders (ELF, PE, Mach-O, ...), a decoder translating from assembly code (i386 and amd64 for now others will come) into our intermediate language, an interpreter to execute the program over a (potentially abstract) domain and several facilities to simplify, manipulate or transform the graph and the expressions extracted from the original program.

Warning: The insight framework is still not feature complete and is a work in progress. Yet, one can try the tool cfgrecovery in insight/tools/cfgrecovery/ directory once you have compiled everything.

News

  • April 23, 2015: Looking for a Postdoc or a Research Engineer

We are currently looking for a Postdoc or a Research Engineer to work on binary analysis related topics for 10/12 months in Bordeaux (see full announcement).

  • July 31, 2014: A complete iii tutorial !

A full tour of the new tool based on Insight, iii (Insight Interactive Inspector): a symbolic debugger (PDF, crackme).

"Insight: A(nother) Binary Analysis Framework" (Slides)

"Binary Analysis: Theory and Practice" (Emmanuel Fleury, Slides).

"The Insight binary code analysis platform" (Aymeric Vincent, Slides).

  • December 4, 2012: A few interships proposals are available

See the internships page: Internships (positions filled)

  • November 9, 2012: We have a one year position for a postdoct to work on Insight.

See full offer here (position filled).

  • November 7, 2012: CFG recovery examples.

Here is an archive gathering small examples used to show capabilities of our CFG recovery tool based on Insight library.

  • October 24, 2012: Release of insight 0.3.

Minor changes in this release. Several bugs have been fixed in microcode generation for x86_32 decoder. The output of CFG in dot format has been improved.

  • September 28, 2012: Release of insight 0.2.

This release contains the first incomplete release of the cfgrecovery tool intended to rebuild the CFG of a program based on the executable only. It also introduces support for the Mathsat 5 and Z3 SMT-solvers and a lot of bug fixes and architecture improvements.

  • July 26, 2012: First public release of insight 0.1.

This release contains only the insight library and a lot of tests, we will release associated tools soon.

Downloads

File Description Hash
examples.tar.bz2 Examples for CFGrecovery tool SHA1 557951f4fabbe589584446c02114a018399b228e
insight-0.3.tar.gz Source code of insight 0.3 SHA1 21d02aa3b3e5deaf13ff4d1798db45e382fe2e9d
insight-0.2.tar.gz Source code of insight 0.2 SHA1 99a728ee976b81412179781e13120a4e07c0b3df
insight-0.1.tar.gz Source code of insight 0.1 SHA1 3282fd991e7628e326c8b30f2ae3a4699cc1ad03

About Us

We are working at the LaBRI laboratory in Bordeaux, France within the Formal Methods Team (in the Modelisation and Verification group).

  • Emmanuel Fleury <emmanuel.fleury(at)labri.fr>
  • Gérald Point <gerald.point(at)labri.fr>
  • Aymeric Vincent <aymeric.vincent(at)labri.fr>

Insight Tools

Other Pages

Last modified 22 months ago Last modified on Apr 23, 2015 6:07:58 PM

Attachments (1)

Download all attachments as: .zip