Comment Ca Marche l'informatique ?
 
 Comment Ça Marche - Articles - Sécurité - Les cookies
 Accueil
 Forums
 Astuces
 Guide d'achat
 
   
 
 
Livres Comment ça marche?
Tout sur le hardware PC
Tout sur la sécurité
Tout sur le webmastering
Présentation des trois premiers ouvrages de la collection CommentCaMarche.net
Page d'accueil
Ajouter aux favoris
Contribuer à cet article
Ecrire à Jean-Francois Pillou
Sécurité sur Internet
Anonymat
Spam
Cookies
Version 2.0.6
 
cookies Page précédente Retour à la page d'accueil

Introduction aux cookies

cookie

Quels sont ces étranges gateaux qu'un site internet vous a sûrement déjà proposé? La plupart du temps un serveur vous propose de placer un cookie, vous ignorez ce terme et cliquez sur "OK" sans vous préoccuper de son devenir. Ce cookie est en fait un fichier qui est stocké sur votre disque et qui permettra que le serveur vous reconnaisse la prochaine fois que vous revenez sur le site de telle façon à connaître vos préférence (par exemple les options que vous aurez coché) pour vous éviter de les resaisir.

Les cookies et la sécurité

Le problème de ces cookies est qu'ils contiennent des informations vous concernant. En effet, lorsque vous vous connectez à un site personnalisable, celui-ci va vous poser quelques questions afin de dresser votre profil, puis stocker ces données dans un cookie. Selon le site sur lequel vous vous connectez cela peut être à votre avantage ou non.
En effet, un site de vente en ligne peut récolter des informations sur les préférences des utilisateurs par le biais d'un questionnaire, afin de leur proposer ultérieurement des articles pouvant les intéresser. Par exemple, en sachant si vous êtes un homme ou une femme il pourra vous aiguiller directement au rayon approprié pour vous faire économiser du temps (et surtout pour mieux vendre), et s'il sait que vous êtes amateur de tennis il vous proposera les derniers articles en la matière. En revanche, refusez de céder des informations sur vous à un site ne vous inspirant pas confiance... il n'a aucune raison de collecter des informations vous concernant.

En réalité un cookie n'a rien de dangereux en soi car c'est le navigateur qui le gère en écrivant dans un fichier des paires clés/valeurs.

D'autre part, les données stockées dans un cookie sont envoyées par le serveur, ce qui signifie qu'il ne peut en aucun cas contenir des informations sur l'utilisateur que celui-ci n'a pas donné, ou en d'autres termes: le cookie ne peut pas collecter des informations sur le système de l'utilisateur.

Fonctionnement des cookies

Les cookies font partie des spécifications du protocole HTTP, c'est-à-dire le protocole permettant de surfer sur des pages web. Le protocole HTTP permet d'échanger des messages entre le serveur et le client à l'aide de requêtes HTTP et de réponses HTTP.

Les requêtes et réponses HTTP contiennent des en-têtes permettant d'envoyer des informations particulières de façon bilatérale. Un de ces en-têtes est réservé à l'écriture de fichiers sur le disque: les cookies.

L'en-tête HTTP réservé à l'utilisation des cookies s'appelle Set-Cookie, il s'agit d'une simple ligne de texte de la forme:


Set-Cookie : NOM=VALEUR; domain=NOM_DE_DOMAINE; expires=DATE   

Il s'agit donc d'une chaîne de caractères commençant par « Set-Cookie :  » et suivie de paires clés-valeur, sous la forme CLE=VALEUR, séparées par des virgules.

Voici un tableau des principales clés (appelées attributs possibles pour un cookie :

Attribut Valeur Syntaxe Description
NOM_DU_COOKIE VALEUR Le nom et la valeur ne peuvent pas contenir les caractères point-virgule (;), virgule (,) et espace (). Pour mettre de telles valeur il faut recourir à l'encodage URL Cet attribut est obligatoire (c'est d'ailleurs le seul)
expires DATE Jour, DD-Moi-YYYY HH:MM:SS GMT L'attribut expires permet de définir la date à laquelle le cookie ne doit plus être stocké sur le disque, et ne doit plus être pris en compte par le serveur
domain nom_du_domaine xxx.xxx.xxx Le nom de domaine est généralement laissé vide car le nom du serveur est assigné par défaut (c'est ce que l'on désire généralement). Lorsqu'il est indiqué, le nom de domaine doit contenir au moins deux points (ie www.commentcamarche.net). Une machine provenant d'un domaine spécifique ne peut spécifier qu'un nom de sous-domaine ou son propre nom de domaine
path /repertoire /chemin/ L'attribut path (traduisez chemin) permet de définir un sous-répertoire ou un fichier du serveur sur lequel le cookie est valide, afin de réduire son champ d'action
secure aucun   L'attribut secure est optionnel. Il permet de spécifier que le cookie sera envoyé uniquement si la connexion est sécurisée (par SSL ou S-HTTP

  • Un cookie ne peut pas dépasser 4Ko
  • Un client ne peut pas avoir plus de 300 cookies sur son disque
  • Un serveur ne peut créer que 20 cookies maximum chez le client

Envoi des cookies au serveur

Lorsqu'un client se connecte à un site (donc au serveur), les cookies pour le domaine et le chemin spécifié sont automatiquement envoyés dans les en-têtes de la requête HTTP. L'en-tête se présente alors sous la forme:

Cookie : NOM1=VALEUR1; NOM2=VALEUR2; ...  

Un script CGI (ou autres tel que ASP ou PHP) peut alors vérifier la présence du cookie:

  • en analysant les en-têtes dans le cas du CGI
  • en utilisant l'objet Request dans le cas du script ASP
  • en utilisant les variables $NOM1, $NOM2,... créés automatiquement par le moteur de script PHP

Limitations des cookies

Les cookies sont soumis à un certain nombre de contraintes :

  • Leur nombre total est limité à 300 ;
  • La taille maximal d'un cookie est de 4 ko ;
  • Il ne peut exister au maximum que 20 cookies par domaine.

Quelques précisions supplémentaires sur les cookies

  • Le cookie n'est pas visible avant le prochain chargement de page.
  • Il faut savoir que certains navigateurs ne traitent pas bien les cookies
    • Microsoft Internet Explorer 4 avec le Service Pack 1 ne traite pas correctement les cookies qui ont le paramètre chemin défini.
    • Inversement Netscape Communicator 4.05 et Microsoft Internet Explorer 3.x ne traitent pas correctement les cookies qui n'ont pas les paramètres chemin et expiration définis.


Page précédente Site de référence

  Ce document intitulé « Sécurité - Les cookies » issu de Comment Ça Marche est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.