La future version de Google Chrome 100 pourrait connaître des soucis en 2022 sur certains sites. La cause ? Son numéro de version, qui ne sera pas toujours bien compris.

C’est un problème encore relativement lointain, mais qui pourrait s’avérer tout à fait ennuyant si rien n’est fait d’ici là pour le résoudre. Mais c’est un souci important, car il va affecter Google Chrome courant 2022. Et comme il s’agit du navigateur web le plus utilisé au monde, ce sont des dizaines de millions d’internautes qui pourraient se retrouver en difficulté.

Chrome 100… ou Chrome 10 ?

Le souci a été exposé le 22 décembre par le site 9 to 5 Google, qui consacre sa ligne éditoriale au suivi de l’écosystème de Google. Avec l’arrivée de Chrome 100, version qui est attendue dans moins d’une centaine de jours (la branche doit arriver en mars 2022), un bug d’affichage pourrait casser l’accès à divers sites web, en tout cas ceux développés avec le kit Duda.

Le problème, exposent nos confrères, figure dans la manière dont Duda regarde la version du navigateur web de l’internaute. C’est la chaîne d’information dite du « User Agent » (agent de l’utilisateur), qui sert à donner des éléments sur le navigateur utilisé. Ainsi, dans le cas de Google Chrome, avec la dernière version, la donnée est la suivante (le gras est de nous) :

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36

On peut ainsi lire que dans le cas de Chrome, la version actuelle est la branche 96, avec une série de nombres successifs pour détailler sa sous-version. Or dans le cas de Duda, ne sont contrôlés que les deux premiers chiffres après la barre oblique. Donc, tout va bien quand le numéro de version n’en contient que deux : 96, 97, 98 et 99. Mais avec 100, Duda ne lira que 10, ignorant le deuxième zéro.

brise-casse-faille-breche-vulnerabilite
Le bug à venir avec Google Chrome 100 si rien n’est fait. Allégorie. // Source : Lenz

De fait, Duda comprendra qu’il ne s’agit pas de la version 100 de Chrome, mais de Chrome 10. Ce ne serait pas un problème si Duda acceptait la visite de navigateurs en apparence aussi datés (Chrome 10 est sorti en 2011). Mais, ajoute 9 to 5 Google, Duda bloque automatiquement toutes les versions antérieures à Chrome 40 (qui date de 2015). On devine donc le problème.

Tous les navigateurs futurs de Google Chrome (101, 102, mais aussi peut-être un jour 1 000 et ainsi de suite), vont dont se retrouver un problème d’accessibilité, en étant suspectés d’obsolescence, alors qu’ils sont au contraire bien à jour. Absurde, un peu comme le bug de l’an 2000 ou du bug, de moindre importance, qui a touché des boîtiers GPS en 2019.

La première bonne nouvelle, c’est que Google est au courant du souci. La deuxième, c’est que ses équipes travaillent sur le problème. Et la troisième, c’est qu’elles ont un peu de temps devant elles pour trouver une solution. Une des pistes envisagées est de changer la manière de concevoir la chaîne d’information de l’User Agent, pour cadenasser le 99 et basculer sur le nombre d’après.

Ainsi, au lieu d’avoir un code qui ressemblerait à Chrome/100.0.4664.110, on aurait à la place un code de type Chrome/99.100.4664.110. Le premier numéro, 99 est figé, et l’analyse des versions suivantes se fait sur le deuxième. Cette piste s’avère justement considérée par l’équipe dans l’outil de pistage des bugs de Chrome, mais elle est considérée comme une alternative de dernier recours.

« Il s’agit d’un plan de repli en cas de problèmes de compatibilité importants avec un numéro de version majeure à trois chiffres », lit-on dans le descriptif de la solution. Une approche plus pérenne serait que le kit de design Duda prenne les dispositions qui s’imposent. Mais il y aura aussi à alerter les internautes qui l’utilisent pour leur site, pour qu’ils procèdent à une mise à jour.