Quand Chrome et Opera plantent à cause de quelques caractères
13 suffisent pour les crasher
Le 21 septembre 2015 à 07h00
3 min
Logiciel
Logiciel
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.
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.
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
Commentaires (34)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 21/09/2015 à 15h45
Donc les version mobile plante aussi, merci ;)
Le 21/09/2015 à 16h10
Trop fort le jeu de la forêt :)
Le 21/09/2015 à 16h36
" />
Le 21/09/2015 à 19h09
Le 21/09/2015 à 19h36
Le 21/09/2015 à 07h23
Lol
Le 21/09/2015 à 07h24
Le jeu " />
Le 21/09/2015 à 07h24
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.
Le 21/09/2015 à 07h25
Sympa merci ^^
Le 21/09/2015 à 07h26
P-A contribue au developpement de Chromium ?
Le 21/09/2015 à 07h31
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? :))
Le 21/09/2015 à 07h34
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…
Le 21/09/2015 à 07h37
Safari ne plante pas.
Le 21/09/2015 à 07h42
Je ne peux plus utiliser feedly :(
Le 21/09/2015 à 07h47
Pas de souci sur Opera pourtant (12.17 :P)
Le 21/09/2015 à 07h58
Qui utilise Safari ?
Le 21/09/2015 à 08h08
Le 21/09/2015 à 08h09
Faire un jeu à partir d’un bug, c’est quand même fort. " />
Le 21/09/2015 à 08h27
Vivaldi 1.0.278.17 plante AUSSI avec http:/domain.tld/%%300 ouhttps://vivaldi.com/%%30%30 :)
Le 21/09/2015 à 08h27
“Quand Chrome et Opera Chromium plante à cause de quelques caractères” aurait été plus juste dans le titre.
Le 21/09/2015 à 08h29
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é " />
Le 21/09/2015 à 08h39
Le 21/09/2015 à 08h51
Du coup c’est quand même étrange que 3 navigateurs utilisent une même implémentation foireuse…
Le 21/09/2015 à 09h07
Le 21/09/2015 à 09h07
Le 21/09/2015 à 09h12
Le 21/09/2015 à 09h13
Pas de soucis sur Maxthon, basé aussi sur chromium (26 " />), je garde la main sur la page et le navigateur.
Le 21/09/2015 à 09h45
Je croyais que c’était basé sur Blink et pas sur le navigateur Chromium “en entier” ?
Le 21/09/2015 à 09h49
Le 21/09/2015 à 09h50
C’est lundi. Il faut laisser les gens le temps de se réveiller.
Le 21/09/2015 à 09h53
Le 21/09/2015 à 11h48
Je confirme, Opera 32.0 plante bien. Il y a moyen de faire chr quelques chalands sur Facebook avec ça.
Le 21/09/2015 à 13h54
Confirmé, plante sous Linux également.
Le 21/09/2015 à 14h30
Apparemment il y a un workaround pour éviter le plantage en attendant le patch.