
Mettre votre site web en conformité RGPD, c’est aussi sécuriser vos cookies. Les cookies sont indispensables au fonctionnement du site et de ses fonctionnalités. Mais ils sont vulnérables et exposent votre site web à des attaques. Pour vous prémunir de ce risque, vous appliquerez une véritable politique de gestion de vos traceurs. Et vous utiliserez les attributs HttpOnly et Secure. On vous en parle. C’est notre product news du jour.
Qu’est-ce qu’un cookie http ?
Lorsqu’un internaute visite un site web, son navigateur adresse une requête au serveur de l’éditeur. Un ou plusieurs cookies peuvent alors être créés et déposés dans le cache du navigateur afin de stocker un état qui pourra être renvoyé lors des connexions ultérieures.
Pour faire cela, le serveur de l’éditeur utilise l’en-tête Set-Cookies dans une réponse HTTP.
La syntaxe de cet en-tête se présente ainsi :
Set-Cookie: <name>=<value>[; <Max-Age>=<age>] [;expires=<date>][; domain=<domain_name>] [; path=<some_path>][; secure][; HttpOnly]
Cet en-tête contient ainsi le nom du cookie, associé à une valeur, ainsi que diverses métadonnées.
Typiquement, un cookie est utilisé pour maintenir l’utilisateur identifié d’une session à l’autre sans avoir besoin de se reconnecter à son compte. Bien sûr, les cookies peuvent être utilisés pour beaucoup d’autres choses :
- l’activation de fonctionnalités telles qu’un player vidéo ou une popup de tchat avec la relation clients ;
- l’affichage de publicités personnalisées ;
- le partage d’articles sur les réseaux sociaux…
Pourquoi faut-il sécuriser votre site web et vos cookies ?
Sécuriser son site web est absolument indispensable :
- Un attaquant pourrait s’en prendre à vos formulaires de collecte de données et attaquer votre base de données pour récupérer des informations ;
- Un compte utilisateur peut donner accès à des données très sensibles et qui doivent rester confidentielles.
La protection des données personnelles de vos utilisateurs, clients et prospects est une obligation légale en soi. Mais elle est aussi, et sans doute surtout, un vrai gage de respect à l’égard de votre audience. C’est donc un enjeu majeur de votre démarche de conformité RGPD et dans la création de votre site Internet.
Pourquoi ?
Parce qu’une fuite de données peut avoir un impact désastreux pour votre audience :
- La divulgation de données confidentielles et sensibles peut créer un vrai choc qui aura un impact fort sur la confiance de vos utilisateurs et sur votre e-réputation ;
- Un attaquant peut revendre certaines données sur le marché noir, favorisant leur diffusion dans un contexte mondial ;
- Un attaquant peut aussi se servir des données volées pour usurper un compte utilisateur ou extorquer de l’argent.
C’est pourquoi la CNIL a édicté une fiche de bonnes pratiques spécifique à la sécurité des sites web.
Vous avez déjà basculé votre site en HTTPS ? Vous avez recours à un prestataire de paiement de confiance pour gérer les transactions en ligne ? Formidable, mais ce n’est pas suffisant. Car les cookies sont aussi un facteur de vulnérabilités et il faut vous en occuper.
Prenons un exemple pour comprendre.
Vous avez sécurisé votre site web en HTTPS, y compris les formulaires d’inscription et de connexion. Mais un cookie non sécurisé est déposé lors du chargement de ces pages. Un acteur malveillant pourrait détourner ces cookies pour collecter des données personnelles associées au compte de l’utilisateur !
Vous l’aurez compris, la sécurité des sites web est donc un enjeu majeur.
La checklist ultime pour sécuriser vos cookies
Vous mettrez en place un vrai plan de gestion de vos cookies dans l’optique d’optimiser la conformité RGPD de votre site web. Il s’agit de s’assurer que les cookies respectent certaines exigences légales, qu’il s’agisse :
- des cookies first parties, c’est-à-dire ceux que l’éditeur dépose par lui-même ;
- des cookies third parties, c’est-à-dire déposés par des partenaires commerciaux ou des fournisseurs de solutions.
Quelles sont les mesures à prendre ?
- Assurer une gestion centralisée des balises et des cookies. Cela se fera le plus souvent en installant un Tag Management System tel que Google Tag Manager ;
- Faire le ménage, supprimer les balises d’outils que vous n’utilisez plus ;
- Vérifier les informations contenues ou collectées par les cookies. Ne pas y stocker de donnée sensible ;
- Limiter la durée de vie de vos cookies à 13 mois ;
- Recueillir le consentement préalablement au dépôt des cookies non nécessaires au fonctionnement du site. Cela se fera le plus souvent en installant une Consent Management Platform telle que celle d’Axeptio.
- Dans l’en-tête Set-Cookies, appliquer les attributs HttpOnly et Secure.
L’instruction HttpOnly pour interdire l’utilisation du cookie côté client
Un cookie peut être positionné sur le navigateur en Javascript et là, ça se complique. Un attaquant pourrait profiter d’une faille XSS. Cette vulnérabilité fait qu’en injectant du Javascript, il pourra accéder aux cookies et aux informations, parfois sensibles, qu’il contienne.
Vous vous efforcerez naturellement d’installer une politique de sécurité robuste pour éviter les failles XSS et empêcher leur utilisation au maximum.
L’instruction HttpOnly est une mesure complémentaire : en cas d’attaque par injection de code javascript, les cookies ne seront tout simplement pas disponibles.
Le flag Secure pour interdire d’utiliser des cookies sans HTTPS sur vos sites web
La sécurité informatique est une affaire compliquée. Mais c’est un basique de la conformité RGPD alors il faut aller jusqu’au bout.
Vous avez basculé le site web en HTTPS. Vous vous dites donc peut-être que les cookies transitent par un protocole sécurisé et donc ne sont pas vulnérables aux attaques ? C’est faux.
- Parce que vos users peuvent quand même se connecter au site web en HTTP. Si tel est le cas, un attaquant peut faire de même et accéder aux données personnelles. Pour l’éviter, il faut encore imposer un en-tête HSTS pour que les connexions en HTTP soient redirigées vers du HTTPS.
- Parce que votre site peut embarquer du contenu tiers (des iframes par exemple) qui, elles, seront disponibles en HTTP. Contrôler les contenus tiers que vous intégrez sur votre site web est donc nécessaire.
- Parce que les cookies peuvent eux-mêmes être en HTTP.
La solution ? Intégrer l’attribut Secure dans l’entête Set-Cookies. Cela permet d’empêcher qu’un cookie puisse être communiqué en HTTP simple.
Quelles en sont les conséquences ?
- Le cookie est sécurisé. Si votre site est crypté en HTTPS, il pourra être déposé normalement ;
- Aucun cookie ne sera déposé sur des pages en HTTP. Si votre site agrège des espaces mixtes incluant, par exemple, des iframes ou autres en HTTP, soyez conscient qu’aucun cookie ne sera déposé.
Conclusion : Sécurisez vos sites web avec les attributs HttpOnly et Secure
La gestion d’un site web inclut plusieurs enjeux fondamentaux :
- La mise en conformité RGPD. Cela suppose la rédaction d’une politique de confidentialité, la revue des formulaires ou encore le recueil des consentements ;
- La sécurité informatique du site.
Pour les cookies, c’est pareil. Il vous faut installer une Consent Management Platform. Pour cela, Axeptio peut être une solution pour vous. C’est une façon simple, moderne et élégante d’enrichir votre expérience utilisateur en intégrant un moyen de contrôler sa vie privée.
Besoin d'aide ? On en parle ?
Mais une fois que vous avez géré le cookie, vos obligations de transparence et de recueil de consentement, il reste encore à vérifier le niveau de sécurité des traceurs déposés.
En faisant cela, vous mettrez votre site web à l’état de l’art et ça, c’est un vrai argument de confiance pour votre audience.