Pour la plupart des gens, se connecter à des sites Web ou à des portails fait partie du quotidien de l’utilisation d’Internet. Chaque fois que vous vous connectez à un site Web, une session est créée. Une session est une communication entre deux systèmes, qui reste active jusqu’à ce que l’utilisateur mette fin à la communication. L’ouverture d’une session est essentielle pour que la communication puisse avoir lieu sur Internet, mais elle présente également un risque de détournement de session. Lisez la suite pour en savoir plus sur le détournement de session, son fonctionnement et les façons de s’en protéger.
Qu’est-ce que le détournement de session ?
Le détournement de session (parfois appelé détournement de cookies, détournement de session TCP ou reniflage de paquets) se produit lorsqu’un pirate informatique prend le contrôle de votre session Internet. Une telle situation peut se produire lorsque vous effectuez des achats en ligne, payez une facture ou vérifiez votre solde bancaire. Les pirates de session ciblent généralement les navigateurs ou les applications Internet, et leur objectif est de contrôler votre session de navigation pour accéder à vos informations personnelles ainsi qu’à vos mots de passe.
Les pirates de session se font passer pour vous auprès des sites Web. Ce type d’attaque peut avoir de graves conséquences pour la sécurité des applications, car il permet aux pirates informatiques d’obtenir un accès non autorisé à des comptes protégés (et aux données qu’ils contiennent) en se faisant passer pour un utilisateur légitime.
Qu’est-ce qu’une session ?
Chaque fois qu’un utilisateur accède à un site Web ou à une application par le biais d’une connexion HTTP, le service authentifie l’utilisateur (par exemple, au moyen d’un nom d’utilisateur et d’un mot de passe) avant d’ouvrir la ligne de communication et de lui accorder l’accès. Cependant, les connexions HTTP sont « sans état », ce qui signifie que chaque action d’un utilisateur est prise en compte de manière indépendante. Par conséquent, en se basant uniquement sur le protocole HTTP, les utilisateurs devraient s’authentifier à chaque action qu’ils entreprennent ou à chaque page qu’ils consultent.
Les sessions permettent de résoudre ce problème. Dès qu’un utilisateur se connecte, une session est créée sur le serveur hébergeant le site Web ou l’application et sert ensuite de référence pour l’authentification initiale. Les utilisateurs peuvent rester authentifiés aussi longtemps qu’une session reste ouverte sur le serveur et peuvent mettre fin à une session en se déconnectant du service. Certains services mettent fin à une session après une période d’inactivité bien précise.
De nombreux services créent ces sessions en délivrant un identifiant de session, une chaîne de chiffres et de lettres stockée dans des cookies de session temporaires, des URL ou des champs cachés sur le site Web. Dans certains cas, mais pas dans tous, ces identifiants de session sont chiffrés. Bien souvent, les identifiants de session reposent sur des informations prévisibles, comme l’adresse IP d’un utilisateur.
Comment fonctionne le détournement de session ?
Voici un exemple hypothétique de détournement de session :
Étape 1 : Un internaute se connecte à un compte comme il le ferait d’habitude.
Il peut s’agir de son compte bancaire ou de son compte de carte de crédit en ligne, d’un magasin en ligne, d’une application ou encore d’un portail. L’application ou le site Web installe un cookie de session temporaire dans le navigateur de l’utilisateur. Ce cookie contient des informations sur l’utilisateur qui permettent au site de maintenir son authentification et sa connexion et de suivre son activité pendant la session. Le cookie de session reste dans le navigateur jusqu’à ce que l’utilisateur se déconnecte (ou soit automatiquement déconnecté après une période d’inactivité déterminée).
Étape 2 : Un pirate informatique accède à la session valide de l’internaute.
Les cybercriminels ont recours à diverses méthodes pour voler des sessions. Souvent, le détournement de session consiste à voler le cookie de session de l’utilisateur, à localiser l’identifiant de session dans le cookie et à utiliser ces informations pour prendre le contrôle de la session. L’identifiant de session est également appelé clé de session. Lorsque le criminel obtient l’identifiant de session, il peut prendre le contrôle de la session sans être détecté.
Étape 3 : Le pirate de session est récompensé pour avoir volé la session.
Une fois que l’internaute d’origine a poursuivi son expérience en ligne, le pirate informatique peut utiliser la session en cours pour commettre divers actes malveillants. Il peut notamment s’agir de voler de l’argent sur le compte bancaire de l’utilisateur, d’acheter des objets, de s’emparer de données personnelles pour usurper une identité, ou encore de chiffrer des données importantes et d’exiger ensuite une rançon pour les récupérer.
Les attaques par détournement de session sont généralement menées contre des réseaux très fréquentés, avec un nombre élevé de sessions de communication actives. Le pirate informatique dispose ainsi d’un grand nombre de sessions à exploiter et dispose d’une certaine protection, car le nombre de sessions actives sur le serveur le rend moins susceptible d’être détecté.
Types de détournement de session
Scripts intersites
Une attaque par script intersite consiste pour les cybercriminels à exploiter les failles de sécurité d’un serveur Internet ou d’une application. La technique des scripts intersites consiste pour un pirate informatique à injecter des scripts dans des pages Internet. Ceux-ci amènent votre navigateur Web à révéler votre clé de session au pirate informatique lui permettant ainsi de prendre le contrôle de la session.
Reniflage de paquets
Dans ce type d’attaque, un criminel doit avoir accès au trafic réseau d’un utilisateur. Il peut y accéder lorsque l’utilisateur utilise un réseau Wi-Fi non sécurisé ou en procédant à des attaques de l’homme du milieu. Dans le cas du reniflage de paquets, un criminel utilise un « renifleur de paquets » pour surveiller le trafic réseau d’un utilisateur du réseau Internet afin de rechercher des sessions. Le pirate informatique peut ainsi obtenir un cookie de session et l’utiliser pour prendre le contrôle de celle-ci.
Fixation de session
Dans une attaque par fixation de session, le criminel crée un identifiant de session et incite l’utilisateur à démarrer une session avec cet identifiant. Pour ce faire, il peut envoyer à l’utilisateur un email contenant un lien vers une page d’identification correspondant au site Web auquel le pirate informatique veut accéder. L’utilisateur se connecte en utilisant le faux identifiant de session, ce qui permet au pirate informatique de s’introduire dans la session.
Attaque de l’homme dans le navigateur
Cette attaque est semblable à l’attaque de l’homme du milieu, à la différence que le pirate informatique doit d’abord infecter l’ordinateur de la victime en y introduisant un cheval de Troie. Une fois que la victime a été convaincue d’installer le programme malveillant sur son système, le programme attend que la victime se rende sur un site ciblé. Le programme malveillant de type « homme dans le navigateur » peut modifier de manière invisible les informations relatives aux transactions et peut également créer des transactions supplémentaires à l’insu de l’utilisateur. Étant donné que les demandes sont lancées à partir de l’ordinateur de la victime, il est très difficile pour le service Web de détecter qu’il s’agit de fausses demandes.
Identifiant de jeton de session prévisible
De nombreux serveurs Web utilisent un algorithme personnalisé ou un modèle prédéfini pour générer des identifiants de session. Plus un jeton de session est prévisible, plus il est faible. Si des pirates informatiques parviennent à capturer plusieurs identifiants et à analyser le modèle, ils peuvent être en mesure de prédire un identifiant de session valide. (cette approche peut être comparée à une attaque par force brute)
En quoi le détournement de session diffère-t-il de l’usurpation de session ?
Le détournement de session et l’usurpation de session présentent des similitudes, mais ne correspondent pas au même type d’attaque. La principale différence entre les deux est que le détournement de session se produit lorsqu’un utilisateur légitime est déjà connecté à une session Web. En revanche, l’usurpation de session se produit lorsque des pirates informatiques se font passer pour un utilisateur afin de lancer une nouvelle session Web (ce qui signifie que l’utilisateur n’a pas besoin d’être connecté à ce moment-là).
Cette distinction signifie que les utilisateurs légitimes subissent les attaques différemment. Dans le cas du détournement de session, un pirate informatique interrompant la session peut entraîner un comportement inhabituel du site Web ou de l’application, voire un plantage pour la victime. Cependant, comme l’utilisateur n’est pas activement connecté lors d’une attaque par usurpation de session, il ne subira aucune perturbation lors de sa prochaine session.
Impact des attaques par détournement de session
Le fait de ne pas prendre de mesures pour empêcher le détournement de session comporte de nombreux risques. Voici quelques-uns de ces dangers :
Usurpation d'identité
En obtenant un accès non autorisé aux informations personnelles sensibles enregistrées dans les comptes, les pirates informatiques peuvent voler l’identité d’une victime au-delà des limites de l’application ou du site Web piratés.
Vol financier
Grâce au détournement de session, les pirates informatiques peuvent effectuer des transactions financières au nom de l’utilisateur. Il peut s’agir de transférer de l’argent à partir d’un compte bancaire ou d’effectuer des achats à l’aide d’informations de paiement enregistrées.
Infection par un programme malveillant
Si un pirate informatique parvient à voler l’identifiant de session d’un utilisateur, il peut également être en mesure d’infecter l’ordinateur de l’utilisateur par des programmes malveillants. Cela peut lui permettre de prendre le contrôle de l’ordinateur de la cible et de voler ses données.
Attaque par déni de service (DoS)
Un pirate informatique qui prendrait le contrôle de la session d’un utilisateur pourrait lancer une attaque DoS contre le site Web ou le serveur auquel il est connecté, ce qui perturberait le service ou provoquerait un plantage du site.
Accès à d’autres systèmes grâce à l’authentification unique (SSO)
L’authentification unique est également appelée SSO. Les pirates informatiques peuvent également obtenir un accès non autorisé à d’autres systèmes si l’authentification unique est activée, ce qui étend encore le risque d’une attaque par détournement de session. Ce risque est particulièrement important pour les organisations, dont un grand nombre permet désormais aux employés de se connecter par authentification unique. En fin de compte, cela signifie que même les systèmes hautement protégés, dotés de protocoles d’authentification plus robustes et de cookies de session moins prévisibles, comme ceux qui contiennent des informations financières ou des informations sur les clients, peuvent être seulement protégés par le maillon le plus faible de l’ensemble du système.
Exemples d’attaques par détournement de session
Zoombombing
Lors de la pandémie de Covid-19, le monde s’est tourné vers des applications de vidéoconférence comme Zoom. Ces applications sont devenues la cible privilégiée des pirates de session, ce qui a valu à ces pratiques le surnom de « zoombombing ». Les médias ont rapporté que des pirates de session s’étaient joints à des sessions vidéo privées, proférant parfois des injures et des propos haineux et partageant des images pornographiques. En réponse, Zoom a mis en place des mesures de protection de la vie privée plus importantes afin de minimiser le risque.
Slack
En 2019, un chercheur sur une plateforme de prime aux bogues a découvert une vulnérabilité dans Slack qui permettait à des pirates informatiques de forcer les utilisateurs à effectuer de fausses redirections de session et ainsi de voler leurs cookies de session. Les pirates informatiques pouvaient ainsi accéder à toutes les données partagées au sein de Slack (qui, pour de nombreuses organisations, peuvent être très nombreuses). Slack n’a pas tardé à réagir et a corrigé la vulnérabilité dans les 24 heures qui ont suivi le moment où le chercheur l’a signalée.
GitLab
En 2017, un chercheur en sécurité a découvert une vulnérabilité dans GitLab où les jetons de session des utilisateurs étaient accessibles directement dans l’URL. Une enquête plus approfondie a révélé que GitLab utilisait également des jetons de session persistants qui n’expiraient jamais, ce qui signifiait qu’une fois qu’un pirate informatique avait obtenu un jeton de session, il pouvait l’utiliser sans se soucier de la date d’expiration. Cette combinaison de vulnérabilité ouverte et de jetons persistants présentait un risque sérieux, exposant les utilisateurs à diverses attaques graves par détournement de session au moyen d’une attaque par force brute. GitLab a corrigé la vulnérabilité en modifiant la façon dont ces jetons sont utilisés et stockés.
Comment se protéger du détournement de session ?
Suivez ces conseils de prévention du détournement de session pour renforcer votre sécurité en ligne :
Évitez les réseaux Wi-Fi publics
Évitez d’effectuer des transactions importantes, comme des opérations bancaires ou des achats en ligne, ou encore de vous connecter à votre messagerie électronique ou à vos comptes de réseaux sociaux sur un réseau Wi-Fi public. Il se peut qu’un cybercriminel se trouve à proximité et qu’il recoure au reniflage de paquets pour tenter de récupérer des cookies de session et d’autres informations.
Utilisez un VPN
Si vous devez utiliser un réseau Wi-Fi public, utilisez un réseau privé virtuel (VPN) pour optimiser votre sécurité et empêcher les pirates de session d’accéder à vos sessions. Un VPN masque votre adresse IP et préserve la confidentialité de vos activités en ligne en créant un tunnel privé par lequel transite l’ensemble de votre activité en ligne. Un VPN chiffre les données que vous envoyez et recevez.
Soyez attentif au phishing et aux autres escroqueries en ligne
Évitez de cliquer sur un lien contenu dans un email si vous n’êtes pas sûr qu’il provient d’un expéditeur fiable. Les pirates de session peuvent vous envoyer un email vous invitant à cliquer sur un lien. Le fait de cliquer sur le lien peut entraîner l’installation d’un programme malveillant sur votre appareil ou vous amener à une page d’identification qui vous connectera à un site à l’aide d’un identifiant de session préparé par le pirate informatique.
Soyez attentif à la sécurité des sites
Les banques, les fournisseurs de services de messagerie, les vendeurs au détail en ligne et les sites de réseaux sociaux dignes de confiance ont mis en place des mesures de protection pour éviter le détournement de session. Recherchez les sites Web dont l’URL commence par HTTPS, le S signifiant « sécurisé ». L’utilisation de boutiques en ligne douteuses ou d’autres fournisseurs qui ne disposent pas d’une sécurité solide peut vous rendre vulnérable à une attaque par détournement de session.
Utilisez un logiciel antivirus
Installez un logiciel antivirus fiable, capable de détecter facilement les virus et de vous protéger contre tous les types de programmes malveillants (y compris les programmes malveillants utilisés par les pirates informatiques pour détourner des sessions). Maintenez vos systèmes à jour en activant leur mise à jour automatique sur l’ensemble de vos appareils.
Produits associés :
Lecture complémentaire :