Jeton de Session - comment ça fonctionne?
Je me demande comment vous pourriez mieux protéger les séances. J'ai cherché un peu et trouver beaucoup de réponses, mais beaucoup d'entre eux sont tout simplement trop confus.
Comment prévenir des sessions d'être détourné? J'ai beaucoup lu à propos de "séances de jetons" vous générer un formulaire, mais ne comprennent pas vraiment ce que leur utilisation est. Comment est-ce à prévenir le détournement de session?
Je sais que vous n'enregistrez pas les choses comme les mots de passe dans les séances, mais ce que vous POUVEZ les stocker dans des conditions de sécurité? Autorisations (comme une séance variabele qui maintient le niveau de l'utilisateur. Chaque fois qu'une page est ouverte, la session variabele est cochée. C'est ce n'est pas un certain nombre, vous obtenez un "accès refusé" message affiché)? Ou comment gérer cela au mieux?
Merci!
OriginalL'auteur Bv202 | 2011-02-15
Vous devez vous connecter pour publier un commentaire.
Vous pouvez fondamentalement rien stocker dans la session que vous voulez, c'est juste considéré comme "meilleure pratique" de ne pas inclure toute sécurité des informations sensibles telles que des mots de passe, dans le cas d'une couche de sécurité est compromise.
La première étape pour prévenir le détournement de session est de ne pas transmettre vos session_id() via l'url. Les utilisateurs sont stupides, et ils vont poster des liens sur leurs blogs avec leur id de session, qui aura pour donner à quiconque cliqué sur le lien d'accès à leur session. Par conséquent, il est recommandé de stocker l'identifiant de session dans le cookie.
Avec cela dit, vous voulez filtrer et échapper à toutes vos entrées de l'utilisateur. Si vous avez un script de site à site d'injection, et l'utilisateur est en mesure d'injecter du code javascript, ils seront en mesure de lire vos cookies sans problème.
À partir de là, vous voudrez généralement regenerate_session_id() sur une action d'envergure sur votre site web, afin de prévenir fixation de session.
C'est assez simple, et que résume.
Votre probablement référence à CSRF (Voir shiflett.org/articles/cross-site-request-forgeries), qui n'a vraiment rien à voir avec le détournement de session.
Le bon PHP nom de la fonction est session_regenerate_id()
OriginalL'auteur John Cartwright