EVERYTHING XIAOMI
Get listed
Flawfinder logo

Flawfinder

Flawfinder is a free tool for finding possible security weaknesses in C and C++ source code.

Place
#8 of 25
Score
6.3
Flawfinder's website

What Flawfinder is

Flawfinder is a free tool for finding possible security weaknesses in C and C++ source code. It scans source text for functions in a built-in database that are associated with security problems, generally excluding comments and strings except for Flawfinder directives. Results are ordered by risk, based on the function and its parameter values; the tool may lower some results when it can determine a construct is not risky. Reports are available as text, HTML, CSV, and SARIF. Its patch option narrows results to changed lines in a unified diff, with a one-line margin around those areas. Installation options include pip, source downloads, and distribution packages, and it requires Python 2.7 or Python 3. The project describes it as CWE-compatible and carries a CII Best Practices passing badge. Flawfinder does not perform control-flow or data-flow analysis, and the project cautions that it can report non-vulnerabilities or miss vulnerabilities. It is an aid for developers, not a replacement for security expertise or human review.

Good

  • Free to use under GPL-2.0+
  • Sorts reported findings by risk
  • Produces text, HTML, CSV, and SARIF reports
  • Patch option focuses on changed code
  • Available for Unix-like systems and Windows

Watch out

  • Does not perform control-flow or data-flow analysis
  • May report non-vulnerabilities or miss vulnerabilities
  • Requires Python 2.7 or Python 3

Who it suits

Flawfinder suits developers reviewing C or C++ source for potential security problems before release. It can also help teams that want text, CSV, or SARIF output for review workflows.

Verdict

Flawfinder can flag potential C and C++ security issues and offers several output formats, including SARIF. Its limited analysis means findings need knowledgeable human review.

Plans and prices

From Flawfinder's own pricing page, checked 4 Oct 2026.

All about pricing
PlanPriceWhat it gives you
FlawfinderFreeFree for anyone to use · GPL-2.0+ open source

The facts

Each one read from Flawfinder's own pages, with the date it was checked.

What it does

CWE and practices
The project says Flawfinder is CWE-compatible and has earned the CII Best Practices passing badge.checked 4 Oct 2026
Detection method
It matches source text against a built-in database of C/C++ functions associated with security problems, ignoring comments and strings except for Flawfinder directives.checked 4 Oct 2026
Installation
The site documents installation with pip, direct source download, and distribution packages; it requires Python 2.7 or Python 3.checked 4 Oct 2026
Integrations
The site describes CSV output as useful for integrating with other tools and also offers SARIF output in JSON format.checked 4 Oct 2026
Intended users
The site presents Flawfinder as an aid for developers seeking to find potential security problems in C/C++ application source before release, and cautions that it does not replace security knowledge or human review.checked 4 Oct 2026
License
Flawfinder is released under GNU General Public License version 2 or later, with SPDX expression GPL-2.0+.checked 4 Oct 2026
Maintainer
David A. Wheeler says he created and maintains Flawfinder, a C/C++ security static analysis tool, since 2001.checked 4 Oct 2026
Output formats
It can produce text, HTML, CSV, and SARIF output.checked 4 Oct 2026
Patch review
The --patch option limits reported hits to lines related to changes in a unified diff, with a one-line margin around changed lines.checked 4 Oct 2026
Purpose
Flawfinder examines C/C++ source code and reports possible security weaknesses sorted by risk level.checked 4 Oct 2026
Risk ranking
Reported hits are sorted by risk, which depends on the function and its parameter values; the tool may reduce some false positives when it determines a construct is not risky.checked 4 Oct 2026
Safe use
The site advises analyzing a copy of source code and warns against loading or diffing hitlists from untrusted sources because they use Python pickle.checked 4 Oct 2026
Security limits
Flawfinder does not perform control-flow or data-flow analysis, and the site warns that some reported hits are not vulnerabilities and some vulnerabilities may not be found.checked 4 Oct 2026
Support
The project directs general questions to its mailing list and specific bugs or feature requests to git or the issue tracker on SourceForge.checked 4 Oct 2026
Supported systems
The site says Flawfinder works on Unix-like systems, including tested GNU/Linux, and on Windows using Cygwin; it also reports that direct Windows use has been reported to work.checked 4 Oct 2026
The full review of Flawfinder

Flawfinder is a free static-analysis tool for developers who want to check C and C++ source for potential security weaknesses before release. It is best treated as a focused first pass: useful for surfacing risky patterns, but not a substitute for deeper analysis or security expertise.

Overview

Flawfinder compares source code with a built-in database of C and C++ functions associated with security problems, while ignoring comments and strings except for its own directives. It ranks reported hits according to the function and its parameter values, and can lower some false positives when it recognizes a construct as non-risky. That prioritization helps developers decide where to look first, but a ranked hit still needs investigation.

The central limitation is its scope: Flawfinder does not analyze control flow or data flow. Some reported hits are not vulnerabilities, and some vulnerabilities may escape detection. It is therefore a useful supplement to review, not a tool for certifying that code is secure.

Key features

  • Risk-ranked results: Ranking gives reviewers a practical starting order, but it cannot replace judgment about whether a particular use is exploitable.
  • Several output formats: Text and HTML support direct review; CSV can feed other tools, and SARIF provides a JSON-based format for compatible workflows.
  • Change-focused scanning: The --patch option limits hits to lines associated with changes in a unified diff, including a one-line margin. This can make review of a patch more focused than examining every reported hit in a file.
  • Developer workflow fit: The tool targets source code and supports CI/CD integration, making it suitable for adding a lightweight check to a development pipeline.
  • Open-source project: Flawfinder is licensed under GPL-2.0+ and is described as CWE-compatible. The project has earned the CII Best Practices passing badge.
  • Installation choices: Installation is documented through pip, direct source download, and distribution packages. It requires Python 2.7 or Python 3.

For safe use, analyze a copy of source code. Hitlists use Python pickle, so the project warns against loading or diffing hitlists from untrusted sources.

Pricing

Flawfinder is free for anyone to use under the GPL-2.0+ open-source license. The free plan costs nothing and has no trial requirement; there are no paid tiers, seat limits, or quotas to weigh. That makes it accessible for individual developers and teams, though free access does not change the need to validate results manually.

Platforms

Flawfinder works on Unix-like systems, including tested GNU/Linux, and on Windows through Cygwin; direct Windows use has also been reported to work. The project documents Python-based installation options. Its self-hosted availability suits teams that want to run source analysis in their own environment rather than rely on a hosted service.

Who it's for

Flawfinder fits C and C++ developers looking for a no-cost way to flag potential security problems during development or before release, especially when they want risk ordering, patch-focused output, or machine-readable results. It is less suitable as the sole security check for a project or for users who need control-flow and data-flow analysis. The project directs general questions to its mailing list and bug reports or feature requests to Git or the SourceForge issue tracker. David A. Wheeler has created and maintained the tool since 2001.

Pros and cons

Pros

  • Free and open source: GPL-2.0+ licensing makes it available without a paid plan.
  • Useful review options: Risk ranking, multiple formats, and patch-limited findings help developers organize follow-up work.
  • Pipeline compatibility: CI/CD integration and CSV or SARIF output can fit into existing review workflows.

Cons

  • Pattern-based coverage is limited: Without control-flow or data-flow analysis, it can miss vulnerabilities and flag code that is not vulnerable.
  • Human review remains essential: Results are potential weaknesses, not confirmed vulnerabilities, so teams need someone able to assess them.
  • Windows use has caveats: Cygwin is the documented route, while direct Windows use is reported to work rather than presented as the tested path.

Alternatives

For a different approach to C and C++ analysis, consider these options:

  • Clang Static Analyzer is a free, open-source analyzer in the Clang project; choose it if you want analysis that also covers Objective-C.
  • Infer is free and supports multiple programming languages; consider it if your codebase extends beyond C and C++.
  • GitHub CodeQL offers a free plan for research and open-source codebases, with a paid GitHub Code Security plan at $30 a month; choose it if those use terms and its extension, web, or self-hosted platform options fit your workflow.
  • Frama-C is a free option for readers considering a platform co-developed by CEA LIST and the Inria Saclay–Île-de-France Toccata team, alongside LRI-CNRS and Université Paris-Sud 11.
  • Polyspace is a paid alternative for readers prepared to use a paid tool.
  • CBMC is a free command-line tool under the BSD 4-clause license; consider it if that licensing and command-line format suit your needs.
  • Perforce QAC (formerly Helix QAC) is a paid alternative.
  • PVS-Studio offers a Team plan for fewer than 10 developers, billed for one or two years, with basic support and one supported platform; choose it if those terms fit your team.

Browse C and C++ Static Analysis Tools, Static Application Security Testing Software, SAST Tools, and Static Analysis Tools for more options.

Verdict

Flawfinder is a sensible choice for developers who want a free, focused way to surface and prioritize possible C and C++ security issues, particularly in patch review or CI/CD. Choose it for a useful early warning layer and flexible output; look elsewhere or add deeper analysis when your security process depends on finding issues beyond risky source patterns.

Alternatives to Flawfinder

All alternatives
  1. 1Semgrep Code logo

    Semgrep Code

    Free planOpen sourceWebAPIExtensionLinux
    8.3From $15 a month
  2. 2Qodana logo

    Qodana

    Free planWebAPIExtensionLinux
    7.9From $5 a month
  3. 3GitHub CodeQL logo

    GitHub CodeQL

    Free planWebExtensionLinuxmacOS
    7.5From $30 a month
  4. 4Understand logo

    Understand

    APIExtensionLinuxmacOS
    7.2From $100 a month
  5. 5

    Infer

    Free planWebLinuxmacOSSelf-hosted
    6.7Free plan
  6. 6

    CBMC

    Free planLinuxmacOSWindows
    6.5Free plan