![]() |
guill.net
-
La page des réseaux
|
![]() ![]() |
Intoduction
Quand faut-il
authentifier?
Fonctionnement
des protocoles d'authentification
Les principaux
protocoles d'authentification
Quelques
logiciels d'authentification
Le futur
de l'authentifiaction
Conclusion
Détecter les intrusions permet de limiter les incidents. Les techniques de détection d'intrusions et d'authentification se perfectionnent pour fortifier le système d'information. Dans l'éternel combat entre les pirates et les créateurs de systèmes de sécurité, les progrès de l'un sont toujours suivis, voire précédés, par ceux de l'autre. Et dans le cas des systèmes d'information, les exploits des pirates, s'ils ne constituent que la partie émergée de l'iceberg des incidents qui proviennent des tentatives d'intrusion (tentées ou réussies), sont autant de signaux d'alarme qu'il convient de prendre au sérieux. La mise en place d'un système de sécurité doit donc faire l'objet d'une stratégie globale et d'une politique rigoureuse de définition et d'application des mesures de sécurité. L’authentification fait partie de ces mesures de sécurité. Elle consiste à apporter la preuve de l’identité d’un utilisateur sur un réseau informatique.
L’authentification des utilisateurs
intervient :
- Sur un réseau local
- Sur un réseau étendu
local client-serveur de type Intranet
- Sur un réseau Internet
pour accéder à des parties confidentielles ou payantes des
sites web.
- Sur un réseau local
client-serveur classique : Windows NT, Novell Netware.
- Sur un réseau étendu
avec accès distant : Windows NT RAS (Remote Access Service)
- Accès à
des serveurs confidentiels ou payants, téléservice bancaire,
ordre de bourse, commerce électronique, EDI, etc.
Fonctionnement des protocoles d'authentification
Les protocoles d’authentification ont chacun leur propre manière d’authentifier un utilisateur ou une machine. Ils utilisent différent algorithmes, différentes techniques. Cependant, tous ont quasiment le même principe de fonctionnement qui est à base de clés.
Empreinte et intégrité d’un message
Empreinte
Il s’agit de générer
l’empreinte d’un message afin de certifier que le contenu de celui-ci n’a
pas été modifié. Il s’agit en fait d’une somme de
contrôle obtenue par un calcul numérique.
Il existe différents
algorithmes certifiés tels que MD2, MD4, MD5 ou SHA1.
Ce sont généralement
des fonctions de hachages. Pour qu’un tel algorithme soit efficace, il
faut que la probabilité d’obtenir une même empreinte à
partir de deux documents différents soit minimale.
Intégrité d’un message
Cette empreinte ainsi obtenue
est cryptée par l’émetteur à l’aide de sa clef privée,
et ajoutée au message.
A la réception, le
destinataire réalise la même empreinte et décrypte
l’empreinte envoyée à l’aide de la clef publique de l’émetteur.
Si les deux empreintes sont égales, le destinataire peut être
sur de l’intégrité du message et de son émetteur.
(à condition d’être sur de la relation Clef publique/émetteur)
Avantages : Le destinataire
est sur de l'intégrité du message et de son origine.
Inconvénients : Le
destinataire doit posséder de manière fiable la clef publique
de l'émetteur.
Certificats
Principe
Un Certificat est un document
électronique attestant qu’une clef publique appartient réellement
à un individu ou à une organisation.
Les certificats sont délivrés
par des autorités de certification. Elles sont appelées CAs
(Certificates Authorities).
L’entité contacte
une de ces autorités et lui transmet sa clef publique. L’autorité
vérifie les informations : identité de l’individu, propriétaire
de la clef, etc.; et délivre un certificat attestant la relation
entre le propriétaire et sa clef publique. L’entité peut
ainsi distribuer son certificat librement et sans risque.
Serveurs et clients peuvent
utiliser les certificats lorsqu’ils établissent une connexion afin
de pouvoir s’authentifier ; cela évite le transfert d’un secret
du type "login/password ".
Les certificats peuvent
ainsi remplacer les multiples mot de Passe. Il est ainsi possible de configurer
tous les serveurs d’une entreprise de manière à ce que le
client n’ait qu’à retenir le mot de passe débloquant sa clef
secrète.
Avantages : Il est possible
de transmettre une clef publique en authentifiant son propriétaire.
Inconvénients : Tous
les destinataires doivent faire confiance à l’autorité de
certification.
Contenu d’un certificat
Le format d’un certificat te que définit par le standard X.509 est constitué de 2 parties :
Données du Certificat
(partie une) :
1.1 : Numéro de version
X.509 pour la compatibilité avec de futures versions
1.2 : Numéro de série
du certificat. Tous les certificats issus d’une même autorité
de certification (CA) doivent avoir un numéro de série différent.
1.3 : Algorithme de signature
utilisé par l’autorité de certification (CA).
1.4 : Le Nom Complet (Distinguished
Name) de l’autorité (CA) qui est à l’origine de ce certificat.
Ex : CN=CertificateServer01, O=phenix-informatique, C=fr
1.5 : La période
durant laquelle le certificat est valide.
1.6 : Le Nom Complet (Distinguished
Name) de l’entité certifiée. Ex : CN=job, OU=techniques,
O=phenix-informatique, C=fr
1.7 : L’algorithme de clef
publique de l’entité certifiée.
1.8 : La clef publique de
l’entité certifiée.
Validité du Certificat
(partie deux) :
2.1 : La signature des données
ci-dessus par l’autorité de certification (CA).
2.2 : L’algorithme de signature
utilisée par l’autorité de certification (CA).
Exemple de certificat
Ex : Certificat personnel
Verisign
"
This Certificate belongs
to:
Olivier GROSJEANNE
job@phenix-informatique.fr
Digital ID Class 1 - Netscape
Persona Not Validated
www.verisign.com/repository/RPA
Incorp.
by Ref.,LIAB.LTD(c)98
VeriSign Trust Network
VeriSign, Inc.
This Certificate was issued
by:
VeriSign Class 1 CA Individual
Subscriber-Persona Not Validated
www.verisign.com/repository/RPA
Incorp.
By Ref.,LIAB.LTD(c)98
VeriSign Trust Network
VeriSign, Inc.
Serial Number: 44:E1:C5:AE:F4:AB:79:2F:31:35:30:93:8E:0B:25:C1
This Certificate is valid
from Tue Nov 17, 1998 to Sun Jan 17, 1999
Certificate Fingerprint:1C:D5:A2:33:CD:4D:F9:62:55:4C:1D:80:82:80:30:9E
"
Vérification d’un certificat
Le destinataire du certificat
fait confiance à l’autorité de certification :
- Il possède donc
la clef publique de l’autorité de certification.
- Il réalise l’empreinte
des données du certificat.
- Il décode l’emprunte
transmise à l’aide de la clef publique de l’autorité de certification.
- Il compare les deux résultats.
Les principaux protocoles d'authentification
RADIUS (Remote Authentication Dial-In User Service)
Fonctionnalités de RADIUS :
- Le protocole RADIUS fonctionne
selon un modèle client/serveur.
- Un NAS (Network Access
Server) fonctionne comme un client RADIUS. Un client effectue des requètes
RADIUS et agit en fonction des réponses reçues.
- Un serveur RADIUS peut
agir en tant que proxy RADIUS pour d'autres serveurs RADIUS, ainsi que
pour d'autres systèmes d'authentifications.
- Toutes les transactions
RADIUS sont authentifiées par l'utilisation d'un secret qui n'est
jamais transmis sur le réseau. De plus les mots de passe sont encryptés
en utilisant cette même clé secrete.
RADIUS utilise le protocole UDP.
CHAP (Challenge-Handshake Authentication Protocol)
Fonctionnalités de CHAP :
- CHAP est une procédure
plus sécurisée pour se relier à un système
que le procédé d'authentification de mot de passe PAP.
- Fonctionnement (Authentification
en mode défi-réponse) :
- Après
que le lien soit fait, le serveur envoie un message au demandeur de connexion.
Le demandeur répond avec une valeur obtenue en utilisant une fonction
à sens unique d'informations parasites.
- Le
serveur contrôle la réponse en la comparant à son propre
calcul de la valeur prévue d'informations parasites.
- Si
les valeurs s'assortissent, l'authentification est reconnue; autrement
la connexion est terminée. À tout moment, le serveur
peut inviter la partie reliée pour envoyer un nouveau message. Puisque
des identificateurs de CHAP sont changés fréquemment et parce
que l'authentification peut être demandée par le serveur à
tout moment, CHAP fournit plus de sécurité que PAP.
PAP (Password Authentication Protocol)
Fonctionnalités de PAP :
- PAP est un protocole bidirectionnel
simultané pour les paquets de transfert entre les parties dans un
réseau. PAP comprend l’ordonnançant de données, le
contrôle d'écoulement, la responsabilité, et la détection
et reprise d'erreur.
- PAP est un procédé
employé par des serveurs de PPP pour valider une demande de connexion.
Le PAP fonctionne comme suit:
- Après
que le lien soit établi, le demandeur envoie un mot de passe et
une identification au serveur.
- Le
serveur valide la demande et renvoie un accusé de réception,
termine la connexion, ou offre au demandeur une autre chance. Des
mots de passe sont envoyés sans sécurité et le créateur
peut faire des tentatives répétées d'accès.
Pour ces raisons, un serveur qui comprend CHAP offrira d’utiliser ce
protocole avant d'utiliser PAP.
TACACS (Terminal Access Controller Access Control System)
Fonctionnalités de TACACS :
- TACACS est un protocole
d'authentification plus ancien, commun aux réseaux d’Unix qui permet
à un serveur d'accès à distance d'expédier
le mot de passe de la procédure de connexion d'un utilisateur à
un serveur d'authentification pour déterminer si on peut permettre
l'accès à un système donné. TACACS est
un protocole non codé et donc moins sécurisé que les
protocoles postérieurs de TACACS et de RADIUS.
- Une version postérieure
de TACACS est TACACS+ (TACACS étendu). Malgré son nom, TACACS+
est un protocole entièrement nouveau. TACACS et RADIUS ont
généralement remplacé les protocoles précédents
dans les réseaux plus récemment établis.
- TACACS utilise TCP. Quelques
administrateurs recommandent d'utiliser TACACS parce que TCP est vu comme
un protocole plus fiable. De plus, alors que RADIUS combine l'authentification
et l'autorisation dans un profil d'utilisateur, TACACS quant à lui
sépare les deux. TACACS et TACACS+ fonctionnent toujours sur beaucoup
de systèmes anciens.
SecurID
SecurID permet, en une seule étape, d’identifier avec certitude les utilisateurs du système et du réseau afin d'interdire tout accès illicite. Utilisé avec des modules de contrôle d’accès (ACM) logiciels ou matériels dédiés, SecurID génère un nouveau code d’accès imprévisible toutes les soixante secondes.
Caractéristiques principales:
- Procédure aisée
en une seule étape, garantissant l’authentification certaine des
utilisateurs.
- Prévention des
accès non-autorisés aux ressources d’information de l’organisation
Authentification des utilisateurs au niveau du réseau, du système,
des applications ou des transactions.
- Génération
de codes d’accès à usage unique, imprévisibles et
renouvelés automatiquement toutes les soixante secondes.
- Fonctionnement sur modules
de contrôle d’accès assurant la sécurité multi
plate-forme de l’entreprise.
Authentification Header dans IPSec
Problème: Les paquets
IP (adresse + contenu) sont "faciles" à falsifier
Solution: Rajouter une entête
d'authentification cryptographique (Authentication Header - AH) pour permettre
d’authentifier la provenance des paquets et obtenir :
- Authentification de la
source du paquet (adresse IP authentique)
- Intégrité
du contenu
- L'authentification se
fait normalement de bout en bout même si une authentification faisant
intervenir des systèmes intermédiaires est possible
- Porte sur l'ensemble du
paquet IP (entête + données) excepté sur les enregistrements
modifiés en cours de route ("hop count", "time to live", etc.)
- Un paquet contenant un
AH peut être traité par tous les intervenants d'un réseau
IP même s'ils ne le "comprennent" pas (compatibilité vers
l'arrière)
- Pour générer
un AH valide il faut que chaque système soit muni d'une (ou plusieurs)
clés et qu'il soit en mesure de valider les AH générés
par les autres intervenants
Quelques logiciels d'authentification
X.COD Authentification
Services rendus / fonctionnalités :
- Authentification par possession
d’un support d’identification et par connaissance d’un code confidentiel.
- Authentification de l’utilisateur
et pas seulement de son PC.
- Authentification en mode
défi-réponse (cf CHAP) avec clé d’authentification
à usage unique.
- Absence d’investissement
supplémentaire pour les PC reliés au réseau : ni lecteur
de carte à puce, ni décodeur analogique ou numérique,
ni calculette, etc…
- Mise en œuvre simple et
rapide du déploiement auprès des utilisateurs : aucun logiciel
à installer sur le poste client.
- Faible contrainte pour
l’utilisateur : interface minimum permettant la saisie du code confidentiel.
- Suivi individualisé
de tous les utilisateurs autorisés.
- Coût unitaire par
utilisateur le plus faible du marché.
- Technologie brevetée
au niveau international.
Coût :
- Module de base X.COD authentification
: 29500 F HT
- Module de base optionnel
X.COD authentification administration : 8500 F HT
- Installation, mise en
œuvre et formation : de 1 à 3 jours, 7000 F HT/jour.
Kerberos
Kerberos est un service distribué
d'authentification qui permet à un procédé (un client)
à prouver son identité à un verificateur (un serveur
d'application, ou serveur simplement) sans envoyer des données à
travers le réseau qui pourrait permettre à un agresseur à
les imiter postérieurement.
Kerberos fournit intégrité
et confidentialité pour des données envoyées entre
le client et serveur.
Fonctionnement :
Au départ, le client
souhaite envoyer un message au serveur. Le serveur, pour être sûr
de l'identité du client, lui demande de s'authentifier.
Interviennent alor le serveur
d'authentification et le vérificateur.
Le client et le serveur
d'authentification possède la même clé d'authentification=clé
client. Pour le client, cette clé equivaut à un mot de passe.
Celui-ci envoie ensuite un message d'authentification crypté avec
cette clé au serveur d'authentification. Celui-ci utilise alors
sa clé pour vérifier l’identification du client. Si le message
est décrypté, le client est authentifié.
Le service d'authentification envoie alors au client un certificat crypté (contenant une clé unique permettant d'identifier le client=clé session, et une date d'expiration au delà de laquelle il ne pourra plus s'identifier) par une clé connu seulement de lui et du vérificateur=clé serveur (le client ne peut donc pas modifier le certificat puisqu’il ne connaît pas cette clé).
Le certificat est alors acheminé
jusqu’au vérificateur qui le décrypte en utilisant la clé
serveur et utilise la clé session obtenue pour authentifier le client
![]() |
1 : Envoi du message d’authentification
crypté avec la clé client.
2 : Si client authentifié, Le serveur d’authentification utilise sa clé serveur pour envoyer le certificat crypté contenant la clé session=clé unique identifiant le client. 3 : Envoi de ce certificat crypté au vérificateur. 4 : Le vérificateur, après avoir décrypté le certificat avec sa clé serveur, obtient la clé session qui permet d’authentifier le client. |
SecurWar ID
SecurWar ID permet une authentification
forte des utilisateurs par carte à puce. SecurWar ID permet précisément
d´authentifier sans aucun doute possible les utilisateurs distants.
Il se base sur les principes suivants :
- les informations échangées
pour l´authentification ne sont jamais deux fois identiques et ne
présentent aucun élément exploitable par les observateurs
externes.
- la conservation des clés
secrètes sur carte à microprocesseur offre une garantie d´inviolabilité
maximale.
- chaque carte utilisateur
contient une clé différente, et son utilisation est protégée
par la frappe d´un code personnel qui bloque la carte après
trois tentatives erronées.
- une session de sécurité
permet un contrôle permanent de l´origine des connexions applicatives,
et des ré-authentifications régulières et automatiques
en cours de dialogue (transparente pour l´utilisateur) permet de
prévenir toute tentatives d´usurpation d´identité.
Steel-Belted RADIUS
Steel-Belted RADIUS s'occupe de l'identification de chaque utilisateur qui souhaite accéder à votre réseau à distance, il n'a besoin que des informations de sécurité que vous avez déjà créées.
Caractéristiques :
- Steel-Belted RADIUS utilise
la norme d'identification d'utilisateur distant RADIUS.
- Quand un utilisateur se
connecte à un serveur d'accès distant, ce serveur communique
avec Steel-Belted RADIUS pour déterminer les droits de l'utilisateur
et l'autoriser à se connecter au réseau local. Il peut décider
d'accepter ou de refuser la connexion, selon les informations indiquées
dans les bases de données de sécurité du réseau.
- Toute modification effectuée
sur les informations de sécurité du réseau est prise
en compte immédiatement par Steel-Belted RADIUS ( mots de passe,
les déplacements, suppressions ou ajouts d'utilisateurs), vous serez
certain de l'identification des utilisateurs distants.
- Pour autoriser des
utilisateurs extérieurs à accéder au réseau,
il suffit d'inclure leurs noms et leurs mots de passe dans la base de données
locale de Steel-Belted RADIUS.
- Steel-Belted RADIUS utilise
tous les attributs de connexion spéciaux de vos serveurs d'accès
distant - en particulier les options de sécurité de connexion,
de rappel ou de limites sur le temps de connexion, etc.
HTTP auth
HTTP Auth permet d’offrir
un service d’authentification continue :
- Fiable : HTTP Auth utilise
des techniques de cryptographie forte, avec des protocoles et algorithmes
de hash et signature éprouvés (MD5, SHA/DSA, RSA) combinés
avec des clés longues et fortes :
- Algorithmes symétriques : 128 bits.
- Algorithmes asymétriques : 1024 ou 2048 bits.
- Sans déploiement
: HTTP Auth ne nécessite aucun programme, module ou objet sur les
postes des clients. HTTP Auth crée dynamiquement les signatures
numériques de chaque utilisateur, puis les envoie (après
chiffrement fort) sur le poste de l’utilisateur à chaque connexion
HTTP.
Fonctionnalités :
- Protection des serveurs
: HTTP Auth permet de vérifier à chaque appel d’un programme
transactionnel du serveur Web que l’utilisateur est autorisé à
l’exécuter Il s’agit d’un service d’authentification forte.
- Session continue dans
un contexte asynchrone : le produit authentifie de façon «
continue » les utilisateurs; le système affecte à chaque
utilisateur une session qui est signée.
- Paramètrage des
durées des sessions : Il est possible de définir des durées
maximales de session pour chaque utilisateur, avec déconnexion du
service à expiration.
- Logging complet des actions
utilisateurs : chaque appel de script provoque un logging complet et détaillé
: paramètres d’identification de l’utilisateur (adresse IP, OS du
poste client, marque/modèle de navigateur, date/heure, etc.).
Le futur de l'authentifiaction
La solution S.CORT IC pour le driver LDAP
LDAP (Lightweight Directory Access Protocol) est devenu, en l'espace de quelques années, le standard dominant en termes d'accès à des données d'annuaires d'entreprises. La quasi-totalité des annuaires d'aujourd'hui sont maintenant accessibles à travers le protocole LDAP. De même, de plus en plus d'applications utilisent maintenant un annuaire LDAP (généralement externe) pour stocker leurs informations (configuration, topologie).
S.cort va offrir aux développeurs d'applications Internet/Intranet la possibilité d'intégrer des accès LDAP afin de satisfaire à la fonctionnalité de login unique (Single Sign-On).
Login unique :
Aujourd'hui, chaque application impose son propre schéma d'authentification. Cela oblige donc aux utilisateurs de stocker un certain nombre d'identifiants et de mots de passe, ce qui devient vite rébarbatif et dangereux en terme de sécurité. Les annuaires LDAP peuvent donc être utilisés pour fournir une solution à ce problème. En effet, l'ensemble des données d'authentification peut être stocké dans un annuaire.
Le driver LDAP permettra donc à toute application d'accéder aux annuaires LDAP afin de procéder au " mapping " entre les données d'authentification générales Web/Internet/Intranet et les données d'authentification spécifiques à/aux application(s) accédée(s).
Les types et format des données d'authentification stockées dans l'annuaire, sont laissés au libre choix du développeur, S.cort n'imposant n'imposant pas de pré requis pour ces informations.
Une technique d'authentification française : le réseau GSM
En général, les systèmes d'exploitation et les applications sont organisés pour identifier une machine (serveur ou poste client) et non l'individu qui l'utilise. En attendant les techniques biométriques, les systèmes d'authentification restent fondés sur la transmission d'un mot de passe " jetable ", calculé à partir d'une identification de l'utilisateur et d'un générateur aléatoire Malheureusement, cette méthode échoue sur un point essentiel qui empêche sa banalisation : le prix du matériel nécessaire reste souvent trop élevé. La solution viendra peut-être de l'astucieux Magic@xess, un brevet français en cours d'évaluation par plusieurs organismes bancaires. L'idée de base est simple : utiliser un deuxième réseau, différent de celui qui connecte le client à son fournisseur, pour le contrôle d'identité : le GSM. Lors d'une demande d'authentification par le fournisseur, le client est appelé sur son téléphone GSM par un organisme certificateur, et un code aléatoire lui est fourni sous forme de message court. Il ne lui reste qu'à entrer ce code, valable quelques minutes, sur son terminal informatique pour être identifié.
La biométrie
Il est fréquent d'oublier
le code d'accès. Pour éviter cet oubli, beaucoup de personnes
écrivent ce code sur un carnet, perdant ainsi toute confidentialité.
Le mot de passe est un moyen de présélection et non de contrôle
d'accès.
Il y a plusieurs moyens
pour vérifier l'identité de quelqu'un, la biométrie
est considérée comme étant le plus approprié.
Les moyens biométriques,
permettent une authentification sûre, ce qui n'est pas le cas avec
les mots de passe ou les cartes (badges) qui peuvent être volés.
La biométrie s'appuie sur la prise en compte d'éléments
morphologiques uniques et propres à chacun d'entre nous.
Les moyens biométriques
:
- Empreintes digitales.
- Forme de la main ou des
doigts.
- Forme ou traits du visage.
- Caractéristiques
de la voix.
- Dessin du réseau
veineux de la rétine ou fond de l’œil.
- Informations génétiques.
- Dynamique de la signature.
- etc. ...
Ce système supprime
:
- La duplication. - Le vol. - L'oubli. - La perte. |
|
De cet exposé, nous pouvons retenir que les moyens d’authentification actuels, quoique déjà très sécurisés, sont toujours sous la menace du piratage. Les technologies futures décrites ci-dessus devraient permettre de résoudre ce problème (biométrie). Mais les progrès scientifiques ne permettront-ils pas à ces « pirates » de trouver une technique capable de les contourner ???