Connexion
Abonnez-vous

Quand Chrome et Opera plantent à cause de quelques caractères

13 suffisent pour les crasher

Quand Chrome et Opera plantent à cause de quelques caractères

Le 21 septembre 2015 à 07h00

Chrome, Opera et Vivaldi, trois navigateurs basés sur Chromium, réagissent bien mal à certaines URL contenant des caractères bien particuliers. Pour les deux premiers, cela va même jusqu'au plantage pur et simple.

Au cours des derniers mois, plusieurs éditeurs/fabricants ont dû faire face à un problème pour le moins insolite : un simple message provoquait parfois des problèmes à répétitions. Chez Wiko un « = » envoyé par SMS pouvait rebooter le smartphone du destinataire, tandis que les applications Messages d'iOS et Skype plantaient elles aussi avec une chaine de caractères bien précise.

C'est dans les vieux codes qu'on fait les meilleurs bugs

Aujourd'hui, c'est Google qui est sur le devant de la scène avec un problème similaire sur Chrome qui a été mis en lumière par Andris Atteka. Il explique qu'il suffit de valider une URL d'un des types ci-dessous dans la barre d'adresse pour faire complètement planter le navigateur, l'obligeant à rebooter :

http:/a/%%30 %30
http:/a/%%300
file:///%%300

Notez qu'il s'agit d'une liste non exhaustive et que bien d'autres combinaisons sont possibles, notamment en remplaçant le « a » par d'autres caractères ou bien par des adresses de sites comme http:/nextinpact.com/%%300. Et ce n'est pas tout puisque, s'il s'agit d'un lien hypertexte placé sur un mot ou une image par exemple, il suffit de passer la souris dessus pour que l'onglet plante. Il en entraine parfois d'autres avec lui dans sa chute, mais cela ne provoque dans tous les cas pas un crash complet du navigateur.

Certains s'en amusent et ont même développé un jeu basé sur ce bug. Le principe est simple : passer de haut en bas en ne survolant que les oursons. Un arbre et l'onglet Chrome plante. 

Chrome bug jeu

Opera et Vivaldi aussi touchés, Edge et Firefox épargnés

De notre côté, nous avons tenté la même expérience sous Edge et Firefox, sans aucun problème. Par contre, on retrouve exactement le même souci sur Opéra, ce qui n'est pas une surprise étant donné qu'il se base sur Chromium 45 (tout comme Chrome). Plus étonnant par contre, Vivaldi (qui exploite également Chromium) ne plante pas avec ce genre d'URL, mais un survol de lien hypertexte du même acabit par la souris  provoque une erreur sur la page.

Un ticket a évidemment été ouvert sur le site du projet Chromium. Il reprend tous les détails connus sur ce bug et, selon un des développeurs, « il semble que le plantage s'effectue dans un très vieux code », probablement dans la fonction GURLToDatabaseURL(). Dans tous les cas, les équipes de Chromium et de Google sont sur la brèche et une mise à jour devrait prochainement corriger le tir. De son côté, Andris Atteka précise qu'il n'a « malheureusement pas reçu de récompense, car ce bug est considéré comme une vulnérabilité DOS ».

Si le problème n'est effectivement pas une faille de sécurité à proprement parler et qu'elle n'entraine pas de fuite de données, il reste potentiellement gênant. On peut en effet imaginer des sites, des emails ou bien des messages instantanés contenant ce genre d'URL afin de provoquer un plantage du navigateur du correspondant.

Commentaires (34)

Vous devez être abonné pour pouvoir commenter.

Abonnez-vous
votre avatar

Donc les version mobile plante aussi, merci ;)

votre avatar

Trop fort le jeu de la forêt :)

votre avatar

<img data-src=" />

votre avatar







Mithrill a écrit :



Quand je pense à l’énorme gâchis avec l’abandon de Presto ça fait mal au cul. Opera aurai pu en tirer un bon prix au lieu de le laisser à l’abandon

&nbsp;





Presto n’est pas encore abandonné : il tourne sur des fermes de serveurs en Islande (et peut-être ailleurs) pour tous les clients Opera Mini qui lui demandent des pages à compresser <img data-src=" />


votre avatar







Mithrill a écrit :



Quand je pense à l’énorme gâchis avec l’abandon de Presto ça fait mal au cul. Opera aurai pu en tirer un bon prix au lieu de le laisser à l’abandon







Bien qu’il n’évoquait que l’indifférence totale, je pense qu’ils auraient pu faire comme Netscape à l’époque et publier le code source.

Au mieux ça aurait peut-être donné naissance à un nouveau projet. (il me semble que Phoenix Firefox est né des cendres de Netscape)

Au pire ça l’aurait laissé dans l’indifférence complète, ce qui donc n’aurait rien changé. <img data-src=" />


votre avatar

Lol

votre avatar

Le jeu <img data-src=" />

votre avatar

Et c’est pour ça que lorsque l’on utilise des String, soit on fait très attention, soit on utilise des classes bien faites.

votre avatar

Sympa merci ^^

votre avatar

P-A contribue au developpement de Chromium ?

votre avatar

Et pour rendre le jeu plus marrant on le met à la fin d’un formulaire bien long pour le valider ^^. (Pourquoi pas pour valider un commentaire sur NextInpact? :))

votre avatar

L’avantage des bases communes, tout le monde se partage les bugs.

Après ça semble être aussi pas mal lié à l’intégration si le comportement de Vivaldi diffère des autres…

votre avatar

Safari ne plante pas.

votre avatar

Je ne peux plus utiliser feedly :(

votre avatar

Pas de souci sur Opera pourtant (12.17 :P)

votre avatar

Qui utilise Safari ?

votre avatar







Highmac87 a écrit :



Safari ne plante pas.







C’est parce que personne ne l’ouvre. <img data-src=" />


votre avatar

Faire un jeu à partir d’un bug, c’est quand même fort. <img data-src=" />

votre avatar

Vivaldi 1.0.278.17 plante AUSSI avec&nbsp;http:/domain.tld/%%300 &nbsp;ouhttps://vivaldi.com/%%30%30&nbsp;:)

votre avatar

“Quand Chrome et Opera Chromium plante à cause de quelques caractères” aurait été plus juste dans le titre.

votre avatar

plutôt “quand tous les navigateurs basés sur Chromium” plutot … parce que si tu dis que Chromium plante, perso, je ne me sens pas concerné&nbsp;<img data-src=" />

votre avatar







piwi82 a écrit :



“Quand Chrome et Opera Chromium plante à cause de quelques caractères” aurait été plus juste dans le titre.





J’utilise Chromium et il ne plante pas.&nbsp;


votre avatar

Du coup c’est quand même étrange que 3 navigateurs utilisent une même implémentation foireuse…

votre avatar







ra-mon a écrit :



Vivaldi 1.0.278.17 plante AUSSI avec http:/domain.tld/%%300  ouhttps://vivaldi.com/%%30%30:)







Normal, on est en Chromium 45.0.2454.8 depuis la 1.0.170.16.

Ca plante aussi sur le dernier snap en 1.0.179.3


votre avatar







lyni a écrit :



Qui utilise Safari ?





La palanqué d’utilisateur d’iPhone et de Mac :)


votre avatar







wanou2 a écrit :



La palanqué d’utilisateur d’iPhone et de Mac :)





Palanquée.

Grammar Nazi mode.


votre avatar

Pas de soucis sur Maxthon, basé aussi sur chromium (26 <img data-src=" />), je garde la main sur la page et le navigateur.

votre avatar

Je croyais que c’était basé sur Blink et pas sur le navigateur Chromium “en entier” ?

votre avatar







CryoGen a écrit :



Je croyais que c’était basé sur Blink et pas sur le navigateur Chromium “en entier” ?







Opera 15+ et Vivaldi sont tous deux basés sur Chromium.


votre avatar

C’est lundi. Il faut laisser les gens le temps de se réveiller.

votre avatar







gokudomatic a écrit :



Faire un jeu à partir d’un bug, c’est quand même fort. <img data-src=" />





Mais au moins tu ne peux pas tricher sous chrome :p


votre avatar

Je confirme, Opera 32.0 plante bien. Il y a moyen de faire chr quelques chalands sur Facebook avec ça.

votre avatar

Confirmé, plante sous Linux également.

votre avatar

Apparemment il y a un workaround pour éviter le plantage en attendant le patch.

Quand Chrome et Opera plantent à cause de quelques caractères

  • C'est dans les vieux codes qu'on fait les meilleurs bugs

  • Opera et Vivaldi aussi touchés, Edge et Firefox épargnés

Fermer