Vous êtes sur la page 1sur 52

goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY

Protocoles ARP/IPv4, IPAM et 802.1


goffinet@goffinet.eu, 2014Q2
Scurits sur le LAN (1/3)
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Avertissement !
Les exercices de ce document sont fournis titre
pdagogique dans le cadre dun trafic normal et
responsable.
Lauteur dcline toute responsabilit quant aux usages
que lon pourrait trouver ces exercices.
Dans ce cadre, il est fortement conseill aux apprenants
de solliciter uniquement des machines du LAN ou des
serveurs leur appartenant.
Veuillez utiliser la connaissance pour le bien et dans le
respect dautrui. Derrire chaque machine, il y a des
intrts humains que vous ne pouvez souponner.
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Sommaire gnral
1. Protocoles ARP/IPv4, IPAM et 802.1
2. Protocoles IPv6/ND
3. Protocole 802.11
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Sommaire Partie 1/3
Introduction
Rappels Commutation LAN
Protocole ARP
Protocoles LAN 802.1 et de gestion L2
Protocoles IPAM
Contre-mesures
Rfrences
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Menaces : attaques
Reconnaissance, numration
Usurpation (Spoofing) dadresses, de
messages
Empoisonnement de tables, de caches
Denis de service (DoS, Denial of Service)
Inondation (Flooding)
Dconnexions (Release, dsynchronisation)
Modifications topologiques
Homme du milieu (MitM, Man-in-the-Middle)
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Menaces sur le LAN : cbles
Technologies LAN : filaire et non-filaire
Matriels cbles :
Commutateurs
Points daccs et contrleurs
toute interface dans le LAN : routeurs et priphriques
terminaux
Protocoles cbles au sein du LAN :
Exploitation du broadcast et du Multicast
ARP,
DHCP,
802.1 (CDP, STP, DTP, VLAN, )
NTP, SNMP, DNS, ...
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Topologie et matriel
Station Kali Linux (VM ou Native)
Un commutateur Cisco
Connexion filaire au commutateur
Connexion console au commutateur
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Topologie
ip routing
int vlan 1
ip add dhcp
Crer plusieurs interfaces VLAN :
vlan x
int vlan x
no shut
ip add x x
Activation de VTP :
vtp domain lab
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Rappels Commutation
LAN
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Principe de la commutation
Grce une table de commutation apprise par coute, le commutateur
identifie un port une adresse et transfert le trafic sur base de ce critre.
Lorsqu'il ne connat pas le port pour une destination (unicast inconnu,
broadcast, multicast), il transfert ce trafic par tous les ports sauf le port
d'origine.
Port de
commutateur
Adresse MAC apprise
F0/1 00:00:00:00:00:01
F0/2 00:00:00:00:00:02
F0/3 00:00:00:00:00:03
F0/4 00:00:00:00:00:04
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Domaine de diffusion/collision
Un domaine de collision par port de commutateur.
Un commutateur tend un domaine de diffusion.
Un routeur filtre et connecte des domaines de diffusion.
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Rsolution d'adresses en IPv4
http://www.cloudshark.org/captures/96a2bb5fe747?filter=arp
Ce trafic mane en broadcast et se termine en Unicast.
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Variantes ARP
ARP Probe
Gratuitous ARP : annonces sans tat
Inverse ARP : obtenir l'IP partir l'adresse
L2 (Frame-Relay)
Reverse ARP : attribution d'adresse IP
Proxy ARP : mandataire ARP (routeur),
fonction que lon conseille de dsactiver.
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Processus ARP
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Empoisonnement de cache ARP
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Neigbor Discovery
En IPv6, lusage dARP disparat (comme celui du
broadcast).
Cest ND (Neighbor Discovery) qui reprend entre autres
cette fonction.
ND est encapsul dans des paquets ICMPv6 eux-
mmes encapsuls dans de l'IPv6.
En ce sens, pour cette fonction, IPv6 se suffit lui-
mme, contrairement IPv4.
Comme pour ARP, ND embarque bien dautres
fonctions et dautres messages dun type nouveau.
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Protocole ARP
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Manipulations ARP
Commande Exploit Attaque
arp Vrification du cache ARP local Reconnaissance
arping Connectivit ARP Reconnaissance
arp-scan Enumration ARP/IP Reconnaissance
macchanger Usurpation dadresse MAC Accs, usurpation
arpspoof Attaque ARP Poison Routing MitM => L7
macof CAM buffer Overflow MitM, DoS
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
arp
Commande systme permettant dafficher et manipuler
la table ARP locale.
Commande passive
arp -a : visualiser toutes les entres
arp -d * : supprimer toutes les entres
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
arping
arping vrifie la connectivit en mettant et
attendant des messages ARP
Permet aussi de dtecter des adresses
dupliques
arping --help
man arping
http://linux-ip.net/html/tools-arping.html
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
arp-scan
arp-scan permet dnumrer les htes sur le LAN avec
ARP
apt-get install arp-scan
arp-scan --help
man arp-scan
arp-scan 192.168.0.0/24
Interface: eth0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.9 with 256 hosts (http://www.nta-monitor.
com/tools/arp-scan/)
192.168.0.1 20:e5:2a:1b:65:6a NETGEAR INC.,
192.168.0.5 70:56:81:bf:7c:37 Apple Inc
192.168.0.25 00:0c:29:5f:11:9f VMware, Inc.
192.168.0.4 a8:06:00:38:cc:25 Samsung Electronics Co.,Ltd
192.168.0.4 a8:06:00:38:cc:25 Samsung Electronics Co.,Ltd (DUP: 2)
9 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.9: 256 hosts scanned in 2.053 seconds (124.70
hosts/sec). 5 responded
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
macchanger
macchanger permet de modifier ladresse MAC dune
interface
macchanger --help
ifdown eth0
macchanger -m aa:bb:cc:dd:ee:ff eth0
ifup eth0
ifconfig eth0
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
arpspoof
arpspoof permet dusurper ladresse MAC dun hte ou
plusieurs htes sur le rseau et de leur transfrer le
trafic.
man arpspoof
Par exemple o .1 est la passerelle et .25 est la victime
:
arpspoof -i eth0 -t 192.168.0.25 -r 192.168.0.1
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
macof
macof ralise une attaque CAM Table
Overflow, soit un dbordement de table de
commutation afin de transformer le
commutateur en concentrateur (hub).
Attaque peu lgante, peu discrte et peu
crdible sur du matriel professionnel.
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
arpwatch
arpwatch effectue une surveillance du
protocole ARP et rend des alertes par courriel :
apt-get install arpwatch
diter /etc/arpwatch.conf
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Protocoles LAN 802.1 et
de gestion L2
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Manipulations CDP, DTP,
STP et 802.1Q
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Yersinia : attaques 802.1
Attaques sur les protocles 802.1 et de gestion L2 (Cisco) :
CDP
802.1Q
DTP
STP
VTP
802.1X
ISL
Mais aussi sur :
HSRP
DHCP
MPLS
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
802.1D et CDP
Attacks Implemented in STP:
0: NONDOS attack sending conf BPDU
1: NONDOS attack sending tcn BPDU
2: DOS attack sending conf BPDUs
3: DOS attack sending tcn BPDUs
4: NONDOS attack Claiming Root Role
5: NONDOS attack Claiming Other Role
6: DOS attack Claiming Root Role with MiTM
Attacks Implemented in CDP:
0: NONDOS attack sending CDP packet
1: DOS attack flooding CDP table
2: NONDOS attack Setting up a virtual device
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
HSRP et DHCP
Attacks Implemented in HSRP:
0: NONDOS attack sending raw HSRP packet
1: NONDOS attack becoming ACTIVE router
2: NONDOS attack becoming ACTIVE router (MITM)
Attacks Implemented in DHCP:
0: NONDOS attack sending RAW packet
1: DOS attack sending DISCOVER packet
2: NONDOS attack creating DHCP rogue server
3: DOS attack sending RELEASE packet
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
DTP, 802.1Q et VTP
Attacks Implemented in DTP:
0: NONDOS attack sending DTP packet
1: NONDOS attack enabling trunking
Attacks Implemented in 802.1Q:
0: NONDOS attack sending 802.1Q packet
1: NONDOS attack sending 802.1Q double enc. packet
2: DOS attack sending 802.1Q arp poisoning
Attacks Implemented in VTP:
0: NONDOS attack sending VTP packet
1: DOS attack deleting all VTP vlans
2: DOS attack deleting one vlan
3: NONDOS attack adding one vlan
4: DOS attack Catalyst zero day
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Ligne de commande
Par exemple partir du pirate :
yersinia cdp -h
yersinia cdp -attack 1 -interface eth1
<*> Starting DOS attack flooding CDP table...
<*> Press any key to stop the attack <*>
Sur le commutateur :
SW-lab#sh cdp nei
Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge
S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,
D - Remote, C - CVTA, M - Two-port Mac Relay
Device ID Local Intrfce Holdtme Capability Platform Port
ID
RRRRR6D Fas 1/0/1 237 R B H I yersinia Eth 0
2JJJJJX Fas 1/0/1 239 R T S H yersinia Eth 0
2EEEEEW Fas 1/0/1 227 T S r yersinia Eth 0
3KKKKKX Fas 1/0/1 239 R T B S H yersinia Eth 0
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Dmon CLI Cisco
yersinia -D lance un cli type cisco, essayer :
yersinia -D
telnet localhost 12000
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Welcome to yersinia version 0.7.3.
Copyright 2004-2007 Slay & Tomac.
login: root
password: root
yersinia> enable
Password: tomac
yersinia#
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Mode interactif
yersinia -I lance une console texte interactive
trs puissante.
i pour choisir une interface
les touches F2, F3, etc. pour choisir un protocole
x pour lancer une attaques
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Mode interactif
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Mode graphique
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Protocoles IPAM
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Protocoles IPAM
Attaques sur HSRP, VRRP, GLBP
Protocoles L7 :
DHCP
DNS
NTP
SNMP
Attaques et menaces :
Service pirate (Rogue Server) : MitM, DoS
DoS par inondation
DoS par messages errons
DoS par messages de desynchronisation
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Contre-mesures
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Contre-mesure sur le LAN
Cisco, idem ailleurs :
DAI + DHCP snooping
Port-Security
Solutions structurelles (ARP, 802.1X/RADIUS/EAP) :
arpwatch
OpenVAS
PacketFence
Microsoft NAP
Cisco NAC
HP, Aruba,
Protocoles de Gestion et 802.1D :
STP : BPDU Guard et diffrentes protections Cisco
VTP, DTP, CDP : dsactiver
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Contre-mesure Cisco : DAI + DHCP
Snooping
Enable DAI
switch(config)# ip arp inspection vlan vlan_id {, vlan_id}
Enable DHCP snooping
switch(config)# ip dhcp snooping
!Enable DHCP Snooping!
switch(config)# ip dhcp snooping vlan vlan_id {, vlan_id}
!Enable DHCP Snooping for specific VLANs!
switch(config-if)# ip dhcp snooping trust
!Configure an interface as trusted for DHCP Snooping purposes!
switch(config-if)# ip dhcp snooping limit rate rate
!Set rate limit for DHCP Snooping!
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Contre-mesure Cisco : port-security
switch(config-if)# switchport mode access
!Set the interface mode as access!
switch(config-if)# switchport port-security
!Enable port-security on the interface!
switch(config-if)# switchport port-security mac-address {
<mac_addr> | sticky }
!Enable port security on the MAC address as H.H.H or
record the first MAC address connected to the interface!
switch(config-if)# switchport port-security maximum
<max_addresses>
!Set maximum number of MAC addresses on the port!
switch(config-if)# switchport port-security violation {
protect | restrict | shutdown }
!Protect, Restrict or Shutdown the port. Cisco recommends
the shutdown option!
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Scurit sur les ports
(config)#interface f0/1
(config-if)#switchport mode access
(config-if)#switchport port-security
Cette fonction permet de contrler les adresses MAC
autorises sur un port. En cas de violation, une action est
prise. Par dfaut,
Cette fonction est dsactive
Une seule adresse MAC apprise dynamiquement
En cas de violation, le port tombe en mode shutdown
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Dfinition des adresses MAC
autorises
On peut fixer le nombre dadresses MAC autorises :
(config-if)#switchport port-security maximum
10
Les adresses MAC apprises peuvent tre inscrites
dynamiquement dans la configuration :
(config-if)#switchport port-security mac-
address sticky
Les adresses MAC autorises peuvent tre fixes :
(config-if)#switchport port-security mac-
address 0000.0000.0003
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Mode de violation
(config-if)#switchport port-security
violation {protect | restrict | shutdown}
Mode protect : ds que la violation est constate, le
port arrte de transfrer le trafic des adresses non
autorises sans envoyer de message de log.
Mode restrict : ds que la violation est constate, le
port arrte de transfrer le trafic des adresses non
autorises et transmet un message de log.
Mode shutdown : ds que la violation est constate, le
port passe en tat err-disabled (shutdown) et un
message de log est envoy.
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Diagnostic scurit sur les ports
Dsactivation dun port err-disabled :
(config)#errdisable recovery cause psecure-
violation
Diagnostic :
#show port-security
#show port-security interface f0/1
#show running-config
#clear port-security {all | configured |
dynamic | sticky}
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Contre-mesure Juniper
root@switch# set interface { <interface> | all } mac-limit
<limit> action { none | drop | log | shutdown }
# Set the maximum number of MAC addresses allowed to
connect to the interface
root@switch# set interface { <interface> | all } allowed-
mac <mac_address>
# Set the allowed MAC address(es) allowed to connect to
the interface
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Contre-mesure HP : Port Security
(config)# port security
!Enters the port security configuration mode!
(config-port-security)# enable
!Globally enables port security!
(config-port-security)# age <age>
!Sets the age out timer of the secure MAC address. <age> =
number of minutes!
(config-port-security)# autosave <mins>
!Automatically saves the secure MAC addresses to the
startup-config file every <mins> minutes!
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Contre-mesure HP : interface
(config)# int <interface>
!Enters the interface configuration mode!
(config-if-<interface>)# port security
!Enters port security configuration mode on interface!
(config-if-port-security-<interface>)# enable
!Enables port security on interface!
(config-if-port-security-<interface>)# maximum <max>
!Sets the maximum number of secure MAC addresses for the interface!
(config-if-port-security-<interface>)# age <age>
!Sets the age out timer of the secure MAC address associated with
interface. <age> = number of minutes!
(config-if-port-security-<interface>)# secure <mac_address>
!Manually specifies secure MAC address authorised by the switch port!
(config-if-port-security-<interface>)# violation { restrict | shutdown }
!If violation occurs: restrict = drops packets from violating address,
shutdown = shutdown the port for <time> minutes!
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Protections Cisco STP
Configuring PortFast
Enabling PortFast on an Access Port
Enabling PortFast on a Trunk Port
Disabling PortFast
Resetting PortFast
Configuring PortFast BPDU Guard
Enabling PortFast BPDU Guard
Disabling PortFast BPDU Guard
Configuring PortFast BPDU Filtering
Enabling PortFast BPDU Filtering
Disabling PortFast BPDU Filtering
Configuring UplinkFast
Enabling UplinkFast
Disabling UplinkFast
Configuring BackboneFast
Enabling BackboneFast
Displaying BackboneFast Statistics
Disabling BackboneFast
Configuring Loop Guard
Enabling Loop Guard
Disabling Loop Guard
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
tudes de cas
PacketFence sous Linux ou en Live-USB
Daloradius en OVA
OpenVAS
Microsoft NPS
Cisco NAC
goffinet@goffinet, Scurits sur le LAN (1/2), CC-BY
Rfrences
Contre-mesures : http://hakipedia.com/
Cisco : http://www.cisco.
com/c/en/us/td/docs/switches/lan/catalyst2960/software/
release/12-2_55_se/configuration/guide/scg_2960.html