Aller au contenu principal

Comparaison

StaticCodeAudit vs CodeQL

CodeQL est le moteur d'analyse sémantique le plus profond de cette comparaison — c'est ce qu'utilisent les chercheurs sécurité de GitHub eux-mêmes pour trouver de vraies CVE. L'arbitrage : une étape de build pour les langages compilés, aucun support PHP, et un workflow construit autour de GitHub.

Là où le choix diffère

StaticCodeAudit CodeQL
Support PHPOui — un des 8 langagesNon
Étape de build requiseAucune — scanne le source directementOui pour les langages compilés (Java, C/C++, C#, Go, Swift)
Matrices ISO 27001 / ASVS / WCAGIntégréesNon livrées — tags CWE uniquement
Rapport HTML auto-portantOui — plus de 26 graphiques, personnalisable, fonctionne hors-ligneSARIF affiché dans l'UI GitHub — pas d'artefact autonome
Fonctionne entièrement hors GitHubOui — binaire autonome, n'importe quel hébergeur git ou aucunLa CLI existe, mais l'écosystème (UI d'alertes, annotations PR) est natif GitHub
Langages
Voir les vrais benchmarks de détection →
8 (Python, JS/TS, HTML, Java, C#, PHP, YAML, Dockerfile)8 (C/C++, C#, Go, Java/Kotlin, JS/TS, Python, Ruby, Swift)
Coût sur dépôts privés990 € → 30 K€+/an, forfait30 $/contributeur/mois (GitHub Code Security)
Profondeur dataflow sémantiqueRègles AST + taint, cross-file pour Python et JavaDataflow interprocédural complet — le moteur le plus profond

Comparaison fondée sur CodeQL CLI et la tarification GitHub Code Security en août 2026. Sources : codeql.github.com, github.com/github/codeql, page tarifs GitHub.

Choisissez StaticCodeAudit si…

  • ✅ Une partie de votre stack est en PHP — CodeQL ne l'analyse pas du tout.
  • ✅ Vous voulez un scan sans aucune étape de build — pas besoin de compiler C#, Java ou Go juste pour obtenir une base à interroger.
  • ✅ Vous avez besoin d'un dossier de conformité (ISO 27001 Annexe A, ASVS, WCAG) prêt à remettre à un auditeur, pas seulement d'alertes taguées CWE.
  • ✅ Vos dépôts ne sont pas sur GitHub, ou vous avez besoin des résultats comme artefact portable plutôt qu'un flux d'alertes spécifique à une plateforme.

Choisissez CodeQL si…

  • ✅ Votre projet est public sur GitHub — CodeQL y est gratuit et les résultats apparaissent directement sur les pull requests.
  • ✅ Vous avez besoin de l'analyse dataflow sémantique la plus profonde disponible et du temps d'ingénierie pour écrire des requêtes QL custom.
  • ✅ Votre stack est entièrement dans les 8 langages supportés de CodeQL et vous pouvez absorber la charge de build pour les langages compilés.
  • ✅ Vous êtes déjà standardisés sur GitHub Advanced Security pour le secret scanning et la revue de dépendances, et voulez le SAST dans le même flux d'alertes.

Les forces de CodeQL

  • Véritable analyse sémantique dataflow — trace les valeurs tainted à travers les appels de fonction, pas juste du pattern matching.
  • Gratuit sur les dépôts publics via GitHub code scanning (GitHub Actions), sans licence.
  • Large bibliothèque de requêtes ouverte maintenue par GitHub Security Lab et la communauté sur github/codeql, créditée d'avoir trouvé de vraies CVE dans des projets open-source majeurs.
  • Intégration native GitHub — les résultats apparaissent directement en alertes code scanning sur les pull requests, aucun rapport séparé à distribuer.
  • Langage de requête QL vraiment puissant pour écrire des requêtes sémantiques custom précises une fois maîtrisé.

L'architecture en une phrase chacune

StaticCodeAudit

Un binaire unique qui tourne hors-ligne, livre 708 règles curées déjà mappées CWE / WCAG / ISO 27001 / ASVS / NIST CSF. Vous le pointez sur un arbre source — pas de compilation, pas d'extraction de base — et obtenez un rapport HTML prêt à joindre à un dossier d'audit.

CodeQL

Un moteur d'analyse sémantique : il construit d'abord une base CodeQL à partir de votre code — pour les langages compilés, cela signifie compiler réellement le projet — puis exécute des requêtes QL sur cette base pour un traçage dataflow interprocédural authentique. Gratuit et clé en main sur les dépôts GitHub publics via code scanning ; sur dépôts privés ou hors GitHub, cela nécessite la licence GitHub Advanced Security ou une orchestration manuelle via la CLI.

Le vrai choix est entre « je veux le moteur dataflow le plus profond possible et je suis sur GitHub, dans un langage compilé ou scripté supporté » (CodeQL) et « je veux zéro étape de build, une couverture PHP, et des matrices de conformité audit-ready dès le départ » (StaticCodeAudit). Certaines équipes font raisonnablement tourner les deux — CodeQL sur les dépôts GitHub publics pour sa profondeur, StaticCodeAudit sur tout le reste y compris les services PHP et les environnements offline/air-gapped.

Scénarios de prix concrets (annuel)

CodeQL est gratuit sur les dépôts GitHub publics via code scanning. Sur dépôts privés, il nécessite GitHub Advanced Security — spécifiquement l'add-on GitHub Code Security à 30 $/contributeur/mois (depuis la scission GHAS de 2025). StaticCodeAudit est un forfait annuel fixe à chaque tier — pas de comptage de sièges, et fonctionne identiquement que votre dépôt soit public, privé, ou pas du tout sur GitHub.

Scenario StaticCodeAudit CodeQL
Indépendant / mainteneur open-source
1 développeur, dépôt public
990 €/an (tier Solo, curé + rapport audit) Gratuit — CodeQL code scanning sur dépôts publics
Startup / petite équipe
10 développeurs, dépôts privés, ~500 K SLOC
3 990 €/an (Team, fixe) 30 $ × 10 × 12 = 3 600 $/an (GitHub Code Security)
Mid-market / régulé
30 développeurs, dépôts privés, ~2 M SLOC
11 990 €/an (Team Plus, fixe) 30 $ × 30 × 12 = 10 800 $/an (GitHub Code Security)

Prix GitHub Code Security : github.com/pricing, en vigueur après la scission GitHub Advanced Security de 2025 (GitHub Code Security + GitHub Secret Protection vendus séparément). Conversion 1 € ≈ 1,07 USD (mai 2026, indicatif).

Questions fréquentes

CodeQL est-il vraiment gratuit ?

Gratuit sur les dépôts publics via GitHub code scanning — cela inclut la bibliothèque de requêtes complète et l'intégration Actions. Sur dépôts privés, il nécessite l'add-on GitHub Code Security (30 $/contributeur/mois depuis la scission GitHub Advanced Security de 2025), ou l'usage manuel de la CLI CodeQL avec des packs de requêtes communautaires hors du produit facturé par GitHub.

CodeQL supporte-t-il PHP ?

Non. Les langages supportés par CodeQL sont C/C++, C#, Go, Java/Kotlin, JavaScript/TypeScript, Python, Ruby et Swift. PHP n'en fait pas partie et n'a pas été ajouté à ce jour. Si une partie de votre stack est en PHP, elle n'est tout simplement pas scannée par CodeQL — StaticCodeAudit la couvre comme l'un de ses 8 langages.

Pourquoi CodeQL a-t-il besoin d'une « étape de build » pour certains langages ?

CodeQL analyse les langages compilés (Java, C/C++, C#, Go, Swift) en compilant réellement le projet et en observant le build pour construire sa base interrogeable — c'est ainsi qu'il atteint une compréhension sémantique précise, mais cela signifie que l'analyse peut échouer ou nécessiter une reconfiguration dès que le build lui-même casse. Les langages interprétés (Python, JavaScript/TypeScript, Ruby) n'ont pas besoin d'un vrai build, juste d'une extraction du source. StaticCodeAudit ne nécessite jamais d'étape de build pour aucun de ses 8 langages, y compris les compilés comme Java et C#.

L'analyse de CodeQL est-elle vraiment plus profonde que celle de StaticCodeAudit ?

Pour les langages et classes de vulnérabilités qu'il cible, oui — le traçage dataflow interprocédural de CodeQL est l'un des moteurs les plus capables disponibles, et GitHub Security Lab l'a utilisé pour trouver de vraies CVE dans des projets open-source majeurs. StaticCodeAudit utilise des règles AST et taint avec traçage cross-file actuellement pour Python et Java, ce qui couvre les classes de vulnérabilités mappées à ses 708 règles mais n'est pas un moteur de requêtes généraliste comme QL.

Puis-je utiliser les deux ?

Oui, et c'est une configuration raisonnable : CodeQL sur les dépôts GitHub publics pour sa profondeur d'analyse et son intégration PR native, StaticCodeAudit pour les services PHP, les dépôts privés où vous voulez éviter la facturation par contributeur, les environnements offline/air-gapped, ou dès que vous avez besoin d'un rapport HTML prêt pour l'audit plutôt qu'un flux d'alertes natif GitHub.

Voyez à quoi ressemblent 708 règles curées + matrices

Ouvrez le rapport démo en direct — généré sur un vrai codebase, tous les graphiques interactifs, matrices ISO/ASVS/WCAG incluses.

Ouvrir le rapport en direct Réserver une démo guidée