Authentification hybride
SALAH KHMIRI (RT3)
AMAMOU NESRINE (RT3)
JOUA RIADH (GL4)
BOUTARAA AMIRA (RT3)
SAMALI HADHEMI (RT3)
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
1
Table des matières 1. Presentation de l’atelier ........................................................... Erreur ! Signet non défini.
a. l’authentification .................................................................. Erreur ! Signet non défini.
b. c’est quoi un portail captif .................................................... Erreur ! Signet non défini.
2. Presentation des outils ...................................................................................................... 2
a. pfsense .......................................................................................................................... 2
b. Freeradius ...................................................................................................................... 3
c. LDAP .............................................................................................................................. 4
d. Wikid .............................................................................................................................. 5
3. Topologie du reseau .......................................................................................................... 6
4. Configuration des outils .................................................................................................... 6
5. Un scénario de test (la partie la plus importante) .................. Erreur ! Signet non défini.6
6. Conclusion ............................................................................... Erreur ! Signet non défini.8
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
2
I. Présentation de l’atelier :
L’atelier Hybrid Authentification représente un type d’authentification double (two-
way authentification) qui se base sur un portail captif et un serveur d’authentification.
Authentification avec un login et un mot de passe en premier lieu et avec un SMS, un mail
ou un jeton/token en deuxième lieu pour valider l'authenticité de l'entité en question.
L'authentification ?
L'authentification est la procédure qui consiste, pour un système informatique, à vérifier
l'identité d'une personne ou d'un ordinateur afin d'autoriser l'accès de cette entité à
des ressources (systèmes, réseaux, applications…).
Il existe plusieurs manières pour s’authentifier entre autres:
Authentification par un mot de passe : Il s'agit de la méthode la plus simple et la plus répandue. Elle souffre principalement du risque d'écoute (et donc d'interception des mots de passe) des réseaux coopératifs. Avantage : Pas de risque de piratage par emplacement de machine. Inconvénient : Le mot de passe circule en clair sur le réseau.
Authentification par un contrôle de l'adresse de l'expéditeur
Cette méthode a l'avantage de permettre la connexion distante sans mot de passe, en se basant simplement sur deux hypothèses: premièrement les deux machines ne sont pas publiques, et il est impossible de produire de fausses adresses. Avantage : Le mot de passe ne circule pas. Inconvénient : Plusieurs méthodes connues de piratage (sequence number guessing, DNS reverse attack).
Il existe d’autres manières pour s’authentifier : Avec carte, empreinte digital, ou
encore la reconnaissance par la disposition de vos veines dans votre main ou l’image
de votre rétine.
Dans cet atelier on va combiner l’authentification avec un Login/mot de passe et par
contrôle de l'adresse de l'expéditeur afin d’augmenter le niveau de sécurité de l’accès aux
informations.
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
3
C’est quoi un portail captif ?
La technique des portails captifs consiste à forcer les clients HTTP d'un réseau de
consultation à afficher une page web spéciale avant d'accéder à Internet normalement.
Cela est obtenu en interceptant tous les paquets quelles que soient leurs destinations
jusqu'à ce que l'utilisateur ouvre son navigateur web et essaie d'accéder à Internet. Le
navigateur est alors redirigé vers une page web qui peut demander une authentification
et/ou un paiement ou tout simplement demander. Cette technique est souvent employée
pour les accès Wi-Fi et peut aussi être utilisée pour l'accès à des réseaux filaires (ex. hôtels,
campus etc.).
Les différentes solutions :
Pfsense, distribution BSD incluant une fonction de portail captif. Licence BSD
ALCASAR, solution libre architecturée autour de la distribution Linux Mageia et de
plusieurs logiciels libres (Coovachilli, FreeRADIUS, MariaDB, Dnsmasq, Apache, etc.) -
Licence GPLv3
ChilliSpot, portail captif open-source dont le développement est arrêté (dernière
version (1.1.0) sortie le 24/10/2006) - Licence (GNU GPL)
Coovachilli, portail captif open-source (fork de ChilliSpot). Licence GNU GPL
PepperSpot portail captif open-source (fork de ChilliSpot). Licence GPLv2
Talweg, portail captif open-source basé sur la bibliothèque netfilter, avec de
nombreux modules d'authentification.
Zeroshell, distribution Linux incluant une fonction de portail captif
Pour cet atelier on a choisi la solution: Pfsense. Nous reviendrons plus tard pour
présenter cet outil.
II. Présentation des outils utilisés:
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
4
Pfsense :
PfSense est un pare-feu/routeur open-source basé sur FreeBSD et distribué sous licence
BSD. Il peut être installé sur un simple ordinateur personnel comme sur un serveur. PfSense
s'administre entièrement depuis une interface web moderne et facile à utiliser donnant
accès à l'intégralité des fonctionnalités. On peut ainsi établir des tables de routage, des
règles pour le pare-feu, faire des VLAN, activer un service DHCP, et bien d'autres.
Fonctionnalités
Support des VLAN taggés
Routage IPv4 et (depuis la version 2.1) IPv6, NAT
Filtrage du trafic entrant et sortant pour tout type de trafic (ICMP, UDP, TCP…)
Limitation des connexions pour un pair
Log du trafic avec génération de graphiques
Log sur serveur syslog externe
Load Balancing, Failover
Agrégation de ports, IP virtuelles
Proxy transparent
Serveur ou client PPPoE
VPN (client ou serveur) IPsec, PPTP, OpenVPN
DNS Dynamique
Portail captif
Contrôle d'accès par adresses MAC ou authentification RADIUS
Serveur ou relay DHCP / DNS
Nouveautés
PfSense 2.1 est basé sur FreeBSD 8.3 qui apporte de nombreux correctifs de
sécurité.
Support de l'IPv6. Il est capable de router, filtrer (règles de pare-feu), établir un
tunnel, fournir des services de découverte (Router Advertisement).
L'interface Web fonctionne désormais avec JQuery.
Support des packages PBI. Ils permettent d'installer des plugins ou logiciels
additionnels de manière simple sans se soucier des dépendances.
FreeRADIUS :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
5
RADIUS (Remote Authentication Dial-In User Service) est un protocole d'authentification standard, basé sur un système client/serveur chargé de définir les accès d'utilisateurs distants à un réseau.
FreeRADIUS est un serveur RADIUS libre. C’est l’un des serveurs RADIUS les plus rapides,
modulaires et riches en fonctionnalités disponibles aujourd'hui. FreeRADIUS est, entre
autres, utilisé par des fournisseurs d’accès à l’internet pour authentifier leurs clients et leur
communiquer une configuration IP. Il est considéré comme le serveur le plus utilisé dans le
monde.
LDAP :
LDAP (LightWeight Directory Access Protocol) est à l'origine un protocole permettant de
gérer des annuaires, c'est-à-dire d'accéder à des bases d'informations sur les utilisateurs
d'un réseau par l'intermédiaire de protocoles TCP/IP. Il a cependant évolué pour représenter
une norme pour les systèmes d'annuaires, incluant un modèle de données, un modèle de
nommage, un modèle fonctionnel basé sur le protocole LDAP, un modèle de sécurité et un
modèle de réplication.
Il en est actuellement à la version 3 dans laquelle il propose des mécanismes de chiffrement
(SSL, ...) et d'authentification (SASL) permettant de sécuriser l'accès aux informations
stockées dans la base.
JXplorer :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
6
C’est un client qui permet de gérer les annuaires LDAP. JXplorer est écrit en Java. Il est très
flexible et peut être étendu et adapté dans un certain nombre de façons.
JX est disponible en deux versions; la version gratuite open source sous licence de style OSI Apache 2, ou dans le JXWorkBench ensemble des entreprises avec des outils de construction dans les rapports, administratives et de sécurité.
Wikid :
L’authentification forte est un processus comporatnt au moins deux facteurs
d’authentification pour vérifier l’identité d’une entité essayant d’accéder à des services dans
un ordinateur ou dans un réseau.
Les différents facteurs d'authentification:
Ce que l'entité connaît : un mot de passe, un code NIP, une phrase secrète, etc
Ce que l'entité détient : une carte magnétique, une clé USB, une carte à puce, un
smartphone, etc. => c’est un élément physique appelé authentifieur ou Token.
Ce que l'entité est: empreinte digitale, empreinte rétinienne, structure de la main,
structure osseuse du visage, etc.
Ce que l'entité sait faire ou fait: signature manuscrite, reconnaissance de la voix, un type
de calcul connu de lui seul, un comportement, etc.
Dans la majorité des cas, l'entité est une personne physique - individu - personne morale,
mais elle peut être un objet comme, par exemple, une application web utilisant le
protocole SSL, un serveur SSH, un objet de luxe, une marchandise, un animal, etc.
WiKID est un système d'authentification forte qui utilise un fort encryptage
asymétrique pour fournir en toute sécurité des codes d'accès uniques aux jetons/tokens
logiciels fonctionnant sur PC ou Smartphones. Les clés publiques / privées sont générées sur
vos appareils (on ne peut ni les voir ni les stocker). Les utilisateurs peuvent avoir plus d'un
jeton sur la même licence et chaque jeton peut travailler avec plusieurs serveurs ou
domaines wikid.
Wikid réduit considérablement les vols d'identité en ligne, les expéditions de phishing et
autres fraudes en ligne.
Avantages :
Facile à utiliser
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
7
Beaucoup moins cher que d'autres solutions
Prend en charge tous les principaux protocoles d'authentification réseaux et Google
Apps SSO.
Les utilisateurs peuvent s'inscrire eux-mêmes : réduction de la charge de travail.
WiKID est conçu pour le cloud computing et la multi-tenancy.
III. Topologie du réseau :
IV. Configuration des outils:
1. Installation et configuration de Pfsense :
Télécharger l’image ISO de Pfsense sur: https://www.pfsense.org/download/index.html
La dernière version est 2.1.2.
Il existe deux version 64bits et 32bits, Pour notre atelier on va travailler avec la version 32
bits.
On lance VMware et on crée une nouvelle machine virtuelle qu’on nomme Pfsense.
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
8
La figure suivante présente les paramètres de la machine.
Un réseau ponté ou Bridged : la machine hôte étant reliée à un réseau Ethernet
(LAN), la configuration en réseau ponté permet à la machine virtuelle d'accéder
directement au LAN, donc elle est considérée comme une nouvelle machine
avec sa propre adresse IP.
Un réseau NAT : la machine virtuelle a accès au LAN à travers la machine hôte. Il
traduit les adresses des machines virtuelles appartenant à un réseau privé en
adresses de la machine hôte. Donc la machine virtuelle envoie ses requêtes sur
le LAN en utilisant l’adresse IP de la machine hôte.
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
9
Après avoir lancé la machine, un menu s’affiche donc on choisit la première option
(l’option par défaut) pour Installer Pfsense.
Puis on appuie sur la touche i pour démarrer l’installation.
Après avoir choisi l’option "Accept these Settings", l’installation commence.
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
10
Une fois l’installation terminée, on redémarre la machine en choisissant l’option "Reboot".
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
11
On choisit de configurer les Vlans plus tard.
Pour les interfaces, on donne em0 comme nom pour l’interface WAN et em1 pour l’interface
LAN.
On accepte pour continuer.
Un menu s’affiche, pour assigner des adresses IP à nos interfaces on choisit l’option 2.
On commence par configurer l’interface LAN:
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
12
-On associe à cette interface l’adresse IP suivante 192.168.91.15.
-24 bits pour le masque.
-192.168.91.1 pour la passerelle/Gateway.
Remarque :
On a choisi l’adresse IP de l’interface LAN comme ci-dessus pour que Pfsense soit dans le
même sous réseau que notre machine physique.
Sur la machine physique on lance la commande ipconfig dans l’invite de commande pour
obtenir l’adresse de Gateway.
Ensuite, on revient à Pfsense et on active le DHCP server pour le LAN puis on choisit la
plage d’adresses :
Voici le menu avec les 2 interfaces LAN, WAN et leurs adresses IP.
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
13
On désire maintenant procéder à la configuration de Pfsense via son interface graphique.
Configuration de Pfsense :
Par défaut, le username est «admin», le password est «pfsense».
On choisit General Setup sous l’onglet sous system et on la paramètre comme suit :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
14
Ensuite, Advanced sous System :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
15
Ensuite, l’assignation des interfaces sous l’onglet Interfaces (LAN et WAN).
Maintenant, c’est le moment pour configurer notre portail captif. Tout est détaillé dans la
page « Captive portal » sous l’onglet Services :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
16
Ensuite vient la méthode d'authentification. 3 possibilités s'offrent à nous :
Sans authentification, les clients sont libres
Via un fichier local
Via un serveur RADIUS
Pour des raisons de sécurités, nous avons mis en place un serveur RADIUS. Pour plus de
détail sur l'installation de Radius, reportez-vous à la partie consacrée à la sécurisation du
portail.
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
17
Choix du protocole d’authentification
RADIUS (Remote Authentification Dial-In User Service) est un protocole client-serveur
permettant de centraliser des données d'authentification. C’est le standard utilisé
aujourd’hui car très malléable et très sécurisé.
Ensuite, vient la configuration de Radius, le serveur d’authentification (voir sa configuration
dans la partie consacrée).
Dès la connexion au réseau dans lequel on a mis en place un portail captif, cette page
d’authentification s’affichera :
Si le login est bon, il pourra alors surfer sur Internet !
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
18
2. Installation de FreeRadius :
Dans notre machine Ubuntu, on ouvre le terminal et on passe au mode root avec la
commande " sudo -s ":
Puis on exécute la commande suivante afin d’installer freeRadius en compatibilité avec
LDAP :
3. Installation de LDAP :
Avant tout, on doit installer le démon du serveur LDAP (slapd) sur le serveur. Pour cela, il
suffit d'installer les paquets slapd et ldap-utils (c’est un paquet contenant des utilitaires de
gestion de LDAP) avec la commande suivante :
La fenêtre suivante s’affiche :
On choisit un mot de passe administrateur puis on clique sur <OK>
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
19
Confirmation du mot de passe :
Configuration de freeRadius et de LDAP :
On lance les commandes suivantes pour modifier le fichier de configuration
clients.conf :
Puis, on cherche les lignes suivantes dans le fichier:
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
20
Et on les modifie comme suit : - on décommente toutes les lignes de cette partie du fichier c’est à dire on
enlève les # - on remplace shortname par le nom de l’utilisateur
Ensuite on lance la commande suivante pour reconfigurer le serveur LDAP
Les fenêtres suivantes s’affichent :
On choisit l’option <NO> pour configurer l’OpenLDAP :
Choisir le nom de domaine :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
21
Choisir le nom de votre société :
Saisir le mot de passe administrateur :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
22
Confirmer le mot de passe :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
23
Choisir la base de données :
On choisit l’option <No> pour que la base de données ne soit pas effacée lorsque le slapd est
purgé :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
24
On choisit l’option <Yes> pour effacer les anciennes bases de données :
On choisit l’option <No> pour ne pas autoriser le protocole LDAPv2 :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
25
Configuration terminée
Maintenant on va effectuer quelques changements sur les fichiers de configuration :
On exécute les commandes suivantes pour modifier le fichier ldap :
On cherche la partie suivante du fichier :
Et on la modifie comme suit: - On décommente les dernières 4 lignes de cette partie du fichier - On remplace le champs server par l’adresse IP du ldap - On remplace le champs identity par l’utilisateur du ldap - On remplace le champs password par le mot de passe de l’utilisateur du ldap - On remplace le champs basedn par l’emplacement des utilisateurs du ldap
On exécute la commande suivante pour modifier le fichier default :
Dans ce fichier default, dans la partie authorize{ on voit bien que le mot "files" est
décommenté, ce qui veut dire que freeRadius autorise l'utilisation d'un fichier pour
authentifier les utilisateurs. Or dans cet atelier, on veut utiliser le LDAP donc on doit
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
26
mettre le mot "files" en commentaire et chercher dans cette même partie le mot "ldap" et
le décommenter.
On ajoute un # devant files
On enlève le # devant ldap pour autoriser l’utilisation du LDAP
De même dans la partie authenticate{ on cherche les 3 lignes suivantes et on les
décommente en enlevant les # :
On exécute la commande suivante pour modifier le fichier inner-tunnel :
Et on réalise les mêmes modifications faites au fichier default
Astuce: tu peux utiliser CTRL+F pour trouver ces lignes. Maintenant on a la bonne configuration pour utiliser ldap avec freeradius.
4. Installation de JXplorer :
Dans notre machine Ubuntu, on ouvre le terminal et on passe au mode root avec la
commande " sudo -s " afin d’installer JXplorer avec la commande suivante :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
27
5. Installation de Wikid
V. Scénario de test :
Si un ouvre le navigateur et on essaie de se connecter à un site voici la page qui
apparait :
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
28
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
29
Pour se déconnecter :
Pour connaitre les utilisateurs connectés
Authentification hybride |SECURIDAY 2014 ACCESS CONTROL
30
VI. Conclusion :
Pour la plupart des gens, le principal inconvénient de la double authentification est la
multiplication des gestes et la perte de temps qu’elle induit. Pourtant, entrer un code de
vérification prend quelques secondes , mais vous protègera énormément surtout que les
mots de passe ne suffisent plus pour nous protéger des cyber-criminels.
Top Related