Thursday, November 5, 2026
Explainer

Static application security testing (SAST): what it catches, what it misses

SAST tools scan source code for security flaws before it runs. OWASP's own assessment is that they catch a useful slice of problems, and miss a lot.

A code editor showing source code

Static application security testing, or SAST, analyzes an application's source code, without running it, to find security weaknesses. It is usually one of the first security checks a development team adds, because it can run automatically on every code change.

What SAST does well

According to OWASP, the open security community behind the OWASP Top 10, source code analysis tools have three main strengths. They scale, running on every build or nightly without extra effort. They find well-known flaw types such as SQL injection and buffer overflows with confidence. And they point developers to the exact file and line, which makes fixes quick.

What it misses

OWASP is equally direct about the limits. In its words, "Current SAST tools are limited." Among the weaknesses it lists:

  • Many types of flaw are hard to find automatically, including authentication problems, access control issues and insecure use of cryptography.
  • The tools find only a small share of an application's security flaws.
  • They produce many false positives, which take time to triage.
  • They usually can't see configuration problems, because configuration isn't in the code.
  • Many can't analyze code that doesn't compile.

That is why SAST is one layer, not a security program. Teams pair it with dependency scanning for vulnerable open-source libraries, dynamic testing of the running application, and human code review.

Choosing a tool

OWASP's selection criteria, in order of how often they decide a purchase:

Criterion Why it matters
Language and framework support A tool that doesn't understand your frameworks misses their flaws
Accuracy False positives waste developer time; false negatives give false comfort
CI/CD integration It has to run automatically on every change
IDE plugins Developers fix issues faster when they see them while writing code
Source or binary analysis Some tools need buildable source code
License cost Pricing models vary widely

OWASP also points to the OWASP Benchmark project as a way to compare tool accuracy.

Rolling it out without stalling developers

Start in report-only mode, so findings are visible without blocking merges. Fix or suppress the backlog in the most critical applications first. Then block only high-confidence, high-severity findings on new code. Teams that turn on blocking for every finding on day one usually end up turning the tool off.

What IT teams should do

  • Check that every production application has some form of automated code scanning.
  • Add dependency scanning alongside SAST, since vulnerable libraries are a common entry point.
  • Start new SAST tools in report-only mode, then block high-severity findings on new code.

Sources