Plus de 11 % des sites web sécurisés présentent une vulnérabilité

Plus de 11 % des sites web utilisant HTTPS, la version sécurisée du protocole HTTP, présentent une vulnérabilité : les contenus mixtes (Mixed Content).

Derrière ce titre alarmiste se cache bel et bien une erreur très répandue. Intéressons nous à une problématique de sécurité : les contenus mixtes (Mixed Content). Sur 9185 sites sécurisés étudiés, plus de 1031 présentent le problème (11,2%).

HTTPS & contenus mixtes : en quelques mots

Le protocole HTTPS

Les contenus mixtes concernent les pages HTTPS (pour HTTP Secure, c’est à dire la version chiffrée des communications entre un internaute et un site Internet, par exemple utilisée pour les transactions bancaires).
L’utilisation de la version sécurisée d’HTTP permet notamment d’éviter les attaques du type Man In The Middle. La communication étant chiffrée, le protocole protège des écoutes clandestines.
HTTPS vise à garantir la confidentialité et la sécurité des échanges

Les contenus mixtes

Sur un navigateur web, l’utilisation du HTTPS pour charger une page est assez universellement représentée par un cadenas dans les navigateurs web. Mais une page est en fait composée de nombreuses ressources (images…), et certaines d’entre elles sont parfois chargées en utilisant la version non sécurisée du protocole.
On parle de contenus mixed (Mixed Content) lorsqu'une page HTTPS contient des éléments en HTTP. Cela remet alors en cause la sécurité de l’échange.
Cette erreur n’est pas rare : vous l’avez probablement déjà rencontrée, peut être sans y prêter attention.
Pour illustrer ce propos, voici deux captures d’écran de la dernière version de Firefox sur le même site HTTPS :
Ici on constate la présence du cadenas. En cliquant sur ce dernier l’utilisateur accède à des informations sur l’identité du site web visité.


Toujours sur le même site, mais après détection par le navigateur d’un contenu mixte sur une autre page. Le cadenas est remplacé par une icône d’avertissement. Les informations d’identification du site sont remplacées par un message signalant le problème de sécurité à l’utilisateur.

Quels sont les risques associés aux contenus mixtes ?

Il existe en fait deux types de contenus mixtes, les actifs et les passifs.
Les contenus mixtes passifs se distinguent des actifs car ils présentent un risque plus limité. Un attaquant ne pourrait pas porter atteinte à la totalité de la page web reçue par un internaute, mais se contenter par exemple, d’en changer une image. Dans certains cas, il y a possibilité d’usurpation de l’identité de l’internaute dans sa communication avec le serveur web.  Avec les contenus mixtes actifs, on peut aller jusqu’au vol de données sensibles d’un utilisateur.
(pour en savoir plus, un billet sur le blog de Mozilla - en anglais)
Les possibilités d’attaque sont belles et bien présentes, cependant, il faut rester rationnel : ce ne sont pas les plus répandues et le risque est à mesurer en fonction du caractère sensible des données qui transitent.
Comme nous l’avons vu précédemment, cette erreur envoie un message négatif à l’internaute, avec la perte de l'indicateur de sécurité et l’apparition d’un avertissement. Pour l’éditeur du service, la perte de confiance peut être très problématique : en effet, une fois l’avertissement présent, il sera maintenu durant toute la navigation sur le site, même si la nouvelle page visitée ne comporte pas le problème.

Les navigateurs web viennent en renfort

Un navigateur qui fait face à un contenu mixte en informe l’utilisateur, par un mécanisme sans doute trop peu connu des internautes.
Firefox, Chrome et Internet Explorer (dans leurs versions actuelles) bloquent totalement ou en grande partie les contenus mixtes actifs.
Ainsi les impacts liés aux contenus mixtes sont plus limités grâce au travail de sécurisation effectué par les navigateurs. Attention toutefois : les contenus ainsi bloqués ne sont pas forcément anodins et leur absence peut dans certains cas conduire à une dégradation de l’expérience utilisateur. La correction des problèmes reste donc impérative pour les éditeurs web.
Chrome, qui jusqu’à présent laissait encore passer certains contenus mixtes actifs (requêtes Ajax par exemple), va selon toute vraisemblance durcir sa politique dans sa version 36 (source).
Cette page vous permettra de tester le comportement de votre navigateur avec les contenus mixtes.

Testez votre site web

L’outil en ligne www.dareboost.com permet notamment de tester si une page comporte des contenus mixtes (il suffit de saisir l’adresse de la page HTTPS à analyser et de valider le formulaire, l’audit est gratuit pour les pages d’accueil). Les résultats concernant les contenus mixtes seront disponibles en bas du rapport, dans la rubrique "Compatibilité".

Point sur la méthodologie

Sur un panel de près de 300 000 sites dont les données sont collectées par le projet httparchive.org (en date du 01/05/2014), DareBoost a identifié ceux dont la première page utilise le protocole HTTPS. Ensuite, sur les 9185 résultats obtenus, ont été identifiés ceux qui disposaient de requêtes utilisant HTTP (non sécurisé), en excluant cependant les redirections (codes HTTP 301 et 302) à cause de contraintes techniques pour l’exploitation des données.
A noter également que les données sont collectées par httparchive en utilisant Internet Explorer 9, qui bloque les contenus mixtes de type XMLHttpRequest et ne supporte pas les WebSockets. Cela a également pu restreindre la proportion de sites détectés comme possédant la vulnérabilité.