Analyse de Code
Analyse automatisée du code pour trouver des vulnérabilités de sécurité, des bugs et des problèmes de qualité de code, typiquement intégrée dans les pipelines CI/CD.
Definition
L'analyse de code est du SAST (Static Application Security Testing) intégré dans les workflows de développement. GitHub Code Scanning utilise CodeQL, un moteur d'analyse sémantique qui interroge le code comme une base de données. GitLab a des templates SAST, et des plateformes comme Snyk et SonarCloud offrent des fonctionnalités similaires. Les analyses s'exécutent sur les pull requests et bloquent le merge quand des problèmes critiques sont trouvés.
Pourquoi c'est important
L'analyse de code capture les vulnérabilités avant la production, quand elles sont les moins chères à corriger. GitHub Advanced Security a trouvé plus de 50 000 CVEs dans le code open-source. En scannant chaque PR, les équipes maintiennent un niveau de sécurité de base et préviennent les régressions.
Exemple
Un développeur ouvre un PR avec une concaténation SQL. GitHub Code Scanning détecte le risque d'injection SQL, ajoute une annotation d'avertissement sur la ligne vulnérable, et bloque le merge du PR jusqu'à ce que le problème soit corrigé.