liveBook · Manning

Static application security testing

As explained in Secure APIs

Static application security testing analyzes application source code or related artifacts without executing the application to identify security flaws and misconfigurations.

Static application security testing (SAST) examines application code and related artifacts without running the application, looking for common security flaws, vulnerabilities, and misconfiguration errors. section 1.5

Run SAST during implementation and connect it to CI/CD so insecure code can be identified before release. It complements unit, integration, fuzz, and API security testing rather than replacing them. section 1.5

A practical security workflow places SAST alongside:

  • Secure implementation practices such as validating and sanitizing data, parameterizing database queries, and using secure data-handling patterns. section 1.5
  • Software composition analysis (SCA), which checks third-party dependencies for known CVEs rather than examining application code for common flaws. section 1.5
  • Tools such as Snyk, Semgrep, Aikido, and Checkmarx. section 1.5
Figure 1.6 Security by design fits into every step of the API development cycle. It encourages us to approach design, implementation, testing, and operations from a security point of view.
figure

Use the API development-cycle figure to place SAST within security-minded design, implementation, testing, and operations. section 1.5

How Secure APIs covers it

How deep it goes
Identifies common code flaws, vulnerabilities, and misconfigurations, while deferring runtime, dependency, fuzz, and integration concerns to other tests.
Examples
Uses Snyk, Semgrep, Aikido, and Checkmarx to inspect application code.
What it assumes
Assumes an implementation workflow with application code, unit tests, and a CI/CD pipeline.
What you can do after
Diagnose code-level security flaws and misconfigurations before deployment.
How it connects
Connects SAST with software composition analysis, unit testing, API security testing, fuzz testing, and CI/CD.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Secure APIs. The section links point to the parts of the book it draws on.