Un service que j'utilise a une limite de temps (apparemment assez courte - 10-20 secondes peut-être) pour entrer les informations d'identification sur la page Web de connexion. Une tentative de connexion après cette période donne le message ci-dessous:
[Pour des raisons de sécurité, les utilisateurs sont tenus de saisir leurs informations d'identification dans un délai donné. Cette période a été dépassée. Nous aimerions vous demander de vous reconnecter.]
La page s'actualise ensuite et je peux me connecter sans problème.
Quels problèmes de sécurité ce service pourrait-il essayer de résoudre en exigeant la connexion dans une "période donnée"?
Cela semble être une solution orientée vers la gestion des sessions backend.
Je suppose que les utilisateurs anonymes n'initient aucune sorte de session, mais une session est instanciée une fois que vous accédez à la page de connexion. Lorsque vous vous connectez, cela est noté dans votre session et vous pouvez utiliser leur site et leurs services. Si vous ne vous connectez pas dans un certain délai, ils continuent et mettent fin à votre session.
Compte tenu du marché dans lequel ils opèrent (sécurité), je pouvais les voir être une cible pour le DDoSing via la consommation de ressources, ce serait donc plus une solution de gestion des ressources qu'autre chose (empêche le nombre de sessions ouvertes de dépasser un certain seuil).
Il s'agit donc de sécurité pour leur infrastructure, et non de sécurité pour votre compte.
Il se peut qu'ils aient émis une sorte de jeton de vérification sur le formulaire qu'ils publient sur le serveur dans le cadre de la connexion, qui expire après un certain temps. Ne pas dire si c'est une bonne solution ou non, juste que cela peut être la raison.
OWASP possède ces informations: https://www.owasp.org/index.php/Session_Management_Cheat_Sheet#Initial_Login_Timeout
Oui, le délai de connexion est une atténuation contre l'attaque suivante connue sous le nom de attaque de fixation de session :
Un utilisateur malveillant a son propre compte PandaCloud contenant une série de faux fichiers.
Un utilisateur malveillant accède à un ordinateur public, par ex. dans une bibliothèque, une université ou un café, et ouvre une session.
Malicious fait une copie de ses cookies de session.
Un utilisateur malveillant revient à la page de connexion à PandaCloud mais ne se connecte pas.
La page PandaCloud, lors du chargement, supprime tous les cookies afin de réinitialiser le navigateur à un état propre.
Un utilisateur malveillant remplace ses cookies dans la boutique de cookies du navigateur.
Un utilisateur malveillant quitte le bureau et va dans un coin pour regarder.
Un utilisateur naïf arrive et se connecte. Le script qui efface les cookies existants a déjà été exécuté à l'étape 5 et ne s'exécute pas à nouveau, de sorte que les cookies de l'utilisateur malveillant sont envoyés au PandaCloud.
Un utilisateur naïf pense accéder à son propre compte, mais accède en fait à l'utilisateur malveillant.
Un utilisateur naïf télécharge des fichiers confidentiels, puis se déconnecte.
Un utilisateur malveillant se connecte et télécharge les fichiers confidentiels.
Le délai a pour but de réduire l'exposition qui se produit entre les étapes 5 et 8. Si elle est suffisamment courte, il est plus ou moins impossible de réussir cette attaque.
Il existe cependant de bien meilleures façons de le gérer, telles que l'utilisation de plusieurs cookies et le stockage d'une partie du serveur d'informations utilisateur. Peut-être que ces autres méthodes étaient irréalisables en raison d'autres contraintes techniques.
Compte tenu des informations sur lesquelles nous devons nous baser, j'aime beaucoup les spéculations déjà données. Certains mieux que d'autres. Donc, étant donné toutes les spéculations auxquelles nous semblons avoir droit, permettez-moi de lancer un autre scénario de cas vraiment très Edge:
Protéger l'utilisateur facilement distrait
L'utilisateur saisit ses informations d'identification mais n'a pas encore appuyé sur le bouton d'envoi. Se laisse distraire, appelé, décide de commencer à parcourir une page différente en raison d'une notification sur les réseaux sociaux ou autre. Fondamentalement, ils ont rempli toutes leurs informations d'identification mais n'ont pas soumis.
Puis ils quittent leur machine: machine publique, bibliothèque, ordinateur portable dans un café lors d'une pause salle de bain (hé, j'ai vu des gens laisser leur voiture rouler en allant dans un dépanneur ... ça peut arriver!)
L'attaquant potentiel peut accéder à la machine et soumettre le formulaire, mais avec le court délai, leur session sera expirée. Bien sûr, au lieu de soumettre, il existe probablement des façons plus intéressantes de récupérer un mot de passe à partir d'un champ ****** afin qu'il puisse ensuite être correctement réutilisé pour l'accès. Mais c'est un problème de sécurité différent.
Les raisons suivantes peuvent être une raison:
1) Vous fournissez un nom d'utilisateur et des informations d'identification et quelque chose vous pousse à quitter l'ordinateur avant d'appuyer sur le bouton Soumettre
2) Un attaquant accède à votre ordinateur et appuie sur le bouton Soumettre. Enfin, l'attaquant peut utiliser vos applications.
Par exemple, le fournisseur Keycloak OpenIDConnect limite la durée du processus de connexion.