Skip to main content

Lapack security analysis

Goal

Lear how to use Codee for Static Application Security Testing (SAST) and generate a SAST report for Lapack.

Getting started

Make sure you have Codee installed and available on your machine and clone the Lapack repository.

git clone https://github.com/Reference-LAPACK/lapack.git

Now navigate to the source code:

cd lapack

Walkthrough

1. Generate the compile_commands.json

The compile_commands.json can be obtained using CMake. Make sure to obtain a complete compilation of the project:

mkdir build && cd build && \
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. && \
cmake --build . -j --target install

2. Run Codee SAST report

New feature

Running codee commands with the additional --db codee.db flag enables Incremental Static Analysis. This reduces runtime by storing analysis results and reusing them in subsequent analysis, reanalyzing only the source code that has changed.

To obtain Codee SAST results for the CWE standard execute the following command:

codee screening --sast --db code.db

You should have obtained a result similar to this:

<...>

0 file analyses reused from cache, 4218 files analyzed from scratch
4218 target files, 4232 functions, 29196 loops, 1474416 SLOCs successfully analyzed (46784 checkers) and 0 non-analyzed files in 19 m 22 s