Contourner les avertissements de sécurité des navigateurs Web grâce à des champs de type pseudo MdP
N'est plus possible depuis Chrome 62

Le , par Stéphane le calme, Chroniqueur Actualités
Depuis Chrome 56, Google a commencé à marquer des sites HTTP qui collectent des mots de passe ou des numéros de carte de crédit comme étant non sécurisés. L’entreprise a expliqué en décembre dernier que « l’activation de HTTPS sur votre site entier est importante, mais si votre site collecte des mots de passe, des informations de paiement ou toute autre information personnelle, il est essentiel d’utiliser HTTPS. Sans HTTPS, les mauvais acteurs peuvent voler ces données confidentielles. »

En effet, sans une connexion chiffrée avec le protocole HTTPS, des tiers malveillants pourraient intercepter les identifiants et autres informations sensibles qui sont envoyés ou reçus sur les sites non sécurisés.

Cette mesure est donc effective sur Chrome depuis janvier, mais également sur Firefox.

Le chercheur en sécurité Troy Hunt s’est intéressé de près à ce processus. « Tout d'abord, les avertissements du navigateur concernant une connexion non sécurisée se déclenchent uniquement lorsqu'il existe des entrées de type "mot de passe"», a-t-il fait remarquer. Une fois cette observation faite, il a été en mesure d’effectuer un petit tour qui lui a permis de contourner cette contrainte. Le processus est simple : faire en sorte que l’entrée à fournir ressemble à une entrée de type mot de passe, sans pour autant utiliser ce type. »

Il a proposé le code suivant :

Code : Sélectionner tout
<input id="pw" placeholder="Password" name="pw" maxlength="100" class="textbox" style="width:230px;margin-bottom:5px;" onclick="javascript:this.placeholder='';" type="textbox">
« Ici, il est juste évoqué “Password”, mais il s’agit pour le moment d’un simple “textbox”. C’est au niveau de la feuille de style que cela va se jouer. »

Code : Sélectionner tout
1
2
3
4
5
<script>
    jQuery(document).on('click', '#pw', function() {
        jQuery(this).addClass('text-security');
    })
</script>
« Une fois rendus ici, nous avons en face de nous une toute nouvelle classe. De plus, bien sûr, l'événement onclick sur la boîte de saisie elle-même définit le texte d'espace réservé à une chaîne vide. Alors, que fait la classe? Elle va changer simplement la police :

Code : Sélectionner tout
1
2
3
.text-security {
    font-family: 'text-security-disc';
}
Et comme vous l'avez probablement déjà deviné, cette "police" n'est rien d'autre qu'un seul disque par caractère conçu pour être une représentation visuelle du vrai disque que vous verriez normalement lors de la saisie de texte dans un champ de type “mot de passe”. En clair, le champ de mot de passe, qui n’en est pas un en réalité, ne va pas provoquer d’alerte du navigateur malgré le fait que le site ne soit pas en HTTPS. Troy assure « Qu’il s'agit d'un champ pseudo-mot de passe conçu pour tromper l'utilisateur et empêcher l'avertissement visuel du navigateur conçu pour protéger son mot de passe. »

Il s’agit là d’un procédé que certains développeurs ont utilisé pour « corriger » le fait que leurs sites apparaissaient avec la mention « non sécurisé ». Dans son billet, Troy évoque plusieurs entreprises qui se sont retrouvées dans le cas où le navigateur marque leur site comme étant « non sécurisé » chez leurs clients.

L’une d’elles par exemple, Oil and Gas International, a fait parvenir la note suivante aux éditeurs : « Votre avis de mot de passe non sécurisé et/ou de connexion apparaît automatiquement lors de la connexion à mon site Web, Oil and Gas International, qui n'est pas voulue et a été mise là sans notre permission. Veuillez l'enlever immédiatement. Nous avons notre propre système de sécurité et il n'a jamais été compromis depuis plus de 15 ans. Votre avis inquiète nos abonnés et nuit à notre entreprise. »

Quoi qu’il en soit, il assure que ce petit tour de passe-passe ne fonctionne plus depuis Chrome 62 et invite les développeurs à déployer leurs sites en HTTPS.

Source : blog Troy Hunt

Et vous ?

Qu'est-ce qui, selon vous, pourrait expliquer que certains développeurs ne déploient pas le HTTPS sur leurs sites ?

Voir aussi :

Google Chrome va marquer comme « non sécurisés » les sites web en HTTP qui collectent des informations sur des mots de passe


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de setni setni - Membre régulier https://www.developpez.com
le 05/11/2017 à 19:43
J'adore la réponse de la boite "Notre système est sécurisé depuis 15 ans"

Le jour ou ils se feront hacker (assez simple en plus sans le https) il tomberont de très haut.
Avatar de Doksuri Doksuri - Membre chevronné https://www.developpez.com
le 06/11/2017 à 9:07
c'est genial....

je suis toujours admiratif des moyens mis en place pour toujours plus de securite, pour finalement se faire casse par un tour de passe-passe digne des tutos pour debutant
Avatar de zellerda zellerda - Membre à l'essai https://www.developpez.com
le 07/11/2017 à 7:07
Ouais bon exemple... le type "textbox" n'existe pas en HTML c'est "text"
Avatar de setni setni - Membre régulier https://www.developpez.com
le 07/11/2017 à 10:40
Ouais bon exemple... le type "textbox" n'existe pas en HTML c'est "text"
Mais si, ça fait 15 ans que ça marche ptdr
Contacter le responsable de la rubrique Accueil