Qu’est-ce que le détournement de session et les moyens de prévention

Saviez-vous qu’un pirate peut effectuer des virements bancaires ou des achats en ligne en votre nom sans voler vos informations d’enregistrement ?

Nous associons les cookies au suivi et aux publicités en ligne gênantes, mais ils stockent également les requêtes de recherche, nous permettant de visiter des sites Web sans entrer de nom d’utilisateur ni de mot de passe.

Cependant, si quelqu’un intercepte le cookie, cela peut conduire à une cyberattaque catastrophique appelée détournement de session, qui peut mettre vos données sensibles en danger entre les mains d’attaquants, et cela peut faire beaucoup de dégâts avant même que vous ne sachiez ce qui s’est passé.

Découvrons ce que c’est et comment vous pouvez l’éviter !

Qu’est-ce que le piratage de session ?

Dans le détournement de session, un attaquant intercepte et prend le contrôle d’une session établie entre un utilisateur et un hôte, tel qu’un serveur Web, une session Telnet ou toute autre connexion basée sur TCP. Une session démarre dès que vous vous connectez à un site Web ou à une application, par exemple, un site Web de réseau social.

Il se poursuit pendant que vous êtes à l’intérieur du compte, que vous consultez votre profil ou que vous participez à un fil de discussion, et se termine lorsque vous vous déconnectez du système. Mais comment le serveur Web sait-il que chaque requête que vous faites provient de vous ?

C’est là qu’interviennent les cookies. Après vous être connecté, vous soumettez vos informations d’identification au serveur Web. Il confirme qui vous êtes et vous donne un identifiant de session à l’aide d’un cookie qui vous sera attaché pendant la durée de la session. C’est pourquoi vous ne vous déconnectez pas d’une application chaque fois que vous visitez le profil de quelqu’un et pourquoi la boutique en ligne se souvient de ce que vous avez mis dans votre panier même si vous actualisez la page.

Mais les attaquants peuvent détourner la session s’ils utilisent des techniques spéciales de gestion de session ou volent votre cookie. Ainsi, cela peut tromper le serveur Web en lui faisant croire que les demandes proviennent de vous, l’utilisateur autorisé.

Le phénomène de détournement de session est devenu célèbre au début des années 2000, mais il reste l’une des méthodes les plus couramment utilisées par les pirates.

Un exemple récent est le groupe Lapsus $, qui fait partie de la liste des personnes les plus recherchées du FBI cette année. Il utilise l’infection InfoStealer Maleware pour détourner la session.

De même, GenesisStore est un magasin sur invitation uniquement géré par un groupe du même nom qui vend des données de cookies compromises, et sa liste dépasse plus de 400 000 robots.

Types de capture de session

Le détournement de session peut être divisé en deux catégories principales, selon les désirs de l’auteur.

Actif : lors d’une attaque active, l’attaquant prend le contrôle de votre session, prenant ainsi la connexion du client légitime à la ressource. Selon le site de la session, le pirate peut effectuer des achats en ligne, modifier des mots de passe ou récupérer des comptes. Un exemple courant d’attaque active est une attaque par force brute, XSS ou même DDoS.

Source : OSWAP

Passive : lors d’une attaque passive, l’attaquant ne prend pas le contrôle de la session ni ne la modifie. Au lieu de cela, ils surveillent discrètement le trafic de données entre votre appareil et le serveur, collectant toutes les informations sensibles. Habituellement, l’usurpation d’adresse IP et l’injection de logiciels malveillants sont utilisées pour mener des attaques par injection passive.

Source : OSWAP

Comment fonctionne le piratage de session ?

HTTP est un protocole sans état, ce qui signifie que le serveur n’a aucune mémoire du fonctionnement du client. Chaque nouvelle requête HTTP coïncide avec une nouvelle unité de travail, ou pour le dire plus simplement, le serveur sert des pages au client sans se souvenir des requêtes précédentes du client.

Quand on navigue sur le web, on se rend compte cependant que les applications savent idéalement qui est le client (même trop bien !). Grâce à cette « mémoire » du serveur, « il est possible de créer des espaces réservés modernes de sites Web, de banques en ligne, de services de messagerie Web, etc.

Pour ce faire, un appendice est né qui rend un protocole sans état comme HTTP avec état : les cookies.

Sessions avec état

Une fois connectées, les applications Web qui utilisent la session avec état déposent un cookie de session. Cela signifie qu’ils s’appuient sur ce cookie pour suivre le client. A l’intérieur du cookie est enregistré un code unique qui permet la reconnaissance du client, par exemple :

ID DE SESSION=ACF3D35F216AAEFC

Toute personne possédant l’identifiant ou le code de session unique mentionné ci-dessus serait le client authentifié pour le serveur. Si un attaquant pouvait obtenir cet identifiant, comme le montre l’image ci-dessous, il pourrait exploiter la session initialement validée pour sa victime soit en reniflant une session légitime, soit même en prenant complètement le contrôle de la session. Cet identifiant est généralement intégré dans l’URL, dans le champ masqué de n’importe quel formulaire ou dans les cookies.

OSWAP

Sessions sans état

Avec l’évolution du web, des solutions sont apparues pour gérer la « mémoire » du serveur sans utiliser de cookies de session. Dans une application Web où le frontend et le backend sont bien séparés et ne parlent que via l’API, la meilleure solution pourrait être un JWT (JSON Web Token), un jeton signé qui permet au frontend de consommer les API fournies par le backend.

Habituellement, le JWT est enregistré dans le sessionStorage du navigateur, une zone de mémoire que le client garde active jusqu’à ce que l’onglet soit fermé. Par conséquent, l’ouverture d’un nouvel onglet crée une nouvelle session (contrairement à ce qui se passe avec les cookies).

Le vol du jeton d’identification du client vous permet de voler la session de l’utilisateur et ainsi de mener une attaque de détournement de session. Mais comment voler ce jeton ?

Actuellement, les méthodes les plus utilisées par les hackers sont :

#1. Jacking côté session

Cette méthode utilise des réseaux non sécurisés pour connaître votre ID de session. L’attaquant utilise le sniffing (logiciel spécial) et cible généralement le Wi-Fi public ou les sites Web sans certificat SSL, qui sont connus pour leur faible sécurité.

#2. Fixation de session

La victime utilise l’ID de session créé par l’attaquant. Il peut le faire avec une attaque de phishing (via un lien malveillant) qui « corrige » votre identifiant de session.

#3. Force brute

La méthode la plus longue et la plus inefficace. Lors de cette attaque, le pirate ne vole pas vos cookies. Au lieu de cela, il essaie toutes les combinaisons possibles pour deviner votre ID de session.

#4. XSS ou Cross-site Scripting

Un pirate informatique exploite les vulnérabilités des sites Web ou des applications pour injecter du code malveillant. Lorsqu’un utilisateur visite le site, le script est activé, vole les cookies de l’utilisateur et les envoie à l’attaquant.

#5. Injection de logiciels malveillants

Les logiciels malveillants peuvent effectuer des actions non autorisées sur votre appareil pour voler des informations personnelles. Il est également souvent utilisé pour intercepter les cookies et envoyer des informations à un attaquant.

#6. Usurpation d’IP

Un cybercriminel modifie l’adresse IP source de son paquet pour le faire apparaître comme provenant de vous. À cause de la fausse adresse IP, le serveur Web pense que c’est vous et la session est piratée.

Comment empêcher le piratage de session ?

La possibilité de détournement de session dépend généralement de la sécurité des sites Web ou des applications que vous utilisez. Cependant, vous pouvez prendre certaines mesures pour vous protéger :

  • Évitez le Wi-Fi public, car les points d’accès gratuits sont idéaux pour les cybercriminels. Ils ont généralement une sécurité médiocre et peuvent être facilement usurpés par des pirates. Sans oublier qu’ils regorgent toujours de victimes potentielles dont le trafic de données est constamment compromis.
  • Tout site n’utilisant pas de certificat SSL vous rend vulnérable, car il ne peut pas chiffrer le trafic. Vérifiez si le site est sécurisé en recherchant un petit cadenas à côté de l’URL.

  • Installez une application anti-malware pour détecter et protéger votre appareil contre les logiciels malveillants et les rats qui peuvent voler des informations personnelles.
  • Évitez de télécharger des logiciels malveillants en utilisant des magasins d’applications ou des sites Web officiels pour télécharger des applications.
  • Si vous recevez un message vous demandant de cliquer sur un lien inconnu, ne le faites pas. Cela pourrait être une attaque de phishing qui peut infecter votre appareil et voler des informations personnelles.

L’utilisateur ne peut pas faire grand-chose contre une attaque de détournement de session. Au contraire, cependant, l’application peut remarquer qu’un appareil différent s’est connecté avec le même identifiant de session. Et en vous appuyant sur cela, vous pouvez concevoir des stratégies d’atténuation telles que :

  • Associez à chaque session une empreinte technique ou des caractéristiques de l’appareil connecté pour détecter les changements dans les paramètres enregistrés. Ces informations doivent être enregistrées dans le cookie (pour les sessions avec état) ou le JWT (pour les sessions sans état), absolument cryptées.
  • Si la session est basée sur des cookies, supprimez le cookie avec l’attribut HTTPOnly pour le rendre inaccessible en cas d’attaque XSS.
  • Configurez un système de détection d’intrusion (IDS), un système de prévention d’intrusion (IPS) ou une solution de surveillance réseau.
  • Certains services effectuent des vérifications secondaires de l’identité de l’utilisateur. Par exemple, un serveur Web pourrait vérifier à chaque requête que l’adresse IP de l’utilisateur correspond à la dernière utilisée au cours de cette session. Cependant, cela n’empêche pas les attaques d’une personne partageant la même adresse IP et pourrait être frustrant pour les utilisateurs dont l’adresse IP peut changer au cours d’une session de navigation.
  • Alternativement, certains services changeront la valeur du cookie à chaque demande. Cela réduit considérablement la fenêtre dans laquelle un attaquant peut opérer et permet d’identifier plus facilement si une attaque s’est produite mais peut causer d’autres problèmes techniques.
  • Utilisez différentes solutions d’authentification multifacteur (MFA) pour chaque session utilisateur.
  • Gardez tous les systèmes à jour avec les derniers correctifs et mises à jour de sécurité.

FAQ

En quoi le détournement de session est-il différent de l’usurpation de session ?

Le détournement de session consiste à se faire passer pour l’utilisateur, tandis que le spoofing consiste à remplacer l’utilisateur. Au cours des dernières années, certains analystes de la sécurité ont commencé à caractériser ce dernier comme un type de détournement de session.

Derniers mots

La fréquence des attaques par détournement de session a augmenté ces dernières années ; par conséquent, il est devenu de plus en plus important de comprendre ces attaques et de suivre des mesures préventives. Cependant, tout comme la technologie se développe, les attaques deviennent également plus sophistiquées ; par conséquent, il est essentiel de créer des stratégies d’atténuation actives contre le détournement de session.

Vous pourriez également être intéressé de savoir combien valent vos données sur le dark web.