VoIP Sniffing IHSEN BEN SALAH (GL 3) MAHMOUD MAHDI (GL 3) MARIEM JBELI (RT 2) SAFA GALLAH (RT 3) SALAH KHEMIRI (RT 3) YOUSSEF BEN DHIAF (GL 3)
VoIP Sniffing
IHSEN BEN SALAH (GL 3)
MAHMOUD MAHDI (GL 3)
MARIEM JBELI (RT 2)
SAFA GALLAH (RT 3)
SALAH KHEMIRI (RT 3)
YOUSSEF BEN DHIAF (GL 3)
VoIP Sniffing |SECURILIGHT 2013
1
Table des matières:
1. Présentation de l’atelier ................................................................................................... 2
2. Présentation des outils utilisés ........................................................................................ 3
3. Topologie du réseau ......................................................................................................... 3
4. Configuration des outils.................................................................................................... 4
5. scénarios de test : ..........................................................................................................….8
6. Conclusion: ..................................................................................................................... 15
VoIP Sniffing |SECURILIGHT 2013
2
I. Etapes
1. Présentation de l’atelier C’est quo i la VoIP ?
La voix sur IP, pour Voice over IP, est une technique qui permet de communiquer par
la voix (audio ou/et vidéo) sur des réseaux compatibles IP, qu'il s'agisse de réseaux privés ou
d'Internet.
Cette technologie est complémentaire de la téléphonie sur IP (« ToIP » pour Telephony over
Internet Protocol).
Divers protocoles peuvent être utilisés pour acheminer les informations au(x) destinataire(s)
parmi lesquels RTP, Real-time Transport Protocol, qui est un protocole basé sur UDP/IP .
La sécurité de la téléphonie est souvent restée un sujet à part dans l’entreprise. Là, on peut
citer l’exemple du VoIP Sniffing.
Voici l’enchainement des messages lors de l’établissement d’une communication entre deux clients A et B :
VoIP Sniffing |SECURILIGHT 2013
3
VoIP Sniffing ?
Grâce aux outils d’écoute de réseau, d’analyse de flux et d’injection de trafic IP, on
peut attaquer un réseau VoIP. Dès lors que le Hacker est entré sur le réseau
d’entreprise, il aura alors accès aux communications de l’entreprise.
Dans le cadre de cet atelier , on effectuera :
Scan du réseau, des ports et des différentes adresses IP de ce réseau.
RTP Sniffing : capture des paquets RTP échangés à travers l'ARP spoofing, ou ARP poisoning :détournement des flux réseaux transitant entre une machine cible et un routeur.
Eaveasdropping: C'est l'écoute des conversations privées des deux utilisateurs.
SIP Spoofing : le vol de session, c'est-à-dire les identifiants et les mots de passe
d’un utilisateur.
SIP flooding : L'envoi excessif de paquets au serveur pour le saturer
VoIP Sniffing |SECURILIGHT 2013
4
2. Présentation des outils utilisés
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.
Ettercap :
effectuer l’ARP Poisonnig, intercepter le trafic échangé sur le réseau, et réaliser les
attaques MITM (Man In The Middle).
Wireshark :
analyseur de paquets, permettant la capture des paquets RTP échangés et
l’enregistrement des conversations se déroulant sur le réseau.
3. Topologie du réseau Pour illustrer l’atelier, on va utiliser 4 machines : l’une va servir de serveur , 2 autres
comme clients VoIP , et un Hacker. Par la suite, elles seront reliées par un routeur.
VoIP Sniffing |SECURILIGHT 2013
5
4. Configuration des outils
La mise en œuvre de l’atelier nécessite l’installation d’un serveur voip et de deux logiciels
d’appel à base de voip.
a) Le serveur utilisé : Asterisk PBX 11.6.0 sur backtrack :
Asterisk est un PABX (PrivateAutomaticBrancheXchange), téléchargeable gratuitement sur
internet, d’une rare puissance et souplesse, capable de gérer la téléphonie analogique, mais
surtout, et c’est ce qui nous intéresse, la voix sur IP.
La VoIP sur Asterisk passe entre autre par la prise en charge d’un protocole standard, ouvert et très largement utilisé, le SIP (Session Initiation Protocol), qui est un protocole très proche d’HTTP qui n’est pas limité à la seule voix mais qui prend aussi en charge la vidéo et la messagerie instantanée. Dans le document qui suit , seule la gestion des appels sera pris en compte.
D’un point de vue fonctionnalité, Asterisk permet tout ce que l’on peut attendre d’un PABX moderne:
La gestion des postes téléphonique sur IP locaux. Il peut s’agir de téléphones physiques mais aussi logiciels (ou SoftPhone) comme Ekiga ou X-lite.
Le logiciel de téléphonie : Xlite 3.0 sur deux machines munies de windows 7. Notons qu’il
s’agit d’un logiciel téléchargeable gratuitement.
Etapes d ’installation du serveur asterisk sur backtrack :
apt-get update && apt-get upgrade
apt-get install build-essential libxml2-dev libncurses5-dev linux-headers-`uname-r`
libsqlite3-dev libssl-dev
mkdir/usr/src/asterisk
cd/usr/src/asterisk
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk- 10.7.0.tar.gz
tar xvzf asterisk-10.7.0.tar.gz cdasterik-asterisk-10.7.0
./configure
make
make install make samples make config
/etc/init.d/asterisk start Pour afficher la console d’asterisk, il suffit de taper:
asterisk –cvvvvvvvvvvr
Par la suite, il faut configurer les fichiers de configuration du serveur : sip.conf, users.conf, extensions.conf.
VoIP Sniffing |SECURILIGHT 2013
6
I. Fichier sip.conf : Ajouter la ligne: " language=fr" pour choisir la langue française ,sinon on peut garder Asterisk en anglais .
II. Fichier users.conf : Permet d’enregistrer les différents utilisateurs et leurs mots de passes. On suppose que l’on dispose de deux utilisateurs de full-name respectifs toshiba et dell :
III. Le fichier extensions.conf permet de configurer le dialplan :
VoIP Sniffing |SECURILIGHT 2013
7
b) Configuration de X-lite :
VoIP Sniffing |SECURILIGHT 2013
8
Le callerID doit être spécifié dans les trois champs display Name, user name et authorization
user name
L’adresse ip du serveur doit être dans le champs Domain.
Afin de vérifier que les deux utilisateurs se sont bien connectés au serveur, il faut que les
lignes suivantes se trouvent dans la console de ce dernier :
Voici les commandes permettant d’effectuer le scan du réseau:
Ifconfig : vérifier l’adresse ip de la machine
Nmap –sS –A –PO 192.168.151.1/24 : fournir les ports exploités sur toutes les
machines connectées sur le réseau.
Smap –O 192.168.151.1/24 : fournir l’adresse IP du serveur
Ping 192.168.1.x : vérifier que le serveur est bien connecté dans le réseau
VoIP Sniffing |SECURILIGHT 2013
9
5. scénarios de test :
I. Eaveasdropping i. Lancement d’Ettercap afin d’effectuer l’ARP poisoning
On le lance en mode graphique grâce à la commande " Ettercap -G " et on choisit
« Unified Sniffing »
ii. Scan du réseau et ajouts d’hôtes:
Cette étape nous permet de visualiser les machines connectés sur ce réseau .
Le résultat de cette étape :
VoIP Sniffing |SECURILIGHT 2013
10
iii. Choisir le type de l’attaque :
L'attaquant émet une trame ARP en Broadcast (à tout le reseau) dans laquelle il fait
correspondre son adresse MAC à l'adresse IP de la passerelle.
VoIP Sniffing |SECURILIGHT 2013
11
iv. Début du Sniffing :
Après avoir effectué cette étape l’architecture du réseau devient comme suit :
L’attaque Man in the Middle est réalisée et les paquets transitent alors par le Hacker au lieu
du routeur et ce dernier se charge de tout échange entre le client « victime » et le routeur !
v. Lancer Wireshark : Il suffit de taper dans le terminal de la machine pirate : wireshark
vi. Choix de l’interface réseau sur laquelle on va effectuer la capture des
paquets échangés :
VoIP Sniffing |SECURILIGHT 2013
12
vii. Filtrer les paquets à capturer et se limiter au protocole « RTP » :
VoIP Sniffing |SECURILIGHT 2013
13
viii. Analyse des paquets capturés :
ix. Ecoute des conversations enregistrées : Eavesdropping
VoIP Sniffing |SECURILIGHT 2013
14
II. SIPcrack
Comme son nom l’indique, c’est une attaque qui vise à avoir toutes les informations
nécessaires à propos de l’utilisateur, entre autre son identifiant et son mot de passe.
Afin de réaliser cette opération, il suffit de télécharger le module sipcrack via la
commande :
Apt-get install sipcrack.
Ce module contient deux commandes primordiales pour la réalisation de l’SIPcrack :
sipdump et sipcrack.
Sipdump : est une commande qui permet de déterminer les adresses des différents clients
en associant leur caller ID. Le résultat sera stocké dans le fichier (dans notre cas :fichier)
Voici le résultat :
Par la suite on utilise la commande sipcrack en lui spécifiant un dictionnaire téléchargeable
via le net et le fichier contenant le mot de passe crypté. Cela a pour but de décoder le mot
de passe de l’utilisateur et de se connecter via X-lite avec son compte.
VoIP Sniffing |SECURILIGHT 2013
15
xi. ID Spoofing: Cette attaque s’effectue par le biais de la commande inviteflood sous le fichier
/pentest/voip/inviteflood.
Cette commande signifie qu’un appel va être simulé à l’utilisateur dont l’identifiant est 6002.
Pour ce faire, il faut préciser dans la commande d’abord l’adresse ip de la victime puis
l’adresse ip du serveur.
Le 1 représente le nombre des paquets envoyés. Les options –a et –i permettent
respectivement de spécifier le nom du destinataire(FakeName choisi par le pirate) et son
adresse ip.
xii. SIP Flooding: Une attaque visant à renverser le serveur est possible (SIP flooding) avec la
commande précédente; il suffit de remplacer le 1 qui représente le nombre des paquets
envoyés par un nombre important visant à submerger le serveur avec des requêtes SIP.
VoIP Sniffing |SECURILIGHT 2013
16
6.Conclusion:
Les attaques qui ont été effectuées au cours de cet atelier mettent en évidence
l’importance de la sécurisation du serveur ASTERISK s’agissant du composant où transitent
toutes les requêtes venant des utilisateurs.
C’est pour cette raison que les concepteurs du serveurs ont mis au point multiples moyens
visant à sécuriser l’établissement de la communication entre les utilisateurs préservant
ainsi le serveur contre les attaques citées précédemment:
. Configuration des adresses IP :
On peut utiliser "permit=" et "deny=" dans le fichier de configuration sip.conf pour
permettre à des adresses ip uniques d'utiliser le serveur . Du coup, toute autre adresse
qui n'est pas spécifiée dans ce fichier n'aura pas le droit d'envoyer des requêtes au
serveur .
. Alwaysauthreject=yes :
Dans le fichier de configuration sip.conf ,en mettant "alwaysauthreject=yes" interdira
aux pirates d'exécuter des attaques brute force pour deviner les extensions existantes
sur le serveur
. Utilisation d'un mot de passe FORT pour les sessions SIP :
L'utilisation d'un long mot de passe contenant des espaces,des lettres en majuscules et
minuscules, et des caractères spéciaux est recommandé pour diminuer les chances qu'il
existe dans les dictionnaires utilisés par les pirates .
. Bloquer les ports AMI manager :
utiliser "deny=" et "permit=" dans manager.conf pour rendre les connections connues
par les hosts seulement .
. Permettre un ou deux appels au même moment par SIP :
Connaitre le nombre d'appels pouvant être effectué au même moment nous permet de
détecter toute tentative d'attaque ou de Spoofing .
. S'assurer que les SIP usernames sont différents des extensions : Lorsqu'on
définit le username "1234" avec l'extension"1234',cela facilitera la tache pour le
pirate pour deviner les usernames des utilisateurs .
. S'assurer que le [default] context est sécurisé :
Ne pas permettre à des clients non authentifiés d'atteindre les contexts pour effectuer
des appels .
Il suffit dans de mettre l'option "allowguest=no" dans la partie [general] dans sip.conf .Pour se protéger de l'attaque Man In The Middle ,il est conseillé de bien surveiller le réseau,du coup,l'attaque ne pourra pas passer inaperçue .
VoIP Sniffing |SECURILIGHT 2013
17
On pourra utiliser l'outil Arp Watch permettant de détecter les messages Arp anormaux . En plus ,il est conseillé d'utiliser des connexions cryptées et sécurisées comme SH ou VPN .