Virtual Private Network

Transcription

Virtual Private Network
Virtual Private Network
WAFA GHARBI (RT4)
CYRINE MAATOUG (RT4)
BOCHRA DARGHOUTH (RT4)
SALAH KHEMIRI (RT4)
MARWA CHAIEB (RT3)
WIEM BADREDDINE (RT3)
Virtual Private Network | SECURILIGHT 2014
Table des matières
1. Présentation de l’atelier……………………………………………………………………………………………2
1.1.
Virtual Private Network : ............................................................................................... 2
1.1.1.
Définition : ............................................................................................................. 2
1.1.2.
Fonctionnement d’un VPN : .................................................................................. 2
1.1.3.
Les types de VPN : ................................................................................................. 2
1.1.4.
Comparaison entre les différents outils de VPN : ................................................. 3
1.1.5.
Le Protocole PPTP : ................................................................................................ 4
1.2.
Man in The Middle Attack “MITM”: .............................................................................. 4
1.2.1.
Définition: .............................................................................................................. 4
2. Présentation des outils utilisés……… ………………………………………………………………………5
2.1.
Backtrack : ..................................................................................................................... 5
2.2.
Wireshark : .................................................................................................................... 5
3. Architecture/topologie du réseau…………………………………………………………………………….6
4. Configuration des outils……………………………………………………………………………………………6
4.1.
Configuration du serveur VPN : ..................................................................................... 6
4.2.
Configuration des clients : ............................................................................................. 8
5. Un scénario de test…………………………………………………………………………………………………..9
5.1.
Vérification de la connexion au VPN ............................................................................. 9
5.2.
L’attaque Man In The Middle: ....................................................................................... 9
Conclusion et Perspectives…………………………………………………………………………………………………13
1
Virtual Private Network | SECURILIGHT 2014
1. Présentation de l’atelier :
De nos jours, force est de constater que les réseaux « Virtual Private Network » sont
omniprésents au sein des réseaux personnels et professionnel. Ainsi, dans le cadre de
SecuriLight, la demi-journée 100% technique de Securinets nous allons simuler une
maquette VPN à l’aide d’une architecture client-serveur en utilisant l’outil PPTP sous
Ubuntu. Nous allons ensuite tester la configuration en connectant deux clients au réseau et
évaluer le degré de sécurité de ce réseau en réalisant l’attaque Man In The Middle sur
l’architecture réalisée.
1.1. Virtual Private Network :
1.1.1. Définition :
Cette technologie est très réputée dans le monde de l’entreprise. Elle permet de créer une
liaison virtuelle, qu’on appelle « tunnel », via internet, entre deux réseaux physiques
géographiquement distants et ce, de manière transparente pour ses utilisateurs.
Ces mêmes utilisateurs sont les seuls à y avoir accès, d’où le caractère « privé » de ce réseau.
Les données envoyées au travers de ce tunnel sont chiffrées, ce qui garantit aux utilisateurs
d’un VPN l’illisibilité des données en cas d’interception malveillante (espionnage, intrusion..)
par des tiers.
1.1.2. Fonctionnement d’un VPN :
Un réseau privé virtuel repose sur un protocole, appelé protocole de
tunnelisation (tunneling), c'est-à-dire un protocole permettant aux données passant d'une
extrémité du VPN à l'autre d'être sécurisées par des algorithmes de cryptographie.
Figure 1 : Fonctionnement d'un VPN
1.1.3. Les types de VPN :
On peut dénombrer deux grands types de VPN, chacun d'eux caractérise une utilisation bien
particulière de cette technologie.
2
Virtual Private Network | SECURILIGHT 2014
LAN-to-LAN
Tout d'abord le LAN-to-LAN qui permet de relier deux réseaux d'entreprises entre eux de
façon transparente. Généralement les deux sites ont des tranches IP différentes ce qui
oblige les postes clients à passer par le routeur. Celui-ci est directement relié à l'équipement
responsable du VPN ou implante directement les protocoles choisit pour la mise en place du
VPN.
Ce type de VPN est installé de manière permanente.
Figure 2: LAN to LAN
Nomade ou Road Warrior
Ensuite, il existe le type nomade, également appelé "Road Warrior" qui permet à un
utilisateur distant de son entreprise de se connecter à celle-ci pour pouvoir profiter de ses
services. Ainsi, il pourra lire ses mails, récupérer des fichiers présents sur le réseau de son
entreprise, ...
Figure 3 : Nomad ou Road Warrior
Etant donné son utilisation, ce type de VPN est installé de manière occasionnelle.
1.1.4. Comparaison entre les différents outils de VPN :
Nous allons comparer les 3 outils de VPN les plus répandus : PPTP, Open BPN ainsi que
L2TP/IPsec.
Le PPTP est le plus basique. Un VPN de ce type est très facile à configurer mais il est aussi le
moins sécurisé. Le L2TP / IPsec s’en sort nettement mieux mais il est un peu plus délicat à
mettre en place et il ne fonctionne pas forcément avec tous les équipements réseau. L’Open
VPN, enfin, s’impose comme la meilleure solution. Il est nettement plus sécurisé que ses
3
Virtual Private Network | SECURILIGHT 2014
petits copains et c’est vraiment cette solution qu’il faut privilégier. Seul hic, tous les
prestataires ne proposent pas forcément cette solution.
1.1.5. Le Protocole PPTP :
Le principe du protocole PPTP (Point To Point Tunneling Protocol) est de créer des trames
sous le protocole PPP et de les encapsuler dans un datagramme IP.
Ainsi, dans ce mode de connexion, les machines distantes des deux réseaux locaux sont
connectés par une connexion point à point (comprenant un système de chiffrement et
d'authentification, et le paquet transite au sein d'un datagramme IP.
Figure 4: Protocole PPTP
De cette façon, les données du réseau local (ainsi que les adresses des machines présentes
dans l'en-tête du message) sont encapsulées dans un message PPP, qui est lui-même
encapsulé dans un message IP.
Le PPTP est utilisée de manière courante par les petites et moyennes entreprises. Les
grandes entreprises utilisent d'autres technologies VPN, comme celle de Cisco par exemple.
Le PPTP est largement utilisé aussi par les prestataires de services VPN personnels
1.2. Man in The Middle Attack “MITM”:
1.2.1. Définition:
L'attaque man in the middle (MITM) est une attaque qui a pour but d'intercepter les
communications entre deux parties, sans que ni l'une ni l'autre ne puisse se douter que le
canal de communication entre elles a été compromis. Le canal le plus courant est une
connexion à Internet de l'internaute lambda.
L'attaquant doit d'abord être capable d'observer et d'intercepter les messages d'une victime
à une autre.
Plusieurs protocoles internet sont vulnérable à ce type d’attaque, plus particulièrement les
protocoles HTTP, FTP et ARP.
4
Virtual Private Network | SECURILIGHT 2014
2. Présentation des outils utilisés :
2.1. Backtrack :
Figure 5: Backtrack 5r3
Backtrack est une distribution basée sur Debian GNU / Linux distribution destinée au
forensics et à l'utilisation des tests de pénétration. La version actuelle est Backtrack 5 R3.
Elle est basée sur Ubuntu 10.04 (Lucid) LTS et appartient à la famille Debian.
2.2. Wireshark :
Figure 6: outil Wireshark
Wireshark est un analyseur de paquets libre utilisé dans le dépannage et l'analyse des
réseaux informatiques, le développement de protocoles, l'éducation et la rétro-ingénierie.
Son appellation d'origine (Ethereal) est modifiée en mai 2006 pour des questions relatives
au droit des marques. Wireshark utilise la bibliothèque logicielle GTK+ pour
l'implémentation de son interface utilisateur et pcap pour la capture des paquets; il
fonctionne sur de nombreux environnements compatibles UNIX comme GNU/Linux,
FreeBSD, NetBSD, Open BSD ou Mac OSX, mais également sur Microsoft Windows.
5
Virtual Private Network | SECURILIGHT 2014
3. Architecture/Topologie du réseau
Dans ce qui suit, on réalisera la topologie suivante :
Figure 7: Topologie du réseau
4. Configuration des outils
4.1. Configuration du serveur VPN :
Sur une machine Ubuntu
suivantes :
(12.04 *64 dans notre exemple) on utilise les commandes
Figure 8 : installer un serveur vpn
On modifie le fichier /etc/pptpd.conf et on ajoute les lignes suivantes :
localip 10.0.0.1
remoteip 10.0.0.100-200
Figure 9 : Ouvrir le fichier de configuration
Ensuite on ajoute les utilisateurs et leur mots de passe dans le fichier /etc/ppp/chap-secrets
Figure 10: ajouter les utilisateurs
Tel que :
 client est le nom d’utilisateur
 server est le type de service (pptpd pour notre exemple)
 secret est le mot de passe
6
Virtual Private Network | SECURILIGHT 2014
 IP addresses spécifie quelles addresses IP peuvent s’authentifier. En mettant ‘*’ dans le
champ IP addresses, on spécifie qu’on pourra accepter une paire username/password
quelle que soit l’IP.
Ensuite, on ajoute les DNS servers au fichier /etc/ppp/pptpd-options
Figure 11: fichier pptpd-options
Figure 12 : ajout des DNS
Maintenant on démarre le PPTP daemon :
Figure 13 : lancement du serveur
On autorise l’ip_forwarding afin de garantir l’acheminement des paquets IPv4, en ajoutant
la ligne suivante au fichier /etc/sysctl.conf
Figure 14: activer l'ip_forwarding
Pour activer les changements :
Figure 15: activation des changements
On crée une règle Nat avec la commande iptables comme suit :
7
Virtual Private Network | SECURILIGHT 2014
Figure 16 : ajout d'une règle NAT
Pour permettre aux clients PPTP de communiquer entre eux, on ajoute les lignes suivantes
Figure 17: Activer la communication entre les clients
4.2. Configuration des clients :
Sur une machine Ubuntu (12.04 *64 dans notre exemple) on utilise les commandes
suivantes :
On crée un nouveau fichier /etc/ppp/peers/vpnserver et on ajoute les lignes suivantes :
Figure 18: Configuration du fichier de configuration
Tel que :
 192.168.1.10 est l’adresse IP publique de notre serveur PPTP
 Le nom d’utilisateur « client1 » et le mot de passe « 123456 » qu’on a spécifiés dans
le fichier /etc/ppp/chap-secrets de notre serveur PPTP.
On active le routage vers notre serveur VPN via l’interface ppp0
8
Virtual Private Network | SECURILIGHT 2014
On vérifie la configuration de l’interface ppp0 avec la commande ifconfig, qui nous donne :
Figure 19: configuration de l'interface ppp0
5. Un scénario de test
5.1. Vérification de la connexion au VPN
On envoie une requête ping de la machine cliente vers le serveur VPN:
Figure 20: Requête ping
On constate que la connexion a été établie avec succès.
5.2. L’attaque Man In The Middle:
Sur une machine Backtrack (5 R3 dans notre exemple) on réalise les commandes suivantes :
Figure 21: arpspoof
Tel que : l’adresse 192.168.1.8 est l’adresse de la machine cliente (victime) et 192.168.1.12
est l’adresse de notre machine.
On redémarre le service pptpd dans notre serveur :
9
Virtual Private Network | SECURILIGHT 2014
Nous allons à présent capturer les paquets grâce à l’outil Wireshark que nous lançons
comme suit :
Figure 22 : lacement du Wireshark
Figure 23: lancement des captures
10
Virtual Private Network | SECURILIGHT 2014
On appelle le service pptp depuis la machine victime
On visualise sur wireshark après avoir appliqué le filtre « chap » qui nous permettra de
capturer les paquets du type PPP CHAP :
Figure 24: Résultat des captures
Nous allons essayer de décrypter le mot de passe du client 1 grâce à la commande
findmyhash. Nous allons procéder comme suit :
Figure 25: lancement de findmyhash
La méthode que nous avons choisie nous permet, à l’aide d’un script python
« ./findmyhash.py » de rechercher à travers des sites internet la valeur correspondante à la
valeur qu’on a copié de Wireshark en hexadécimal à la suite de l’option –h :
Figure 26 : Commande à exécuter
11
Virtual Private Network | SECURILIGHT 2014
Figure 27: Résultat
Nous notons que notre tentative a été soldée par un échec. Nous avons également tenté
d’autres méthodes, mais nous avons eu le même résultat. Nous en avons conclu que le
serveur pptp a été modifié de manière à déjouer les attaques du chap
En dépit de l’échec de plusieurs tentatives, des chercheurs ont livré deux outils permettant
de casser le cryptage de toute session PPTP (Point-to-Point Protocol) utilisant le protocole
d'authentification
MS-CHAPv2.
Le MS-CHAPv2 a été créé par Microsoft. Malgré son âge, il est encore utilisé comme système
d'authentification de base par la plupart des clients de réseaux privés virtuels (VPN) PPTP. Le
MS-CHAPv2
est
vulnérable
à
des
attaques
par
brute
force.
ChapCrack est capable de réduire la sécurité d'un réseau utilisant le protocole MS-CHAPv2
(PPTP VPN par exemple) pour le contrôle de la transmission des données à une simple clef
DES (Data Encryption Standard). Ensuite, il suffit de soumettre cette clé au service en ligne
spécialisé dans le craquage de mots de passe CloudCracker.com. Le service fait tourner la
boîte de décryptage FPGA pour déchiffrer la clef DES en moins de 24 heures. La clef générée
par CloudCracker peut être ensuite utilisée avec ChapCrack pour décrypter une session
entière capturée avec WireShark ou par d'autres outils renifleurs de réseau.
12
Virtual Private Network | SECURILIGHT 2014
6. Conclusion et perspective
De par notre atelier, nous avons essayé de simuler un réseau VPN à travers une architecture
client-serveur pour ensuite tester le degré de sécurité de ce serveur pptpd (serveur utilisé
pour la connexion VPN), test qui a été voué à l'échec. Nous avons conclu donc que notre
serveur PPTP a été configuré avec la perspective de créer un tunnel VPN capable de résister
aux plus redoutables attaques (dont Man In The Middle, la plus classique d'entre-elles).
Néanmoins, avec les avances débridées de la technologie, il est désormais possible de nous
demander s'il est possible d'utiliser les réseaux VPN dans le cadre de réseaux domestiques et
outils informatiques. Ceci sera possible en configurant un réseau VPN sur la carte Raspberry
PI. En effet, ceci nous permettra de nous connecter depuis un lieu public chez soi pour
ensuite aller sur Internet de manière sécurisée depuis notre maison.
13

Documents pareils