GitHub a détaillé le 4 novembre les changements de CodeQL 2.27.4. Cette version affine des requêtes pour Java et Kotlin, Rust et C ou C++. Elle modifie aussi l’étiquetage CWE de certaines règles. Pour une équipe qui compare ses résultats d’analyse d’une semaine à l’autre, un rapport qui évolue peut donc refléter un nouveau moteur ou de nouvelles requêtes, même lorsque le dépôt n’a reçu aucun correctif.
Ce qui change dans les requêtes
Le changelog de GitHub cite la détection d’injections dans les journaux en Java et Kotlin. La règle reconnaît désormais davantage de mécanismes d’assainissement issus notamment du JDK, de bibliothèques Apache Commons et de Spring. Des requêtes sur les chemins de fichiers reconnaissent aussi certaines vérifications ou transformations de chaînes supplémentaires.
En Rust, GitHub annonce moins de faux positifs dans des requêtes liées à la taille d’une allocation, à l’injection dans les journaux et à l’écriture de données en clair dans les journaux. Côté C et C++, le moteur ajuste entre autres sa lecture de certaines opérations sur des pointeurs vers des tampons d’octets. Des règles sur les variables inutilisées tiennent également compte de l’attribut indiquant qu’une variable peut légitimement ne pas être utilisée.
La disparition d’une alerte doit garder une explication
Imaginez une équipe qui suit une alerte sur un journal d’application depuis deux semaines. La règle la faisait remonter à chaque analyse. Après le passage à la nouvelle version, elle disparaît sans que le code bouge. Le premier contrôle consiste à comparer le commit, la configuration et la version d’analyse. Si le moteur reconnaît désormais une protection déjà en place, la disparition peut être cohérente. Gardez l’exemple et la raison de la clôture pour qu’un collègue puisse la vérifier.
Le cas inverse mérite la même attention. Si une alerte reste ouverte après une réduction de faux positifs annoncée pour sa famille, l’équipe doit toujours examiner la valeur analysée et la protection qu’elle lui applique. Une règle affinée n’établit pas à elle seule qu’une correspondance particulière soit dangereuse. Notre article sur le périmètre des évaluations de sécurité dans GitHub rappelle que l’état d’une protection et le résultat observé constituent deux informations distinctes.
Certains tableaux de bord peuvent changer de catégorie
GitHub retire aussi la référence CWE-730 de plusieurs requêtes liées aux expressions régulières et à d’autres scénarios. Une métadonnée de classification sert notamment à ranger les alertes et à les agréger. Son retrait peut changer le résultat d’un filtre sans supprimer la requête qui produit le signal. Un rapport de conformité trié seulement par cette étiquette mérite donc une comparaison par identifiant de règle.
Si un tableau alimente un suivi régulier, relevez les règles avant et après la mise à jour et comparez les exemples dans une même branche. Expliquez séparément une baisse due à un correctif, une baisse due à un filtrage plus précis et une variation due à un changement de catégorie. Les trois cas ont des implications différentes pour la personne qui lit le tableau.
Comment comparer les résultats sans perdre la trace
Sur un dépôt de référence, conservez le rapport précédent et relancez l’analyse avec une configuration comparable. Relevez les identifiants de requêtes qui changent et choisissez un exemple de chaque famille touchée. Si une alerte disparue correspondait à une décision de sécurité importante, vérifiez le mécanisme d’assainissement dans le code avant de fermer le ticket.
Notre article sur la vérification des résultats après une analyse de dépôt aborde la même exigence : il faut pouvoir retrouver le contexte qui a produit un résultat. CodeQL 2.27.4 change la lecture de motifs précis. La comparaison la plus utile dira quelle requête a changé, pourquoi un signal a évolué et si l’équipe doit modifier le code ou seulement sa façon de lire le rapport.

Je suis Romain, rédacteur passionné par tout ce qui touche au high-tech, à la crypto, et à l’innovation. Diplômé d’une école de marketing à Paris, je mets ma plume au service des dernières tendances et avancées technologiques.






