Les cookies sont transmis via les entêtes HTTP avec la forme suivante appelé "cookie string" :
Cookie: nom_du_cookie_1=valeur_du_cookie_1; nom_du_cookie_2=valeur_du_cookie_2
avec autant de cookies que l’on peut vouloir. De façon classique, beaucoup de sites stockent un cookie SESSID qui n’est autre que votre variable d’identification au site, ce qui permet de sécuriser les authentifications (le serveur garde en local les sessions SESSID utilisées et les données qui leur sont liées, comme un login). Vous pouvez accéder à tous vos cookies depuis votre navigateur, par exemple sous Firefox Linux, Edit > Preferences > Privacy > Show Cookies
Sous Firefox Windows, l’onglet Préférences est dans Outils ou Tools. Sous Internet Explorer, les cookies sont aussi accessibles depuis l’onglet options internet. Avec Chrome, Outils -> Options, onglet Options avancées.
Par défaut, les navigateurs ne permettent pas la modification des cookies (outre la suppression) car cela peut entraîner des désagréments de navigation quand l’utilisateur ne sait pas vraiment ce qu’il fait. Ceci dit, il est toujours possible de trouver des plugins ou utilitaires de modification des cookies. Effectivement, puisque ces fichiers sont stockés en local sur votre disque, rien ne vous empêche de les modifier. Bien sûr, il est totalement possible de communiquer des faux cookies par la méthode utilisée dans la rubrique précédente (netcat ou communication directe au serveur).
Pourquoi se méfier des cookies ?
Il y a plusieurs raisons à ça : tout d’abord, puisque les fichiers sont réécrits en local et peuvent être consultés, il ne faut jamais stocker des variables importantes ou que l’utilisateur ne doit pas connaître dans ces cookies. Ensuite, il y a des règles bon sens, comme le fait de ne jamais poser un cookie admin booléen, ce qui se voit et est totalement insécurisé (du point de vue programmeur, il faut toujours penser au cookie comme à n’importe quelle autre variable passée par l’URL par exemple). Certains sites de musique en ligne, souhaitant que les utliisateurs non-identifiés ne puissent écouter qu’un nombre limité de pistes, posent des cookies chargés de suivre le nombre actuel écouté, puis, lorsque l’utilisateur a atteint la limite, lui affichent un message lui demandant de s’enregistrer/identifier. Cette protection paraît donc assez inutile, puisque la suppression du cookie va remttre la compteur à zéro à chaque fois et permettre d’écouter autant de pistes que souhaité.
Enfin, les cookies sont une préoccupation première des attaquants (puisqu’ils constituent un moyen d’authentification), comme nous l’explicitons avec l’exemple des failles XSS notamment. Par conséquent, utiliser les cookies reste une manière sûre d’effectuer des authentifications, mais la sécurité s’abaisse à la facilité d’accessibilité à ces cookies (un ingénieur social peut très facilement demander ses cookies à quelqu’un sans que celui-ci se rende compte qu’il peut s’agir d’informations cruciales). Ces attaques se mitigent récemment avec certains serveurs qui lient un cookie avec l’IP de son utilisateurs (ainsi, une autre personne à une autre adresse essayant de réutiliser le cookie ne sera pas reconnue).
Au niveau de l’utilisateur, les cookies peuvent être utilisés par des tracker publicitaires ou des chaînes commerciales du web pour stocker des informations sur vous et certains sites que vous visitez, c’est pourquoi nous conseillons de vider régulièrement vos cookies (avec Firefox "Clear private data" ou "Effacer mes traces", sous Internet Explorer, "Effacer mes fichiers temporaires et cookies", un raccourci commun étant Ctrl + Shift + Suppr). A défaut de tous les supprimer, des utilitaires tels Ad-aware ou Spybot S&D savent traquer et reconnaître les cookies malveillants.