Voltar a todos os artigos
Segurança

Ferramentas SAST open source em 2026: passámos 20 a pente fino no GitHub, linguagem a linguagem

Que ferramentas SAST open source vale a pena correr em 2026? Vimos 20 no GitHub a 1 de outubro: licença, última versão, SARIF e as gratuitas que não são abertas.

Nesta página
  1. Que ferramentas SAST open source continuam a ser mantidas em 2026?
  2. Que ferramenta SAST open source deves usar para a tua linguagem?
  3. O Semgrep ainda é open source?
  4. Que ferramentas SAST «gratuitas» não são, afinal, open source?
  5. Como se correm várias ferramentas SAST open source em conjunto?
  6. O que é que as ferramentas SAST open source deixam a teu cargo?
  7. Onde entra a CybeDefend?
  8. Perguntas frequentes
  9. Quais são as melhores ferramentas SAST gratuitas e open source?
  10. O Semgrep continua a ser gratuito e open source?
  11. O SonarQube é gratuito ou pago?
  12. O CodeQL é open source e gratuito?
  13. Que ferramenta SAST open source usar em Python?
  14. Qual a diferença entre SAST e SCA?
  15. O que é o formato SARIF?

Ferramentas SAST open source verificadas no GitHub a 1 de outubro de 2026: Opengrep, Bandit, gosec e Psalm ativas, o Horusec sem nova versão desde 2022, o Brakeman sob uma licença não aprovada pela OSI, a CLI do CodeQL limitada a código open source e à investigação.

O conjunto SAST open source que vale a pena correr em 2026 é um motor multilinguagem, o Opengrep ou o Semgrep Community Edition, mais o especialista de cada linguagem principal: Bandit para Python, gosec para Go, SpotBugs com Find Security Bugs para Java, Psalm para PHP, Cppcheck ou Flawfinder para C e C++. Passámos as vinte ferramentas deste guia a pente fino no GitHub a 1 de outubro de 2026: a licença, a última versão publicada e a forma como cada uma escreve SARIF, o formato que te deixa juntar os resultados de todas. Há três conclusões que saltam à vista. O Horusec não publica uma versão desde junho de 2022. O Brakeman e o Bearer podem correr de graça sobre o teu próprio código, mas não são open source: a licença do Brakeman proíbe a revenda comercial e o Bearer é source-available. E a CLI do CodeQL, que aparece muitas vezes nas listas de ferramentas gratuitas, não pode correr sobre código privado sem uma licença paga do GitHub.

Que ferramentas SAST open source continuam a ser mantidas em 2026?

Dezoito das vinte ferramentas abaixo continuam a ser mantidas, e duas pararam. A tabela reproduz o que a API do GitHub devolveu a 1 de outubro de 2026: a licença que cada repositório declara, a última versão com tag e a nossa leitura do estado de cada projeto. As estrelas medem atenção, não manutenção, por isso ficaram de fora.

FerramentaO que analisaLicençaÚltima versãoEstado
OpengrepMais de 30 linguagensLGPL-2.1v1.30.0, 7 set. 2026Ativa
Semgrep Community EditionMais de 30 linguagensMotor LGPL-2.1, regras sob licença própriav1.178.0, 23 set. 2026Ativa
SonarQube Community BuildMuitas linguagensLGPL-3.026.9, 2 set. 2026Ativa
CodeQL CLIC/C++, C#, Go, Java, Kotlin, JavaScript, TypeScript, Python, Ruby, Rust, Swift, GitHub ActionsGitHub CodeQL Terms, não é open sourcev2.27.1, 22 set. 2026Ativa, com restrições
Datadog Static AnalyzerVárias linguagens, rulesets da DatadogApache-2.00.9.8, 25 set. 2026Ativa
OpenAI Codex SecurityBaseada num modelo, qualquer linguagemCliente Apache-2.00.1.30, 23 set. 2026Ativa, exige conta OpenAI
JoernC/C++, Java, JavaScript, Python, PHP, Go, Ruby, Swift, C#, Kotlin, bináriosApache-2.0v4.0.644, 1 out. 2026Ativa
Bearer CLIGo, Java, JavaScript, TypeScript, PHP, Python, RubyElastic License 2.0v2.1.1, 24 ago. 2026Ativa, source-available
Horusec18 linguagensApache-2.0v2.8.0, 8 jun. 2022Último commit em agosto de 2023
BanditPythonApache-2.01.9.4, 25 fev. 2026Ativa
gosecGoApache-2.0v2.29.0, 26 ago. 2026Ativa
BrakemanRuby on RailsBrakeman Public Use Licensev8.1.0, 30 set. 2026Ativa, não é open source
SpotBugs + Find Security BugsJava e bytecode JVMLGPL-2.1 + LGPL-3.04.10.4, 20 ago. 2026 + 1.14.0, 17 jun. 2025Ativa
eslint-plugin-securityJavaScript, Node.jsApache-2.0v4.2.0, 1 out. 2026Ativa
njsscanNode.jsLGPL-3.01.0.1, 21 set. 2026Ativa
PsalmPHPMIT6.19.1, 29 set. 2026Ativa
FlawfinderC/C++GPL-2.0Sem versão no GitHub, último commit a 17 mai. 2026Mantida
CppcheckC/C++GPL-3.02.22.0, 19 set. 2026Ativa
mobsfscanAndroid e iOS: Java, Kotlin, Swift, Objective-CLGPL-3.01.0.1, 21 set. 2026Ativa
Security Code ScanC#, VB.NETLGPL-3.05.6.7, 5 set. 2022Último commit em novembro de 2022

Esta tabela esconde dois avisos. O Horusec não está arquivado e continua a aparecer em listas de «ferramentas SAST gratuitas», mas o ramo principal não mexe desde 7 de agosto de 2023. E o analisador open source clássico para .NET, o Security Code Scan, parou em 2022: hoje, uma equipa de C# apoia-se num motor multilinguagem e não num especialista.

Que ferramenta SAST open source deves usar para a tua linguagem?

Um especialista para a tua linguagem principal, ao lado de um motor multilinguagem. O especialista conhece a fundo os idiomas do framework e as suas APIs perigosas; o motor apanha os padrões que atravessam várias linguagens e permite-te escrever uma única regra para o repositório inteiro.

LinguagemEspecialistaNotas
PythonBanditInstala o extra [sarif] para teres saída SARIF
GogosecSARIF nativo
Java, JVMSpotBugs com Find Security BugsAnalisa o bytecode compilado, por isso compila primeiro
JavaScript, Node.jseslint-plugin-security, njsscanO ESLint precisa de um formatter SARIF à parte
PHPPsalmA taint analysis corre numa passagem própria
Ruby on RailsBrakemanGratuito para analisar o teu próprio código, mas não é open source
C, C++Cppcheck, FlawfinderO Cppcheck escreve SARIF a partir da 2.16.0
Android, iOSmobsfscanTambém cobre Swift e Objective-C
C#, VB.NETNenhum mantido nesta listaUsa um motor multilinguagem

Quanto ao motor, o Opengrep e o Semgrep Community Edition leem a mesma sintaxe de regras, por isso a escolha é sobretudo uma questão de governação, que tratamos na secção seguinte. O Joern é outro tipo de ferramenta: constrói um code property graph que és tu a consultar, poderoso para investigação e auditorias feitas à medida. O scanner do Joern não tem nenhuma opção SARIF, embora a consola de queries consiga exportar as descobertas em SARIF.

O Semgrep ainda é open source?

O motor é. O Semgrep Community Edition tem licença LGPL-2.1 e publicou a v1.178.0 a 23 de setembro de 2026. À volta dele, porém, mudaram duas coisas. As regras que o Semgrep publica no seu registry estão sob a Semgrep Rules License v1.0, uma licença própria que não é open source, por isso lê-a antes de reutilizares essas regras dentro de um produto comercial. E um grupo de fornecedores de AppSec fez um fork do motor com o nome Opengrep, num repositório criado a 14 de dezembro de 2024. O README dá a razão numa linha: o projeto «was created when Semgrep moved critical features behind a commercial licence», ou seja, nasceu quando o Semgrep passou funcionalidades críticas para trás de uma licença comercial.

O Opengrep continua LGPL-2.1, corre as regras Semgrep existentes sem alterações, escreve JSON e SARIF e acrescentou taint tracking dentro de um mesmo ficheiro (--taint-intrafile). Os apoiantes indicados no README são a Aikido, a Amplify, a Endor Labs, a Kodem e a Orca Security. Escolhe o Semgrep se queres as regras geridas e a plataforma da empresa; escolhe o Opengrep se preferes que a governação do motor fique fora das mãos de uma única empresa. As tuas regras funcionam nos dois.

Que ferramentas SAST «gratuitas» não são, afinal, open source?

Quatro ferramentas deste guia não custam nada a descarregar e, mesmo assim, limitam a forma como as podes usar. Confirma estes pontos antes de qualquer uma delas chegar ao teu CI:

  • CLI do CodeQL. É distribuída sob os GitHub CodeQL Terms and Conditions, e não sob uma licença open source. Sem licença paga, podes usá-la para investigação académica, para demonstrações e para analisar código open source publicado sob uma licença aprovada pela OSI; o uso automatizado em CI só é permitido quando esse código open source está alojado no GitHub.com. O código privado exige uma licença paga, a que os termos ainda chamam GitHub Advanced Security e que o GitHub vende hoje como GitHub Code Security. As queries têm licença MIT, o motor não.
  • Brakeman. A Brakeman Public Use License, cujo texto indica a Synopsys como licenciante, classifica «using the Software to analyze Licensee's software», ou seja, usar o software para analisar o software do próprio licenciado, como uso não comercial: analisar o teu próprio código Rails não custa nada. O que exige licença paga é o uso comercial, como oferecer o Brakeman como serviço gerido ou SaaS, ou incluí-lo dentro de um produto. É essa restrição que impede que seja uma licença open source. Só o código cujo commit é anterior a 15 de junho de 2018 está sob MIT.
  • Bearer CLI. A Elastic License 2.0 faz dele uma ferramenta source-available: o README diz que a podes «use it freely inside your organization», ou seja, usar livremente dentro da tua organização, enquanto mais linguagens e a análise entre ficheiros ficam reservadas a uma edição paga vendida pela Cycode.
  • OpenAI Codex Security. A CLI e o SDK são Apache-2.0, mas a análise corre nos modelos da OpenAI. Inicias sessão, ou defines OPENAI_API_KEY no CI, e o teu código segue para a OpenAI. Algumas descobertas exigem aprovação através do programa Trusted Access for Cyber da OpenAI.

Os planos gratuitos das plataformas comerciais pertencem à mesma família: gratuitos para começar, nunca open source, e o teu código é analisado na cloud do fornecedor. Para muitas equipas, é uma troca razoável. Só que é uma troca diferente.

Como se correm várias ferramentas SAST open source em conjunto?

Põe cada ferramenta a escrever SARIF 2.1.0, o standard da OASIS para resultados de análise estática, e depois junta os ficheiros. Cada comando abaixo vem da documentação ou do código-fonte do próprio projeto, verificado a 1 de outubro de 2026:

# Motor multilinguagem
opengrep scan --sarif-output=opengrep.sarif -f rules/ .

# Python
pip install "bandit[sarif]"
bandit -r . -f sarif -o bandit.sarif

# Go
gosec -fmt sarif -out gosec.sarif ./...

# Java: compila primeiro, o SpotBugs lê bytecode
spotbugs -textui -pluginList findsecbugs-plugin.jar -sarif=spotbugs.sarif target/app.jar

# JavaScript: o SARIF precisa do formatter da Microsoft
npm install --save-dev @microsoft/eslint-formatter-sarif
npx eslint -f @microsoft/eslint-formatter-sarif -o eslint.sarif .

# Node.js
njsscan --sarif -o njsscan.sarif .

# PHP: a taint analysis é uma passagem à parte
psalm --taint-analysis --report=psalm.sarif

# C e C++
cppcheck --output-format=sarif --output-file=cppcheck.sarif .
flawfinder --sarif ./ > flawfinder.sarif

Há dois pormenores que te poupam uma tarde. O ESLint não tem saída SARIF incorporada: -f sarif falha, e o formatter é um pacote à parte, que vem do SARIF SDK da Microsoft. E o SonarQube Community Build importa SARIF através de sonar.sarifReportPaths, mas não encontrámos nenhuma exportação SARIF documentada, por isso fica no fim de uma pipeline, nunca a meio.

Motor + especialistasUm ficheiro SARIF por ferramentaJuntar e deduplicarTriar e guardar o histórico
Cada scanner escreve SARIF. A parte difícil começa depois da junção: a mesma falha reportada duas vezes, uma descoberta descartada que volta na execução seguinte, nenhum histórico para mostrar ao auditor.

Um ficheiro junto não é um backlog triado. Ficam três lacunas por resolver:

  • Duplicados. A mesma injeção SQL num serviço Python pode voltar do Opengrep e do Bandit com dois IDs de regra diferentes, e as duas descobertas não sabem uma da outra.
  • Estado da triagem. Uma descoberta que descartaste como falso positivo não fica descartada na execução seguinte, a não ser que alguma coisa se lembre dessa decisão.
  • Histórico. Às equipas que preparam uma auditoria SOC 2 ou ISO 27001 pede-se que mostrem que as descobertas são acompanhadas e corrigidas ao longo do tempo. Um monte de ficheiros SARIF perdidos nos logs do CI não o demonstra por si só.

É essa a parte que as equipas acabam por construir, ou por comprar.

O que é que as ferramentas SAST open source deixam a teu cargo?

O motor é gratuito. As regras, a triagem e a manutenção saem do teu tempo:

Regras

Um motor vale o que valem as suas regras. As regras do registry do Semgrep têm licença própria, e o repositório de regras do Opengrep, que se apresenta como um fork do repositório do Semgrep feito em dezembro de 2024, não recebe nenhum commit desde janeiro de 2025. Prepara-te para manter regras por tua conta.

Manutenção

Vinte projetos são vinte ritmos de versões diferentes, licenças que podem mudar e ferramentas que param, como aconteceu ao Horusec e ao Security Code Scan.

Onde entra a CybeDefend?

Se preferes não montar nem manter esta stack, a CybeDefend corre análise SAST, SCA, de segredos, de IaC, de contentores e de CI/CD num só sítio, com as descobertas ordenadas por reachability, para que as que aparecem no topo sejam as que um atacante consegue mesmo alcançar. A página SAST mostra como. E se o teu código é cada vez mais escrito por agentes de código, o VibeDefend entrega ao agente as descobertas de SAST, SCA, segredos, IaC e CI/CD enquanto ele escreve, em vez de esperar pelo pull request. Para uma comparação das ferramentas comerciais por necessidade, vê as melhores ferramentas de segurança de código de IA em 2026.

Perguntas frequentes

Quais são as melhores ferramentas SAST gratuitas e open source?

Um motor multilinguagem mais um especialista por linguagem. Para o motor, o Opengrep ou o Semgrep Community Edition; depois, Bandit para Python, gosec para Go, SpotBugs com Find Security Bugs para Java, Psalm para PHP, Cppcheck e Flawfinder para C e C++, eslint-plugin-security e njsscan para Node.js e mobsfscan para mobile. Todas eram mantidas a 1 de outubro de 2026 e todas conseguem produzir SARIF, o ESLint através de um formatter à parte.

O Semgrep continua a ser gratuito e open source?

O motor do Semgrep Community Edition é gratuito e open source, sob LGPL-2.1. As regras do registry do Semgrep estão sob a Semgrep Rules License v1.0, que não é uma licença open source, e a plataforma paga do Semgrep acrescenta funcionalidades por cima. O Opengrep é um fork LGPL-2.1 que corre as mesmas regras.

O SonarQube é gratuito ou pago?

As duas coisas. O SonarQube Community Build é gratuito e open source, sob LGPL-3.0; a versão mais recente a 1 de outubro de 2026 era a 26.9, publicada a 2 de setembro. A SonarSource vende edições pagas com mais funcionalidades. O Community Build consegue importar SARIF de outros scanners; não encontrámos nenhuma exportação SARIF documentada.

O CodeQL é open source e gratuito?

Não é open source. As queries do CodeQL têm licença MIT, mas a CLI do CodeQL é distribuída sob os termos próprios do GitHub. É gratuita para investigação académica, demonstrações e análise de código open source; analisar código privado exige uma licença paga do GitHub.

Que ferramenta SAST open source usar em Python?

O Bandit, mantido pela Python Code Quality Authority e com licença Apache-2.0, cuja versão 1.9.4 saiu em fevereiro de 2026. Junta-lhe um motor multilinguagem como o Opengrep para as regras específicas do teu projeto. Instala bandit[sarif] para teres saída SARIF.

Qual a diferença entre SAST e SCA?

O SAST lê o código que a tua equipa escreve e procura padrões vulneráveis, como uma injeção ou um segredo escrito diretamente no código. O SCA lê os manifestos de dependências e os lockfiles e reporta as vulnerabilidades conhecidas nos pacotes open source que usas. A maioria das equipas precisa dos dois, porque a maior parte do código que entrega são dependências.

O que é o formato SARIF?

É o Static Analysis Results Interchange Format, um standard da OASIS. A versão 2.1.0 é um formato JSON que a maioria das ferramentas SAST sabe escrever, o que permite juntar os resultados de vários scanners, enviá-los para uma plataforma de alojamento de código ou importá-los numa ferramenta de gestão de vulnerabilidades.

Instala o VibeDefend em 5 segundos.

Um só comando liga à CybeDefend todos os agentes de programação da tua máquina: as tuas regras de negócio, os teus referenciais de conformidade e proteções que bloqueiam ações destrutivas antes de serem executadas.

Instalar em 5 segundosNode 18.17+
npx -y @cybedefend/vibedefend@latest install
Deteta automaticamente
  • Claude CodeClaude Code
  • CursorCursor
  • OpenAI CodexOpenAI Codex
  • WindsurfWindsurf
  • GitHub CopilotVS Code Copilot