Académique Documents
Professionnel Documents
Culture Documents
L'enjeu
There are two types of encryption: one that will prevent your sister from reading your diary and one that will prevent your government.
Bruce Schneier
Plan
Le principe des tunnels Les VPN Attaques sur un LAN
Les tunnels
Objectif
Interconnecter deux sites IPv6 en passant par un rseau IPv4. Faire transiter un adressage priv (RFC1918) sur un rseau public. Propager un rseau de couche 2 au dessus d'un rseau IP. Contourner la politique de filtrage d'un firewall ...
Quelques exemples
Encaspulation de couche 3 au dessus de couche 3, support par la plupart des matriels. Protocole IP numro 47 Encapsulation d'un paquet de couche 3 chiffr et/ou sign dans un paquet de couche 3 (ESP) ou 4 (ESP over UDP ou TCP) Encapsulation d'un paquet de couche 2 dans un paquet de couche 4 (UDP port 1701)
L2TP
Quelques exemples
On peut aussi monter des tunnels plus exotiques pour contourner une politique de filtrage svre
IP sur ICMP, SMTP, HTTP, SSL, ... IP sur DNS (pratique pour ne pas payer le wifi l'hotel) L2TP over IPSec
On encapsule dans un paquet IP/ESP (IPSec) un paquet IP/UDP (L2TP) qui lui mme encapsule un paquet de couche 2 (la charge utile).
L'exemple de GRE
Problmatique
Une machine d'un site (192.168.0.10) veut pouvoir pinger la machine (192.168.1.10).
#ip tunnel add netb mode gre remote 194.167.110.128 local 194.167.110.1 ttl 255
monte de l'interface laquelle on assigne une ip
#ip link set netb up #ip addr add 192.168.0.251 dev netb
on peut router par cette interface
Sur le routeur de droite d'IP 194.167.110.128 et 192.168.1.250 #ip tunnel add netb mode gre remote 194.167.110.1 local 194.167.110.128 ttl 255 #ip link set netb up #ip addr add 192.168.1.251 dev netb #ip route add 192.168.0.0/24 dev netb
Les VPN
La problmatique
Je dispose de sites interconnects par un rseau public et je voudrais faire comme si je disposais d'un rseau privatif
On cre donc un rseau priv virtuel (RPV) ou en anglais un virtual private network.
Les VPN
Un rseau privatif ?
Propagation de ma couche 3 (je tire des cables entre mes routeurs d'entre de site). Propagation de ma couche 2 (je tire des cables entre mes switchs). J'ai de la scurit (personne ne peut couter mon trafic ni le modifier). J'ai un excellent niveau de service car, tant le seul utilisateur des liens, mon trafic n'est pas gn par le trafic d'autres clients.
Le problme
...c'est cher
Les VPN
L'exemple du GRE
Les VPN
Plan
GRE (dj vu) IPSec MPLS L2TPv3, un MPLS light Group Encrypted Transport (GET) VPN
Solution IPSec
Le paquet IP est encapsul dans un autre paquet (mme chose pour GRE)
IPSec
AH: les paquets sont stocks en couche data et signs numriquement. ESP: les paquets sont stocks de manire chiffre en couche data.
Remarque: il est possible d'utiliser IPSec autrement qu'en mode tunnel. Dans ce cas IPSec sert seulement augmenter le niveau de scurit, utilis par exemple pour les postes nomades.
IPSec
Initialisation de la connexion:
Comme un Diffie-Hellman mais les tiers possdent un secret en commun vitant une attaque MITM.
En mode PKI.
Remarques
Sur chaque routeur il faut dfinir une route pour chacun des rseaux. Pour N routeurs il faut dfinir N*(N-1) routes. L'ajout ou la suppression d'un routeur implique une intervention sur tous les autres.
IPSec
Les plus:
Permet de raliser un VPN assez simplement et bas cot (un pc sous linux fait l'affaire). Systme robuste et offrant un niveau de scurit lev. S'appuie sur une PKI avec les avantages en terme de scurit tel qu'isoler un site en rvoquant son certificat (en cas de compromission).
IPSec
Les moins:
Procdure de chiffrement/dchiffrement limite les dbits et ajoute de la latence. Impossible de faire de la QoS Les techniques de QoS se basent gnralement sur des champs de la couche IP et l ils sont crypts... Ds que l'on ajoute un rseau il faut construire une route sur chacun des routeurs.
IPSec
Rseau interconnectant tous les collges, lyces et sites administratifs (Rectorat, Administration Centrale) de l'ducation nationale franaise.
10 000 sites interconnects en IPSec (mtropole et DOM/TOM) Un backbone full mesh de 30 sites (Rectorats) compos de PIX 515E Un rseau toil interconnectant les collges et lyces (10 000 sites) au Rectorat dont ils dpendent compos d'une distribution linux maison ( http://eole.orion.education.fr/) Un plan d'adressage IP normalis bas sur la RFC1918.
Technologie de couche 2,5 (ie 2 et 3). L'oprateur tag les flux de chacun de ses clients. Sur chacun des routeurs de l'oprateur, une VRF (Virtual Routing and Forwarding) est cre pour chacun des tags. Compltement transparent du cot du routeur du client (Custumer Edge):
Du point de vue du client, il est le seul utilisateur du FAI et peut donc propager sur son FAI son adressage priv.
Aucune configuration ncessaire. Un tag est ajout sur les paquets de chaque client. Chacun des routeurs possde une table de routage spcifique pour chacun des clients (VRF). Le routeur dcide quelle VRF utiliser en analysant le tag MPLS sur le paquet reu. Les routes de chaque VRF sont changes entre les routeurs de l'ISP via BGP.
Avec IPSec:
Une opration (ie ajout/suppression) sur un rseau doit tre rpercute manuellement sur tous les rseaux.
Avec MPLS:
Plus de chiffrement, un pirate russissant compromettre l'ISP va pouvoir lire tous les changes et altrer des donnes. C'est l'oprateur qui gre le VPN
L'oprateur doit le supporter (donc ce n'est pas un oprateur grand public ADSL...) Cela a un cot! Il faut tre dans la pratique mono-oprateur pour chacun des sites.
Scurit de niveau 2. A moins de compromettre l'ISP, un pirate ne pourra jamais atteindre un LAN priv moins d'tre branch au bon endroit (et donc d'tre correctement tagg). Il est possible de faire de la QoS de bout en bout (la couche IP n'est pas altre, ce qui permet de classer les flux cot oprateur). Plus de problmes de routage grer. Plus besoins d'quipements de chiffrements sur les sites.
Ne peuvent pas tre NATes Les performances d'IPSec rendent l'utilisation de la VoIP quasi impossible.
Sur chaque site quelques PC en adressage priv et un routeur d'entre de gamme. Relis la maison mre via VPN MPLS (rien faire sur le site en terme de configuration).
L'oprateur encapsule dans les paquets MPLS les paquets Ethernet des clients
Ceci est en fait de l'Ethernet encapsul dans un paquet Ethernet avec un tag MPLS entre les deux.
Possibilit de propager ses VLANs sur Internet (le graal de l'architecte rseau)
L2TPv3
Similaire du GRE transportant du niveau 2 Cisco remet le L2TP sur le devant de la scne (rfc 3931, mars 2005)
Possibilit d'encapsuler n'importe quel protocole de couche 2 (et plus seulement ppp) et donc possibilit de propager ses VLANs. On perd certaines fonctionnalits de QoS offertes par MPLS et le routage gr par l'ISP. On gagne une indpendance vis vis de l'oprateur, la technologie ne repose plus sur lui.
EoMPLS ou L2TPv3 EoMPLS et dans une moindre mesure L2TPv3 Gestion en extrmit (ie remplacement de telnet par ssh, http par https, ...)
On a de la QoS
Quid de la confidentialit/intgrit ?
Le client doit s'appuyer sur un mcanisme, typiquement MPLS, pour propager son adressage priv sur le rseau oprateur.
On garde toute la souplesse de MPLS et les possibilits de QoS (la priorit des paquets est dfinie via un tag sur la couche IP) On retrouve les mcanismes de chiffrements d'IPSec
Le sniffing
Comment a marche ?
La carte rseau doit remonter vers l'OS les paquet dont elle n'est pas destinataire (au sens de la MAC adresse). La carte passe en mode monitoring.
Toutes les cartes ethernet sont capables de le faire. Une partie de cartes wifi peuvent le faire (prism, intel, ...).
La plupart des programmes de sniffing (tcpdump, kismet, ...) se chargent de la configuration de la carte en mode monitoring.
Le sniffing
Comment faire pour que les paquets dont on n'est pas destinataire arrivent vers sa machine ?
Dans le cas d'un hub ou d'un LAN wifi, rien faire. Dans le cas d'un switch, le plus simple et efficace est l'arp cache poisoning. Beaucoup plus difficile. Le pirate doit prendre la main sur une machine par laquelle passe les paquets (client, serveur, routeur, ...)
L2 <-> L3
192.168.2.1 envoie un paquet sur tout le LAN demandant quelle est l'adresse MAC de la machine 192.168.2.250. 192.168.2.1 envoie un paquet avec comme adresse MAC destination celle de 192.168.2.250 et comme adresse IP destination 192.168.2.250. 192.168.2.250 reoit le paquet. L'adresse MAC de destination est la sienne, le paquet est transfr l'OS. L'adresse IP destination est la sienne, le paquet n'est pas forward.
Envoie d'une requte ARP (broadcast L2): Rponse ARP (unicast L2):
20:50:22.932386 00:20:78:d0:0a:02 > Broadcast, ethertype ARP (0x0806), length 42: arp who-has 192.168.2.250 tell 192.168.2.1
20:50:22.933006 00:01:e3:0f:60:e8 > 00:20:78:d0:0a:02, ethertype ARP (0x0806), length 60: arp reply 192.168.2.250 is-at 00:01:e3:0f:60:e8
20:50:22.933055 00:20:78:d0:0a:02 > 00:01:e3:0f:60:e8, ethertype IPv4 (0x0800), length 98: 192.168.2.1 > 192.168.2.250: ICMP echo request, id 42273, seq 0, length 64
La machine 192.168.2.1 connat l'adresse MAC de 192.168.2.250, elle est dans sa table ARP.
Altrer la table arp du client pour lui faire croire que l'adresse MAC du serveur (ou de la gateway) a chang (faire la mme chose sur le serveur/gateway).
La machine du pirate devient routeur sur le chemin par lequel transite les paquets:
Le pirate peut lire et altrer n'importe quelle paquet envoy/reu par le client. arpspoof de la suite dnsiff. arp-sk.
Le pirate veut lire les flux transitant entre 192.168.2.1 et pop.insa-rouen.fr. Il se trouve dans le mme LAN que 192.168.2.1, la gateway est 192.168.2.250. Il active le coeur de routage:
Utilisation de arp cache poisoning (o autre technique permettant de rediriger les flux vers une machine) Utilisation de iptables pour rediriger les flux vers un programme en local: Le programme modifie le contenu du paquet et le retransmet vers le serveur.