"Galois Open Sources Tools for Finding Vulnerabilities in C, C++ Code"

Galois, a firm specializing in the research and development of new technologies, has recently open-sourced a suite of tools for identifying vulnerabilities in C and C++ code.  Dubbed MATE, the tools are the result of a collaborative effort supported by the United States Air Force and the Defense Advanced Research Project Agency (DARPA).  Now available under the BSD 3-clause license, MATE relies on code property graphs (CPGs) for static program analysis and can identify application-specific bugs that depend on implementation details and high-level semantics.  Galois noted that the CPG includes a target’s abstract syntax tree (AST), call graph (CG), control-flow graph (CFG), inter-procedural control-flow graph (ICFG), inter-procedural dataflow-graph (DFG), control-dependence graph (CDG), memory layout and DWARF type graph, points-to graph (PTG), and source-code to machine-code mapping.  The suite includes several applications built on top of the foundation of the CPG, including Flowfinder, MATE Notebooks, MATE POIs, and Mantiserve.  Galois noted that Flowfinder provides a browser-based user interface that helps in exploring a program’s code property graph for interprocedural analysis of dataflows.  It supports expanding and contracting semantic representations of code and data, as well as creating and manipulating visualizations of flows between components.  As for MATE Notebooks, MATE uses a Python API for querying the CPG and offers access to interactive Jupyter notebooks for writing whole-program queries.  Galois noted that the suite also comes with several automated analyses for vulnerability detection, called Points of Interest (POIs), which are written in the same Python API.  Potential vulnerabilities can be viewed in Flowfinder.  In addition to helping researchers hunt for bugs in C and C++ applications, MATE is also meant to help with the integration of the CPG and corresponding Python API into other programs.
 

SecurityWeek reports: "Galois Open Sources Tools for Finding Vulnerabilities in C, C++ Code"

Submitted by Anonymous on