cookie et sécurité

cookie et sécurité

par jean-paul coulon,
Nombre de réponses : 11

Bonjour,

Un étudiant vient de m'assurer qu'en récupérant un cookie et en l'installant sur une autre machine, il se voit dans la même configuration que si il avait plusieurs fenêtres sur la même machine. Connexion et dé-connexion deviennent  synchrones entre elles.

Je n'ai pas encore fait le test mais cela pose le pb de sécurité et de fraude en cas de test si il est possible d'être authentifié sous la même identité pendant le test et sur aune autre machine distante.

Bien qu'informaticien système, je ne suis pas un spécialiste de la sécurité et je trouve beaucoup d'échos différents en ce qui concerne les cookie, la sécurité, et les éventuelles "précautions" ou démarches à adopter. Après discussion avec des collègues, il y aurait plus d'un cookie dans la nature ce qui amène son lot de questions.

Je n'ai pas vraiment trouver de réponse dans le forum, si certains d'entre vous ont un avis sur la question, je suis preneur.

Cordialement 

Moyenne des évaluations  -
En réponse à jean-paul coulon

Re: cookie et sécurité

par Nicolas Martignoni,
Avatar Développeurs Avatar Développeurs de plugins Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

Si j'ai bien compris, votre scénario est celui où un utilisateur connecté sur Moodle fournit de manière volontaire son cookie de session à une personne externe dans le but de tricher ?

Si c'est bien cela, et sous réserve que cela fonctionne vraiment (la copie du cookie), il n'y a pas de risque pour le Moodle, puisque c'est l'utilisateur lui-même qui permet à quelqu'un d'autre d'entrer à sa place et que cette personne n'aura pas plus d'accès que l'utilisateur en question. En outre, si l'utilisateur perd des données, c'est sa propre responsabilité.

Je comprends toutefois que pour un test, cela pourrait poser des problèmes de fraude. Pour éviter un tel cas, il faut alors utiliser d'autres moyens de protection, par exemple limiter l'accès au test à une plage d'adresses IP déterminée.

Encore une remarque, toujours sous réserve que la transmission du cookie fonctionne : l'affirmation que la connexion et la déconnexion deviennent synchrones est fausse. Chaque fois qu'un utilisateur se connecte sur Moodle, un nouveau cookie est créé sur l'ordinateur de l'utilisateur. Ce cookie est propre à cette session et unique. En le copiant, je peux imaginer que pour cette session, la personne en possession du cookie pourrait entrer (j'insiste, ceci est encore à vérifier toutefois). Lors de la déconnexion, le cookie de session est détruit, et pour une prochaine session, un nouveau cookie sera créé, et donc il faudrait refaire toute la manoeuvre pour s'introduire à nouveau. En outre, les cookies de session sont limités dans le temps (configurable), et à leur échéance, l'utilisateur est déconnecté.

Moyenne des évaluations Utile (1)
En réponse à Nicolas Martignoni

Re: cookie et sécurité

par stephane ngov,

Bonjour, Moodle est un lms qui est assez bien conçu niveau de sécurité, il y a comme même une grande communauté qui travaille dessus.

Tout comme Nicolas, je ne pense pas qu'un simple cookie puisse être utiliser pour se connecté à un autre compte de moodle.

Normalement à chaque fois qu'on clique sur un bouton envoyer (le serveur génère une session qui est créer par le serveur,

c'est une session de type "POST")  les informations inscrite sur le serveur ne peuvent être récupérer par un pc client.

Le identifiant mot de passe (chiffré) sont dans cette session qui appartient à qu'une seul machine et permettent à confirmer que c'est bien la ma machine en question qui fait la demande de requête.

Donc je pense à mon avis qu'il n'est pas possible avec un simple cookie d'usurper un compte en mettant ce cookie dans un autre pc client.

Je ne pense pas que le concepteur de moodle a copier ces donnée stratégique dans un cookie.

Je suppose que le cookie que créer de moodle dépend d'une seul machine, si on la met dans une autre machine,

moodle va faire des calculs pour savoir si c'est bien la machine en question qui utilise ce cookie.

Il faudrait déjà trouvé le les cookie que moodle à créer pour ensuite l'exploiter et moodle a aussi des mécanisme anti "xss".

En informatique il est toujours prudent car on n'est jamais à l' abris d'un bug ou faille donc il faudrait un test pour démonter que l'on peut usurper le serveur.



En réponse à stephane ngov

Re: cookie et sécurité

par Bruno Malaval,
Avatar Moodleurs particulièrement utiles

Bonjour,

La curiosité m'a fait revenir sur cette discussion,  et après quelques tests, je confirme la possibilité d'utiliser des cookies entre machine.

J'ai bien réussi à réutiliser un cookie de session entre 2 machines (moyennant des petits plugins pour manipuler les cookies dans les navigateurs)

  • Machine A ( Linux / Firefox )
    Authentification sur la plateforme + récupération du champ "valeur" du cookie
    Je suis donc connecté sous mon nom, sur ma plateforme Moodle
  • Machine B ( Windows / chrome )
    Affichage de la page d'accueil + édition du cookie
    Remplacement du champ "valeur" par la valeur issue de la machine A
    Je valide + recharge la page => je suis connecté avec mon compte
  • Déconnexion sur la machine B => déconnexion de la machine A
Concernant l'adresse IP, elle n'est pas utilisée pour générer les chaînes de valeur des cookies.
Je pense que cela est dû au fait que par définition, les cookies ne doivent pas être générés à partir d'informations personnelles, l'IP en est une.

Une fois le cookie transféré sur une autre machine, le serveur associe bien la valeur du cookie à la session en cours sur le serveur.

Ceci pour une durée limitée, puisque les sessions ne sont normalement pas en durée de vie infinie

Pour info, le même test passe également sur une autre plateforme que nous avons, à savoir zimbra.

Après, comme le rappelle Nicolas, c'est quand même un utilisateur qui fournit un cookie à un tiers pour accéder à son compte. Il pourrait tout aussi bien lui donner son login + mot de passe.
On arrive alors aux limites de la sécurité, où un système ne peut plus empêcher les mauvaises pratiques d'un utilisateur ayant des droits sur ce même système.
Ce n'est pas le même contexte qu'une "attaque" totalement externe.

Bruno
Moyenne des évaluations Utile (3)
En réponse à Bruno Malaval

Re: cookie et sécurité

par stephane ngov,

Bonsoir, c'est intéressant vos test,

Dans vos 2 pc avez vous déjà utiliser auparvant moodle ? avez-vous vider le cache et les historiques avant de faire un test ? il en faire un autre ,

récupérer le cookie, l'envoyer à un autre réseau, c'est à dire que l'adresse public doit être différent

(par exemple je surf avec une box orange, et j'utilise le cookie dupliqué avec une box free).

Si ce teste passe, c'est quand même un gros problème, il sufirait d'aspirer votre cookie, de le mettre sur sa machine pour pouvoir se loger, le cookie en question était pour un administrateur ou un pour étudiant/enseignant ?

Une fois j'ai été surpris de me connecter sur un pc client dont je n'avais pas encore taper mon site moodle mais que le formulaire d'authentification à préremplis mon mot de pass et login.

Je me suis posé la question comment le navigateur l' a su  alors que je ne l'ai jamais utilisé  (ni cliqué sur la case à cocher mémoriser mon mot de passe)?


que mon serveur moodle a retenu l'adresse ip public de la orange box?

qu'il traîne un virus qui copie des cookie entre clients ?


C'est un problème si moodle test uniquement un cookie pour entrer dans le site, sans utiliser l'adresse ip de la machine cliente.



En réponse à stephane ngov

Re: cookie et sécurité

par Bruno Malaval,
Avatar Moodleurs particulièrement utiles

En ce qui concerne le test sur Moodle, je l'ai fait avec 2 machines différentes, historique vidé .

Donc pas de traces de cookies. Et cela fonctionne.

J'ai utilisé mon compte personnel, donc pas administrateur mais cela ne fait pas de différence à mon sens.

Je reviens juste sur 2 remarques :

"Une fois j'ai été surpris de me connecter sur un pc client dont je n'avais pas encore taper mon site moodle mais que le formulaire d'authentification à préremplis mon mot de pass et login."

Il y a forcément une explication technique à cela, mais bon là il faudrait retrouver tout l'historique et c'est au moment où cela se produit qu'il faut investiguer.
Je ne mets pas en doute ce fait, simplement  c'est juste impossible sur une machine à laquelle vous n'avez jamais accédé. Ou alors votre compte a été compromis et utilisé par une autres personne. Difficile de dire ici ce qu'il en est par manque d'historique sur toutes les actions réalisées.

"Si ce teste passe, c'est quand même un gros problème, il sufirait d'aspirer votre cookie, de le mettre sur sa machine pour pouvoir se loger, le cookie en question était pour un administrateur ou un pour étudiant/enseignant ?"

Tout juste, sauf que "il sufirait d'aspirer votre cookie" signifie que votre machine est compromise, ou que vous avez laissé la possibilité d'injecter du code dans des pages qui aspirent des données, etc .... A partir du moment ou une faille de sécurité est exploitée sur votre machine, tout est possible.

Mais on ne se trouve plus dans un fonctionnement "normal"

On en revient à la remarque de mon précédent message : Si la machine est compromise, si elle contient un virus, si l'utilisateur fourni des informations à un tiers, etc .... oui il y a un risque de sécurité, mais ce n'est pas le système en lui-même (Moodle dans le cas présent) qui est en cause.

Bruno

Moyenne des évaluations Utile (2)
En réponse à Bruno Malaval

Re: cookie et sécurité

par stephane ngov,

Aujourd'hui le web change beaucoup, on ne sais ce que fait le navigateur de nos cookie, en plus les grand goupe comme google ajoute des nouvelle fonctionnalités comme la reconnaissance de la machine, la double authentification.

Aujourd'hui je pense que le cookie est dépasser, vu qu'il est facile de le récupérer par javascript, il est "facile" de le déposer sur un autre client au sein d'un même réseaux.

Avec du javascript on peut aussi travailler sur le localstorage, on ne sais combien de cookie dépose moodle, cela donne plus de possibilité à déposer des informations qu'on ne maîtrise pas.

suffit t'il par exemple d'avoir installé à notre insu un trousseau de cléf ? et que le cookie soit dupliqué dans ce trousseau ?

C'est trop dangereux de mettre uniquement un cookie pour s'authentifier et garder une session ouverte, il faut d'autre élément qui le permetent comme l'adresse ip de la machine, le type de navigateur qu'on a utiliser, éventuellement une adresse mac du wifi, un compte facebook,google .... qu'on a synchronisé (auth2).

Des jetons de sécurité...

il faudrait vidé le cache du client et vidé le cache du serveur moodle et faire le test et valider que un simple cookie puisse permettre de rentrer dans moodle.



En réponse à stephane ngov

Re: cookie et sécurité

par stephane ngov,

J'ai fait le test de mettre un cookie créer par firefox et l'injecter dans chrome (Chrome à droite , Firefox à gauche)

je suis sur le même PC

voici ce que cela donne si je me connecte avec un autre navigateur

Je tente de me reconnecter sur ma session cookie sous chrome:

chrome refuse car je suis déjà connecté sous firefox.

je ferme le navigateur firefox, toujours le même message, le cookie est déjà utiliser.

Pour moi cela veut dire qu'il y a une autre protection qui vérifie le cookie et à quel navigateur il appartient.

le cookie correspond à un compte administrateur, je n'ai vidé aucun cache

je suis sous moolde 3.4.

Cela me réconforte quand même que moodle ne laisse pas un simple cookie pour se connecter avec un autre client.

Après je n'ai pas eu le temps de faire des test poussé. C'est une question importante, donc si quelqu'un souhaite le faire, c'est pas très difficile, et donneur leur résultat selon la version, le navigateur, l'environnement windows,linux, mac  ....

on peut peut être constaté comme il est important de mettre à jour tout son environnement client/serveur

il faut suivre l'image avec la touche F12 firebug ,et utiliser la commande document.cookie pour récupérer le cookie et le déposer.

par précaution si vous faîte le test, il faut bien se déconnecter de moodle après la fin du test afin que cookie ne puisse pas être réutilisé , on n'est jamais assez prudent.

En réponse à stephane ngov

Re: cookie et sécurité

par Séverin Terrier,
Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

Bonjour,

Je ne sais pas trop dans quelle mesure ça rentre en ligne de compte, mais le réglage "Nombre limite de connexions simultanées" (limitconcurrentlogin) n'est sans doute pas inutile.

L'aide correspondante :

Si ce réglage est activé, le nombre de connexions simultanées d'un utilisateur est restreint. La session la plus ancienne est close une fois ce nombre de sessions atteint. Les utilisateurs pourraient perdre leurs contenus non enregistrés. Ce réglage n'est pas compatible avec les plugins d'authentification SSO (single sign-on).

Séverin


En réponse à Séverin Terrier

Re: cookie et sécurité

par stephane ngov,

Bonjour Severin,


c'est une bonne info que tu nous donnes sourire,

j'ai laissé tout par défaut lors de mon installation moodle 3.4, de plus

j'ai mis 0 plugin , et je n'ai pas de sso, de ldap de auth2 ...



En réponse à stephane ngov

Re: cookie et sécurité

par Bruno Malaval,
Avatar Moodleurs particulièrement utiles

Il y a également un plugin qui s'appelle "Unique login"

https://moodle.org/plugins/auth_uniquelogin

Le fonctionnement n'est apparemment pas tout a fait le même, mais je ne l'ai pas testé.

Pour la question des cookies, je n'y arrive pas effectivement avec les outils de debuggage intégrés.

Par contre, en utilisant le petit add-on "Edit this cookie" de Chrome, cela fonctionne toujours, même après m'être déconnecté, vider les caches, etc ...

Principe :

  • Je me connecte sur Firefox et edit le cookie. Je copie la valeur de "MoodleSession"
  • Sur chrome, je vais sur ma page d'accueil de Moodle, j'edir le cookie à partir de "EditThisCookie", copie la valeur de MoodleSession
  • Je sauvegarde la modif , recharge la page et je suis connecté ...
Bruno
En réponse à Bruno Malaval

Re: cookie et sécurité

par stephane ngov,

Je sauvegarde la modif , recharge la page et je suis connecté ...


c'est dans quel contexte le test ? quel version de moodle ? des navigateurs ?

à l'intérieur de l'université ? à domicile  ? il  y a pas un système de CAS ?


faire un autre simple se déconnecter de moodle histoire de repartir à 0,

se connecter

récupérer le cookie

le copier dans l'autre navigateur

vérifier si vous pouvez vous connecter

se deconnecter sur le moodle qui à été copier

se connecter sur le firefox hacké, et vérifier si le cookie est périmer.


Sur chrome, je vais sur ma page d'accueil de Moodle, j'edir le cookie à partir de "EditThisCookie", copie la valeur de MoodleSession


Les hacker n'utilise pas de logiciel comme editthiscookie, il récupère le cookie directement par javascript comme je vous l'ai montré (va savoir si editthiscookie fait autre chose ?? faire joue joue avec le cookie sur d'autre client ?...).


<script>

let recup_cookie = document.cookie();

//..envoyer le cookie au serveur du pirate

//..le serveur envoie de la pub vers un autre site et injecte le cookie sur le client à pirater

document.cookie= // le cookie du client piraté


</script>


après ça risque de devenir trop technique pensif pour cette section