Security Experts:

Connect with us

Hi, what are you looking for?

SecurityWeekSecurityWeek

Vulnerabilities

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

Galois, a firm specialized in the research and development of new technologies, has 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 Defense Advanced Research Project Agency (DARPA).

Galois, a firm specialized in the research and development of new technologies, has 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 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.

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.

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.

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.

Mantiserve is designed to integrate the CPG with the Manticore symbolic execution tool, which enables the analysis of low-level issues, including memory corruption. Manticore can be used in two modes, namely ‘exploration’ (for finding memory corruption during traditional symbolic execution) and ‘under-constrained symbolic execution’ (which starts at an arbitrary function in the program).

MATE’s under-constrained feature, Galois explains, enables users to analyze parts of programs that are too large or complex for analysis using traditional symbolic execution, while also allowing them to provide constraints to eliminate false positives.

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.

Related: Google Open Sources ‘Paranoid’ Crypto Testing Library

Related: GitLab Releases Open Source Tool for Hunting Malicious Code in Dependencies

Related: Meta Releases Open Source Browser Extension for Checking Code Authenticity

Written By

Ionut Arghire is an international correspondent for SecurityWeek.

Click to comment

Expert Insights

Related Content

Cloud Security

VMware vRealize Log Insight vulnerability allows an unauthenticated attacker to take full control of a target system.

IoT Security

Lexmark warns of a remote code execution (RCE) vulnerability impacting over 120 printer models, for which PoC code has been published.

Mobile & Wireless

Apple rolled out iOS 16.3 and macOS Ventura 13.2 to cover serious security vulnerabilities.

Email Security

Microsoft is urging customers to install the latest Exchange Server updates and harden their environments to prevent malicious attacks.

Mobile & Wireless

Technical details published for an Arm Mali GPU flaw leading to arbitrary kernel code execution and root on Pixel 6.

Vulnerabilities

Security researchers have observed an uptick in attacks targeting CVE-2021-35394, an RCE vulnerability in Realtek Jungle SDK.

Vulnerabilities

Google has awarded more than $25,000 to the researchers who reported the vulnerabilities patched with the release of the latest Chrome update.

Application Security

Drupal released updates that resolve four vulnerabilities in Drupal core and three plugins.