Anthropic a publié mardi 20 octobre 2026 des travaux montrant comment ses modèles Claude peuvent réduire la quantité de code qu'un attaquant est en mesure d'atteindre, plutôt que de traquer les bogues un par un. Signé par Chris Rohlf, de l'équipe Frontier Red Team, le billet explique que Claude a passé au crible 25 projets open source, soit plus de cinq millions de lignes en C, C++, Java, PHP et Python, et signalé 493 problèmes. Le résultat le plus tangible concerne OpenSSH, dont les mainteneurs ont livré des correctifs dans la version 10.6 après avoir reçu les conclusions et les patchs d'Anthropic.

Le principe est limpide : une vulnérabilité que personne n'a encore trouvée fait moins de dégâts si le code qui la contient reste inaccessible. Anthropic a cherché trois types de situations. D'abord, du code exposé par la configuration livrée alors qu'aucune fonction activée par défaut n'en a besoin. Ensuite, des couples de réglages anodins pris séparément mais qui neutralisent une protection une fois combinés. Enfin, du code complexe et sensible qui s'exécute avant l'authentification, sans action de la victime ou avant un changement d'état du protocole. Placer ce code derrière une barrière ne supprime pas les bogues, mais en atténue la gravité.

Claude a commencé par recenser plus de 17 000 options de configuration dans l'ensemble des projets, dont 3 842 pilotaient un contrôle ou une fonction touchant à la sécurité. Anthropic a classé les projets en services publics, services réservés aux utilisateurs authentifiés et outils privés. Les onze projets de la deuxième catégorie présentaient tous du code joignable à tort : 93 surfaces superflues avant authentification dans la configuration par défaut, 37 endroits où du code tournait ou un état était enregistré avant la connexion, et 61 combinaisons de réglages affaiblissant un contrôle préalable. Aucun de ces cas n'était exploitable isolément, assure l'entreprise.

Les conflits de configuration ont livré certains des constats les plus frappants. Claude a relevé 162 combinaisons sensibles acceptées sans erreur, sans avertissement et sans documentation ; dans 94 d'entre elles, une protection se désactivait en silence. Un même défaut est apparu dans quatre projets sans lien : des règles d'interdiction rédigées avec des noms d'hôte ne correspondent jamais lorsque la résolution DNS inverse est coupée, si bien que la liste laisse tout passer. Ailleurs, deux options combinées faisaient qu'un serveur exigeant des certificats clients acceptait n'importe qui, un conflit présent depuis 21 ans d'après Anthropic.

Rapporté au volume de code, OpenSSH est le projet qui a le plus gagné. Dans la version 10.4, Claude a retrouvé environ 4 500 lignes du nouveau code de signature post-quantique ML-DSA-44 qu'un client non authentifié pouvait solliciter avec les réglages d'origine, même lorsque l'administrateur avait exclu cet algorithme. Anthropic évalue cette part à près de 16 % du code exécuté avant authentification dans un sshd standard. La version 10.5 a avancé la vérification, mais Claude y a ensuite découvert deux contournements : annoncer un type de clé tout en en envoyant un autre, et la vérification des signatures d'autorité de certification avant toute consultation de la configuration. Après plusieurs allers-retours avec les mainteneurs, les contrôles ont été intégrés à l'analyseur lui-même. Selon Anthropic, la version 10.6 a retiré environ un cinquième du code joignable avant connexion dans une compilation par défaut.

Anthropic a regroupé la méthode dans une compétence Claude réutilisable : trois passes repartant chacune d'un contexte vierge, une confirmation des résultats par traçage dynamique et l'exécution des tests du projet pour vérifier que les nouvelles barrières ne modifient pas le comportement par défaut. Les changements qui toucheraient des configurations non standard sont laissés à l'appréciation d'un humain. L'entreprise dit travailler à l'intégrer à OSS-Scanner.

Tous ces chiffres émanent d'Anthropic. Le billet ne nomme pas la plupart des 25 projets, ne précise pas combien des 493 problèmes ont été acceptés par les mainteneurs et ne fournit ni taux de faux positifs ni coûts ; seul le cas OpenSSH est détaillé.

Références