Retour aux mises à jour
New releaseJul 24, 2026

semgrep v1.171.0

Analyse statique légère pour de nombreux langages. Trouvez des variantes de bogues avec des motifs qui ressemblent à du code source.

Partager

Logo Semgrep

Analyse de code à une vitesse ludicrous.

Homebrew PyPI Documentation Rejoignez le Slack de la communauté Semgrep Les issues sont les bienvenues ! Stars Semgrep sur GitHub Téléchargements Docker Téléchargements Docker (Ancien) Suivre @semgrep sur Twitter


Semgrep est un outil d'analyse statique rapide, open-source, qui recherche du code, trouve des bugs et applique des garde-fous de sécurité et des normes de codage. Semgrep prend en charge 30+ langages et peut s'exécuter dans un IDE, comme vérification pre-commit, et dans le cadre de workflows CI/CD.

Semgrep est un grep sémantique pour le code. Alors que l'exécution de grep "2" ne correspondrait qu'à la chaîne exacte 2, Semgrep correspondrait à x = 1; y = x + 1 lors de la recherche de 2. Les règles Semgrep ressemblent au code que vous écrivez déjà ; pas d'arbres syntaxiques abstraits, de lutte contre les regex ou de DSLs douloureux.

Notez que dans les contextes de sécurité, Semgrep Community Edition manquera de nombreux vrais positifs car il ne peut analyser le code qu'à l'intérieur des limites d'une seule fonction ou d'un seul fichier. Si vous souhaitez utiliser Semgrep à des fins de sécurité (SAST, SCA ou analyse des secrets), la plateforme Semgrep AppSec est fortement recommandée car elle ajoute les capacités critiques suivantes :

  1. Des capacités d'analyse de base améliorées (inter-fichier, inter-fonction, atteignabilité du flux de données) qui réduisent considérablement les faux positifs de 25 % et augmentent les vrais positifs détectés de 250 %
  2. Post-traitement contextuel des résultats avec Semgrep Assistant (IA) pour réduire davantage le bruit d'environ ~20 %. De plus, Assistant enrichit les résultats avec des conseils de correction personnalisés, étape par étape, que les humains jugent exploitables dans >80 % des cas.
  3. Politiques personnalisables et intégration transparente dans les flux de travail des développeurs, donnant aux équipes de sécurité un contrôle granulaire sur où, quand et comment les différents résultats sont présentés aux développeurs (IDE, commentaire PR, etc.)

La plateforme Semgrep AppSec fonctionne immédiatement avec plus de 20 000 règles propriétaires couvrant SAST, SCA et les secrets. Les règles Pro sont écrites et maintenues par l'équipe de recherche en sécurité de Semgrep et sont très précises, ce qui signifie que les équipes AppSec peuvent se sentir en confiance pour apporter les résultats directement aux développeurs sans les ralentir.

Semgrep analyse le code localement sur votre ordinateur ou dans votre environnement de build : par défaut, le code n'est jamais téléchargé. Commencer →.

Image CLI Semgrep

Prise en charge des langages

Semgrep Code prend en charge 30+ langages, notamment :

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 · Générique (ERB, Jinja, etc.)

Semgrep Supply Chain prend en charge 12 langages sur 15 gestionnaires de paquets, notamment :

C# (NuGet) · Dart (Pub) · Go (modules Go, 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)

Pour plus d'informations, consultez Langages pris en charge.

Commencer 🚀

  1. Depuis la plateforme Semgrep AppSec
  2. Depuis la CLI

Pour les nouveaux utilisateurs, nous recommandons de commencer par la plateforme Semgrep AppSec car elle offre une interface visuelle, un projet de démonstration, des workflows de tri et d'exploration des résultats, et rend la configuration dans CI/CD rapide. Les analyses restent locales et le code n'est pas téléchargé. Vous pouvez également commencer par la CLI et naviguer dans la sortie du terminal pour exécuter des recherches ponctuelles.

Option 1 : Commencer depuis la plateforme Semgrep AppSec (Recommandé)

Image de la plateforme Semgrep

  1. Inscrivez-vous sur semgrep.dev

  2. Explorez les résultats de démonstration pour apprendre comment fonctionne Semgrep

  3. Analysez votre projet en naviguant vers Projects > Scan New Project > Run scan in CI

  4. Sélectionnez votre système de contrôle de version et suivez les étapes d'intégration pour ajouter votre projet. Après cette configuration, Semgrep analysera votre projet après chaque pull request.

  5. [Facultatif] Si vous souhaitez exécuter Semgrep localement, suivez les étapes dans la section CLI.

Remarques :

En cas de problème, demandez de l'aide dans le Slack de Semgrep.

Option 2 : Commencer depuis la CLI

  1. Installez la CLI Semgrep

    # Pour macOS
    $ brew install semgrep
    
    # Pour Ubuntu/WSL/Linux/macOS
    $ python3 -m pip install semgrep
    

Catégories