Différents navigateurs activer différentes mesures de sécurité lorsque l'option HTTPOnly est activé. Par exemple, Opera et Safari n'empêchent pas le javascript d'écrire dans le cookie. Cependant, la lecture est toujours interdite sur la dernière version de tous les principaux navigateurs.
Mais plus important encore pourquoi voulez-vous lire un HTTPOnly
cookie ? Si vous êtes un développeur, désactivez simplement l'indicateur et assurez-vous de tester votre code pour xss. Je vous recommande d'éviter de désactiver cet indicateur si possible. Le site HTTPOnly
et "secure flag" (qui force l'envoi du cookie via https) doivent toujours être activés.
Si vous êtes un attaquant alors vous voulez détourner une session . Mais il existe un moyen facile de détourner une session malgré la HTTPOnly
drapeau. Vous pouvez toujours rouler sur la session sans connaître l'identifiant de la session. Le MySpace Ver de terre Samy a fait exactement ça. Il a utilisé un XHR pour lire un CSRF et ensuite effectuer une tâche autorisée. Par conséquent, l'attaquant peut faire presque tout ce que l'utilisateur connecté peut faire.
Les gens ont trop confiance dans le HTTPOnly
drapeau, XSS peut toujours être exploitable. Vous devez mettre en place des barrières autour des fonctions sensibles. Par exemple, le fichier de modification du mot de passe doit exiger le mot de passe actuel. La possibilité pour un administrateur de créer un nouveau compte doit nécessiter un captcha, qui est un mot de passe. Technique de prévention CSRF qui ne peut pas être facilement contourné avec un XHR .
1 votes
Desde wiki : Un cookie sécurisé est uniquement utilisé lorsqu'un navigateur visite un serveur via HTTPS.
9 votes
@Pavel Hodek C'est le mauvais indicateur. L'indicateur de cookie "sécurisé" n'a rien à voir avec l'indicateur de sécurité HTTPOnly. Ils ont un système de dénomination horrible.
1 votes
Le titre de cette question devrait être modifié pour inclure le drapeau "HttpOnly". En l'état actuel des choses, il semble que la question porte sur le drapeau "Secure".