Voltar às atualizações
New releaseJul 24, 2026

semgrep v1.171.0

Análise estática leve para muitas linguagens. Encontre variantes de bugs com padrões que se parecem com código fonte.

Compartilhar

Logotipo do Semgrep

Análise de código em velocidade estonteante.

Homebrew PyPI Documentação Participe do Slack da comunidade Semgrep Problemas bem-vindos! Estrela Semgrep no GitHub Downloads Docker Downloads Docker (Antigo) Siga @semgrep no Twitter


O Semgrep é uma ferramenta de análise estática rápida, open-source, que procura código, encontra bugs e impõe guardrails seguras e padrões de codificação. O Semgrep suporta mais de 30 linguagens e pode ser executado em uma IDE, como verificação pré-commit e como parte de fluxos de CI/CD.

O Semgrep é um grep semântico para código. Enquanto executar grep "2" corresponderia apenas à string exata 2, o Semgrep corresponderia a x = 1; y = x + 1 ao pesquisar por 2. As regras do Semgrep se parecem com o código que você já escreve; sem árvores de sintaxe abstrata, lutas com regex ou DSLs dolorosas.

Observe que, em contextos de segurança, a Semgrep Community Edition perderá muitos verdadeiros positivos, pois só pode analisar código dentro dos limites de uma única função ou arquivo. Se você deseja usar o Semgrep para fins de segurança (SAST, SCA ou secrets scanning), a Plataforma Semgrep AppSec é fortemente recomendada, pois adiciona as seguintes capacidades críticas:

  1. Capacidades de análise principais melhoradas (entre arquivos, entre funções, alcançabilidade de fluxo de dados) que reduzem bastante os falsos positivos em 25% e aumentam os verdadeiros positivos detectados em 250%
  2. Pós-processamento contextual das descobertas com o Semgrep Assistant (IA) para reduzir ainda mais o ruído em ~20%. Além disso, o Assistant enriquece as descobertas com orientação de remediação personalizada e passo a passo, que os humanos consideram acionável >80% das vezes.
  3. Políticas personalizáveis e integração contínua nos fluxos de trabalho dos desenvolvedores, dando às equipes de segurança controle granular sobre onde, quando e como diferentes descobertas são apresentadas aos desenvolvedores (IDE, comentário em PR, etc.)

A Plataforma Semgrep AppSec funciona imediatamente com mais de 20.000 regras proprietárias em SAST, SCA e secrets. As regras Pro são escritas e mantidas pela equipe de pesquisa de segurança do Semgrep e são altamente precisas, o que significa que as equipes AppSec podem se sentir confiantes ao levar as descobertas diretamente aos desenvolvedores sem atrasá-los.

O Semgrep analisa o código localmente no seu computador ou no seu ambiente de build: por padrão, o código nunca é enviado. Comece agora →.

Imagem da CLI do Semgrep

Suporte a linguagens

Semgrep Code suporta mais de 30 linguagens, incluindo:

Apex · Bash · C · C++ · C# · Clojure · Dart · Dockerfile · Elixir · HTML · Go · Java · JavaScript · JSX · JSON · Julia · Jsonnet · Kotlin · Lisp · Lua · OCaml · PHP · Python · R · Ruby · Rust · Scala · Scheme · Solidity · Swift · Terraform · TypeScript · TSX · YAML · XML · Genérico (ERB, Jinja, etc.)

Semgrep Supply Chain suporta 12 linguagens em 15 gerenciadores de pacotes, incluindo:

C# (NuGet) · Dart (Pub) · Go (Go modules, go mod) · Java (Gradle, Maven) · Javascript/Typescript (npm, Yarn, Yarn 2, Yarn 3, pnpm) · Kotlin (Gradle, Maven) · PHP (Composer) · Python (pip, pip-tool, Pipenv, Poetry) · Ruby (RubyGems) · Rust (Cargo) · Scala (Maven) · Swift (SwiftPM)

Para mais informações, consulte Linguagens suportadas.

Primeiros passos 🚀

  1. A partir da Plataforma Semgrep AppSec
  2. A partir da CLI

Para novos usuários, recomendamos começar com a Plataforma Semgrep AppSec porque ela fornece uma interface visual, um projeto de demonstração, workflows de triagem e exploração de resultados, e facilita a configuração em CI/CD. As varreduras ainda são locais e o código não é enviado. Alternativamente, você também pode começar com a CLI e navegar pela saída do terminal para executar buscas avulsas.

Opção 1: Primeiros passos a partir da Plataforma Semgrep Appsec (Recomendado)

Imagem da plataforma Semgrep

  1. Cadastre-se em semgrep.dev

  2. Explore os resultados de demonstração para aprender como o Semgrep funciona

  3. Escaneie seu projeto navegando até Projects > Scan New Project > Run scan in CI

  4. Selecione seu sistema de controle de versão e siga as etapas de integração para adicionar seu projeto. Após esta configuração, o Semgrep escaneará seu projeto após cada pull request.

  5. [Opcional] Se quiser executar o Semgrep localmente, siga os passos na seção da CLI.

Notas:

Se houver algum problema, peça ajuda no Slack do Semgrep.

Opção 2: Primeiros passos a partir da CLI

  1. Instale a CLI do Semgrep

    # Para macOS
    $ brew install semgrep
    
    # Para Ubuntu/WSL/Linux/macOS
    $ python3 -m pip install semgrep
    
    # Para experimentar o Semgrep sem instalação, execute via Docker
    $ docker run -it -v "${PWD}:/src" semgrep/semgrep semgrep login
    $ docker run -e SEMGREP_APP_TOKEN=<TOKEN> --rm -v "${PWD}:/src" semgrep/semgrep semgrep ci
    
  2. Execute semgrep login para criar sua conta e fazer login no Semgrep. Este passo é opcional, mas fazer login no Semgrep lhe dá acesso a:

Categorias