CyberGlossary

Segurança de aplicações

SAST (Static Application Security Testing)

Também conhecido como: Análise estática, Teste caixa-branca

Definição

Análise automatizada de código-fonte, bytecode ou binários — sem executar — para encontrar fraquezas de segurança como injeção, APIs inseguras ou criptografia fraca.

Ferramentas SAST transformam o código em representações intermediárias (AST, grafos de controle e fluxo de dados) e aplicam regras ou análise de taint para detectar padrões inseguros associados a CWEs. Por não executarem o código, integram-se naturalmente a IDEs, hooks pre-commit e pipelines de CI/CD, e podem analisar código ainda não publicado. O SAST é forte em bugs determinísticos (SQL injection, sinks de XSS, segredos no código, criptografia fraca), mas gera falsos positivos e perde problemas que só aparecem em tempo de execução; por isso é combinado com SCA e DAST. Ferramentas comuns: Semgrep, GitHub CodeQL, SonarQube, Checkmarx e Fortify.

Exemplos

  • Executar Semgrep com um ruleset OWASP Top 10 em cada pull request.
  • Usar GitHub CodeQL para detectar path traversal em um serviço Java antes do merge.

Termos relacionados