Protocole d'authentification - Authentication protocol

Un protocole d'authentification est un type de protocole de communication informatique ou de protocole cryptographique spécialement conçu pour le transfert de données d' authentification entre deux entités. Il permet à l'entité réceptrice d'authentifier l'entité de connexion (par exemple Client se connectant à un Serveur) ainsi que de s'authentifier auprès de l'entité de connexion (Serveur à un client) en déclarant le type d'informations nécessaires à l'authentification ainsi que la syntaxe. Il s'agit de la couche de protection la plus importante nécessaire pour une communication sécurisée au sein des réseaux informatiques.

But

Avec la quantité croissante d'informations fiables accessibles sur le réseau, le besoin d'empêcher les personnes non autorisées d'accéder à ces données est apparu. Voler l'identité de quelqu'un est facile dans le monde informatique - des méthodes de vérification spéciales ont dû être inventées pour savoir si la personne/l'ordinateur demandant des données est bien celui qu'il prétend être. La tâche du protocole d'authentification est de spécifier la série exacte d'étapes nécessaires à l'exécution de l'authentification. Il doit respecter les grands principes du protocole :

  1. Un protocole doit impliquer deux ou plusieurs parties et toutes les personnes impliquées dans le protocole doivent connaître le protocole à l'avance.
  2. Toutes les parties incluses doivent suivre le protocole.
  3. Un protocole doit être sans ambiguïté - chaque étape doit être définie avec précision.
  4. Un protocole doit être complet - doit inclure une action spécifiée pour chaque situation possible.

Une illustration de l'authentification par mot de passe utilisant un protocole d'authentification simple :

Alice (une entité souhaitant être vérifiée) et Bob (une entité vérifiant l'identité d'Alice) sont tous deux au courant du protocole qu'ils ont convenu d'utiliser. Bob a le mot de passe d'Alice stocké dans une base de données pour comparaison.

  1. Alice envoie à Bob son mot de passe dans un paquet respectant les règles du protocole.
  2. Bob compare le mot de passe reçu à celui stocké dans sa base de données. Ensuite, il envoie un paquet indiquant « Authentification réussie » ou « Échec de l'authentification » en fonction du résultat.

Il s'agit d'un exemple de protocole d'authentification très basique vulnérable à de nombreuses menaces telles que l' écoute clandestine , l' attaque par rejeu , les attaques de l' intercepteur, les attaques par dictionnaire ou les attaques par force brute . La plupart des protocoles d'authentification sont plus compliqués afin d'être résilients contre ces attaques.

Les types

Protocoles d'authentification développés pour PPP Point-to-Point Protocol

Les protocoles sont principalement utilisés par les serveurs PPP ( Point-to-Point Protocol ) pour valider l'identité des clients distants avant de leur accorder l'accès aux données du serveur. La plupart d'entre eux utilisent un mot de passe comme pierre angulaire de l'authentification. Dans la plupart des cas, le mot de passe doit être partagé au préalable entre les entités communicantes.

Schéma de prise de contact PAP à 2 voies

PAP - Protocole d'authentification par mot de passe

Le protocole d'authentification par mot de passe est l'un des plus anciens protocoles d'authentification. L'authentification est initialisée par l'envoi d'un paquet d' informations d' identification (nom d'utilisateur et mot de passe) par le client au début de la connexion, le client répétant la demande d'authentification jusqu'à réception de l'accusé de réception. Il est très peu sûr car les informations d'identification sont envoyées « en clair » et à plusieurs reprises, ce qui le rend vulnérable même aux attaques les plus simples comme l' écoute clandestine et les attaques basées sur l'intercepteur. Bien que largement supportée, il est précisé que si une implémentation propose une méthode d'authentification plus forte, cette méthode doit être proposée avant PAP. Une authentification mixte (par exemple, le même client utilisant alternativement à la fois PAP et CHAP) n'est pas non plus attendue, car l'authentification CHAP serait compromise si PAP envoyait le mot de passe en clair.

CHAP - Protocole d'authentification Challenge-handshake

Le processus d'authentification dans ce protocole est toujours initialisé par le serveur/hôte et peut être effectué à tout moment au cours de la session, même à plusieurs reprises. Le serveur envoie une chaîne aléatoire (généralement 128B de long). Le client utilise le mot de passe et la chaîne reçue comme paramètres pour la fonction de hachage MD5, puis envoie le résultat avec le nom d'utilisateur en texte brut. Le serveur utilise le nom d'utilisateur pour appliquer la même fonction et compare le hachage calculé et reçu. Une authentification est réussie ou non.

EAP - Protocole d'authentification extensible

EAP a été développé à l'origine pour PPP (Point-to-Point Protocol) mais est aujourd'hui largement utilisé dans IEEE 802.3 , IEEE 802.11 (WiFi) ou IEEE 802.16 dans le cadre du cadre d' authentification IEEE 802.1x . La dernière version est normalisée dans la RFC 5247. L'avantage d'EAP est qu'il ne s'agit que d'un cadre d'authentification général pour l'authentification client-serveur - le mode d'authentification spécifique est défini dans ses nombreuses versions appelées méthodes EAP. Il existe plus de 40 méthodes EAP, les plus courantes sont :

Protocoles d'architecture AAA (Authentification, Autorisation, Comptabilité)

Protocoles complexes utilisés dans les grands réseaux pour vérifier l'utilisateur (Authentification), contrôler l'accès aux données du serveur (Autorisation) et surveiller les ressources du réseau et les informations nécessaires à la facturation des services (Comptabilité).

TACACS , XTACACS et TACACS+

Le plus ancien protocole AAA utilisant l'authentification basée sur IP sans aucun cryptage (les noms d'utilisateur et les mots de passe étaient transportés en texte brut). La version ultérieure XTACACS (Extended TACACS) a ajouté l'autorisation et la comptabilité. Ces deux protocoles ont ensuite été remplacés par TACACS+. TACACS+ sépare les composants AAA afin qu'ils puissent être séparés et gérés sur des serveurs séparés (il peut même utiliser un autre protocole pour, par exemple, l'autorisation). Il utilise TCP (Transmission Control Protocol) pour le transport et crypte l'ensemble du paquet. TACACS+ est la propriété de Cisco.

RAYON

Le service RADIUS ( Remote Authentication Dial-In User Service ) est un protocole AAA complet couramment utilisé par les FAI . Les informations d'identification sont principalement basées sur une combinaison nom d'utilisateur-mot de passe, elles utilisent les protocoles NAS et UDP pour le transport.

DIAMÈTRE

Diameter (protocole) a évolué à partir de RADIUS et implique de nombreuses améliorations telles que l'utilisation d'un protocole de transport TCP ou SCTP plus fiable et une sécurité accrue grâce à TLS .

Autre

Schéma d'authentification Kerberos

Kerberos (protocole)

Kerberos est un système d'authentification réseau centralisé développé au MIT et disponible en tant qu'implémentation gratuite auprès du MIT mais également dans de nombreux produits commerciaux. Il s'agit de la méthode d'authentification par défaut dans Windows 2000 et versions ultérieures. Le processus d'authentification lui-même est beaucoup plus compliqué que dans les protocoles précédents - Kerberos utilise la cryptographie à clé symétrique , nécessite un tiers de confiance et peut utiliser la cryptographie à clé publique lors de certaines phases d'authentification si besoin est.

Liste de divers autres protocoles d'authentification

Les références