Sécurité pour le systeme Voice over IP - protocoles SIP et RTP
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
Sécurité pour le systeme Voice over IP – protocoles SIP et RTP Tobias Glemser, Reto Lorenz Article publié dans le numéro 5/2005 du magazine hakin9 Tout droits réservés. La copie et la diffusion d’article sont admises a condition de garder sa forme et son contenu actuels. Magazine hakin9, Software – Wydawnictwo, ul. Piaskowa 3, 01-067 Varsovie, Pologne, fr@hakin9.org
Sécurité pour le système Voice over IP – protocoles SIP et RTP Tobias Glemser, Reto Lorenz Depuis le salon CeBit tenu en mars 2005, le système appelé Voice over IP (VoIP, Voix sur IP) est non seulement devenu le mot à la mode dans le domaine informatique mais représente également un grand espoir pour les fournisseurs et les fabricants. Ce système VoIP sera bientôt prêt à remplacer les solutions de téléphonie stationnaires. Mais les dangers que représente ce nouveau système passent inaperçus dans la jungle des offres. A ujourd'hui, la technologie VoIP fait Les média ont rendu tristement célèbre partie intégrante des offres d'accès l'histoire d'une adolescente de treize ans, Internet à haute débit. Le succès de décédée parce que le numéro des urgences cette technologie s'explique également par les américaines (le 911) n'avait pas été routé appels gratuits entre les utilisateurs de VoIP dans le réseau VoIP que sa mère utilisait. d'un même fournisseur et les offres bon mar- Il n'existe aucune disposition légale relative ché et tout compris pour l'interface vers les sys- au routage des appels d'urgence dans la plu- tèmes de téléphonie classique. Les utilisateurs part des pays, mais le sujet est actuellement de petites et moyennes entreprises ne sont pas débattu. les seuls à avoir découvert VoIP, les entreprises s'intéressent également à l'immense synergie Cet article explique... potentielle de cette technique. Les entreprises peuvent connecter des filiales au moyen d'une • connaissances de base des protocoles SIP seule fibre optique leur permettant de commu- (Session Initiation Protocol), niquer à la fois des données et des messages • plusieurs techniques d'attaques concrètes oraux. Quelque soit l'endroit où se trouvent les et possibles dirigées contre les utilisateurs employés, ces derniers sont joignables par un et fournisseurs de VoIP. seul numéro de téléphone et en raison de l'uti- lisation partagée de l'infrastructure réseau, les Ce qu'il faut savoir... Focus coûts de maintenance et d'investissements se • connaissances de base des protocoles ré- résument à l'installation et la mise en marche seaux, de composants réseaux actifs et passifs. Les • vous êtes censés savoir réaliser des attaques problèmes basiques ne commencent qu'à être vers un LAN commuté au moyen d'un empoi- évoqués une fois la technique répandue par les sonnement ARP, fabricants (comme d'habitude). Au tout début, • vous devriez connaître la famille des protocoles ces derniers élaborent d'excellentes stratégies modernes de télécommunication. de migration et des services surtaxés. 22 www.hakin9.org hakin9 N o 5/2005
Sécurité pour Voice over IP le cas de la voix sur IP de plusieurs SIP – le strict nécessaire protocoles, chargés de régler et de Les paquets SIP contiennent les paramètres nécessaires au réglage initial d'appel. terminer un appel. On distingue en Tous les autres paramètres, comme les attributs pour une connexion RTP, sont inclus général différents partenaires de dans le protocole appelé SDP (en anglais Session Description Protocol), intégré sous communication pour la signalisation, forme de corps de paquet dans les paquets SIP. Les paquets SIP sont divisés en pa- le transfert vocal ou les messages quets requêtes et paquets réponses. Les messages sont quant à eux codés en UTF-8 passerelles. Contrairement à votre standard. En raison du recours à ce codage, ces messages sont directement lisibles bon vieux téléphone, où la commu- en l'absence d'autres mécanismes de sécurité. nication est gérée à partir d'un seul Les messages SIP sont très semblables au HTTP. Les champs d'en-tête exigés câble selon le point de vue de l'utili- pour chaque message requête sont exposés dans le Tableau 1. En dehors de ces sateur, il existe différentes voies de éléments de protocole, vous pouvez constater que les définitions du protocole ont pour rôle d'assister une communication en relation avec le contexte, même si celle-ci est communications avec la technologie envoyée au moyen d'un protocole sans état comme UDP. VoIP. Voici ci-dessous les protocoles Les composants SIP désormais décrits, vous pouvez aborder les messages de parmi les plus importants : requêtes littérales (voir le Tableau 2), qu'il faut diviser en plusieurs méthodes de re- quêtes. Les nouvelles méthodes de requêtes peuvent venir améliorer le protocole SIP, • pour la signalisation : SIP et SDP mais vous n'allez évoquer que les méthodes basiques (si vous souhaitez en connaître pour l'échange de propriétés de de plus particulières, veuillez consulter les excellents documents RFC). Ces méthodes la transmission en continu, et leur message correspondant constitueront une première introduction, dont le but est • pour le transport : UDP, TCP, de vous montrer vers où sont dirigées des attaques de différentes sortes. On renonce SCTP, à décrire les différentes classes de réponse et leur utilisation dans cet article. • pour la transmission en continu : Les messages sont intégrés dans le contexte de la communication. Les segments RTP, sRTP, RTCP, contextuels sont désignés sous le nom de dialogs (dialogues) et de transactions, où les dialogues peuvent contenir plusieurs transactions. Ainsi, par exemple, un appel • pour les passerelles : SIP, effectué au moyen de VoIP est considéré comme un dialogue SIP, composé des tran- MGCP. sactions INVITE, ACK et BYE. Les agents utilisateurs concernés doivent être capables de stocker le statut d'un dialogue pendant une période de temps assez longue afin de Les protocoles mentionnés plus haut pouvoir générer des messages dotés des paramètres appropriés. fournissent les fonctions de base En raison de la présence des dialogues, il existe de nombreux paramètres, autres pour une utilisation de VoIP et sont que Call-ID, par exemple balise (tag) et branche (branch). Il n'est guère pertinent d'ap- de plus en plus utilisés dans d'autres profondir ces paramètres tout de suite. Contentez vous pour l'instant de noter que les implémentations. Bien sûr, il existe cohérences systématiques entre les valeurs contextuelles spécifiques et le comporte- d'autres protocoles, mais les évo- ment des agents utilisateurs connectés ne sont pas aussi transparentes que d'autres quer ici serait trop long et dépasse- définitions du protocole SIP. Ce qui explique en partie les implémentations non fiables rait le sujet du présent article. et problématiques qui présentent des failles de sécurité. Après une commutation d'appel réussie vers le serveur mandataire (ou proxy) SIP, Afin de mieux évaluer les attaques la communication en voix réelle est réalisée au moyen du protocole RTP. Grâce au co- possibles, il serait utile d'observer dage ainsi échangé, les messages vocaux sont transférés entre les deux partenaires le paramétrage d'un appel basique. (si possibilité de communication IP directe). Le serveur mandataire SIP n'est requis Vous n'utiliserez qu'un seul serveur que pour la libération de la communication. mandataire SIP dans les exemples qui suivront. Ce serveur mandataire fait partie de la commutation de signa- En plus d'une telle déficience attaques peuvent être menées contre lisation et de composition du numéro. organisationnelle, il existe un grand la technologie VoIP et comment s'en Dans la pratique, il y a en général deux nombre d'attaques dirigées contre protéger. Les attaques décrites dans ou plus serveurs mandataires SIP de les infrastructures techniques. Avant le présent article proviennent d'un en- commutation, notamment si les deux de les aborder, il est essentiel de vironnement VoIP couramment utilisé, appelants ne se trouvent pas sur le bien comprendre le fonctionnement dont le protocole de signalisation est même environnement réseau. Dans de base de la sécurité sur le protoco- le SIP. Par ailleurs, les attaques sont le cas de plusieurs serveurs manda- le SIP (en anglais Session Initiation basées sur des méthodes elles aussi taires, les messages SIP sont égale- Protocol). Nous nous concentrerons couramment utilisées. Ne seront donc ment échangés entre ces serveurs sur le protocole SIP, dans la mesure pas évoquées, dans le présent article, mandataires, de manière à former où le développement se dirige claire- les méthodes aux implémentations plus de couches de communication. ment du protocole H.323 vers le SIP. particulières. Avant d'entrer dans les détails, vous Mais il ne s'agit pas non plus d'évo- pourrez observer dans la Figure 1 quer les tâches réalisables grâce au Le protocole SIP une présentation générale de ces protocole (voir l'Encadré SIP – le strict et ses avatars phénomènes. Les fonctionnalités des nécessaire). Le présent article a pour Lorsque le problème de la communi- protocoles utilisés n'ont rien d'extraor- objectif de démontrer comment des cation est évoqué, il faut parler dans dinaire. Au contraire, le protocole SIP hakin9 N o 5/2005 www.hakin9.org 23
Tableau 1. Champs d'en-tête de requêtes SIP Champ d'en- Descriptif tête Request-URI Contient la méthode désignée sous le nom de Request-URI ainsi que la version SIP utilisée. La méthode Request-URI est généralement composée de la même adresse que le champ appelé To (exception : méthode REGISTER). To Il s'agit de la cible d'un message et de la méthode de liaison. La cible est un récipient logique, car au début de l'opération, il n'est pas sûr que le message atteigne le récipient nommé. Selon le contexte de la communication, la valeur de la balise peut également être jointe. From Identification logique de l'émetteur de la requête. Le champ From doit contenir la valeur de la balise, choisie par le client. CSeq Permet de contrôler l'ordre du message dans la portée d'une transaction. CSeq est composé d'une valeur entière et d'un identifiant de la méthode de requête. Call-ID Une valeur Call-ID est censée être non récurrente, comme pour l'ensemble des messages d'un dialogue. Cette valeur est censée être choisie au moyen de méthodes cryptographiques. Max-Forwards Ce paramètre est utilisé pour éviter les situations de boucles. En cas d'absence de critère pour certaines valeurs, la valeur 70 doit être choisie. Via Ce champ montre la manière de transmission et l'emplacement vers lequel devrait être envoyée une réponse. Ce champ doit contenir la valeur Branch-ID non récurrente pour l'agent utilisateur pertinent. L'identifiant Branch-ID débute toujours par z9hG4bK et indique que la transaction débute par cette requête. Tableau 2. Méthodes des en-têtes de requêtes SIP a recours à des techniques largement Méthode Descriptif connues comme par exemple les éléments fondamentaux de HTTP. Le REGISTER Avec cette méthode, un client peut s'inscrire ou annuler protocole RTP a été défini il y presque son inscription d'un serveur mandataire. Il est donc prêt 10 ans maintenant, et sa dernière et disponible pour la communication VoIP. Pour annuler mise à jour date de 2003. l'inscription, la valeur pour la période est réglée sur 0. INVITE Il s'agit de la méthode la plus importante. Sans elle, Attaques SIP/ARP vous n'auriez pas besoin du protocole SIP. Toutes les dirigées contre VoIP méthodes de traçage lui sont subordonnées, même si Il existe plusieurs attaques dont les elles sont toutes utilisées seules. exigences sont différentes pour la ACK Si un appel (par exemple une vidéo conférence) est personne malveillante. Vous allez paramétré, c'est une requête ACK indépendante qui en étudier ici sept des attaques les plus prend connaissance au final. Juste après la requête répandues, les plus efficaces et les ACK , la connexion en continu est paramétrée. plus connues pour apprendre à les utiliser par vous-mêmes. BYE Ce message a pour but de terminer un appel de ma- La vulnérabilité de VoIP, par rap- nière régulière. Grâce à ce message, il devient possible port au service téléphonique ordinai- de mettre fin à une transaction établie au moyen de la re, s'explique en partie par l'utilisation méthode INVITE . Un message BYE est traité au moyen d'un média partagé. En effet, aucune du paramètre du dialogue approprié (Call-ID ou balise). ligne destinée à la transaction d'un ap- CANCEL Avec CANCEL , une connexion établie peut être interrom- pel n'est disponible, mais seulement pue avant que l'appel ne soit établi. Cette méthode est un réseau exploité par de nombreux également utilisée dans des situations d'erreurs. utilisateurs et un grand nombre d'ap- OPTIONS Cette méthode de requête est utilisée afin d'échanger plications différentes. Ce qui permet Focus les méthodes de requêtes supportées ou les attributs bien sûr à une personne malveillante des médias pour la transmission. de s'introduire plus facilement dans la NOTIFY communication, au moyen des systè- Méthode de requête supplémentaire définie dans le mes informatiques. document RFC 3265. Elle permet d'échanger les mes- Aspirer des appels téléphoni- sages de statut d'une ressource vers laquelle un client ques et les rediffuser devant les est connecté. Par exemple, le client peut recevoir une partenaires de communication est indication d'arrivée de nouveaux messages vocaux. sans aucun doute l'une des attaques 24 www.hakin9.org hakin9 N o 5/2005
Sécurité pour Voice over IP sur VoIP les plus impressionnan- tes. Comme mentionné plus haut, la signalisation est réalisée au moyen d'un serveur mandataire SIP, et la communication entre plusieurs partenaires est elle-même possible grâce à la technique peer-to-peer. Dans cet exemple, vous souhaitez écouter l'appel entre Alice et Bob. Pour ce faire, vous devez lancer ce qu'on appelle en anglais une attaque man-in-the-middle au moyen d'un empoisonnement ARP (voir Détec- tion du sniffing dans les réseaux commutés, hakin9 N° 4/2005) dans le but de convaincre à la fois le ser- veur mandataire et les téléphones VoIP d'Alice et de Bob qu'ils veulent communiquer avec vous et non entre Figure 1. Présentation générale schématique de réglage d'un appel au eux. moyen du protocole SIP Vous trouverez dans la Figure 2 un plan illustrant l'aspiration d'une transmission VoIP. Tout d'abord, l'appel est paramétré. Alice envoie la requête pour appeler Bob au serveur mandataire SIP. Ce mes- sage est intercepté puis transmis à la personne malveillante. Le ser- veur mandataire SIP tente désor- mais de joindre Bob pour lui indiquer qu'Alice souhaite l'appeler. Ce mes- sage est également intercepté puis transmis à la personne malveillante. Après une initialisation de l'appel réussie, l'appel actuel (qui a recours Figure 2. Aspiration d'une transmission VoIP au protocole RTP) entre Alice et Bob commence. Cette communication capable de réaliser le décodage vo- entre Alice et Bob, cet appel sera RTP est également interceptée cal appelé Cain & Abel (voir l'Encadré stocké sous forme de fichier WAV de puis transmise par la personne mal- Sur Internet). Après l'avoir installé et manière automatique puis apparaîtra veillante. exécuté, vous devriez contrôler l'en- dans l'onglet intitulé VoIP. Vous pour- Si vous faites appel à un outil semble des hôtes existants sur votre rez alors écouter leur conversation comme Ethereal pour aspirer une sous-réseau (au moyen de requêtes à l'aide de n'importe quel lecteur communication, vous recevrez éga- ARP) en cliquant sur le symbole plus. audio. Et il faut mentionner que, lement les données utiles RTP en Ces hôtes sont désormais visibles si certains mots de passe ont été continu. Si vous souhaitez retenter sous l'onglet intitulé Sniffer et peuvent échangés entre les deux partenaires l'expérience, vous pouvez charger être choisi en tant que victimes po- de communication (comme par exem- les données aspirées dans un dé- tentielles dans le sous-onglet intitulé ple POP3), la personne malveillante codeur vocal de type Firebird DND- ARP. Dans ce cas, vous sélectionne- pourra les voir apparaître dans l'on- 323 Analyzer ou avoir directement rez les adresses IP d'Alice, de Bob glet intitulé Passwords. recours à Ethereal si G.711 U-law et du serveur mandataire SIP. Après Il est donc possible d'affirmer (PCMU) ou G.711 A-law (PCMA) avoir cliqué sur le bouton Start/Stop sans trop de risque qu'une personne ont été utilisés en tant que codecs ARP, l'empoisonnement ARP est ini- malveillante ne rencontrera aucun (il s'agit des transmissions téléphoni- tialisé et il ne reste plus qu'une chose problème sur un réseau local pour ques internationales de codage et de à faire pour la personne malveillante : aspirer une communication et la décodage standards). attendre et observer. Cain & Abel se rediffuser, en l'absence d'installation Il existe, en plus de l'empoison- charge du reste (voir la Figure 3). Si de mécanismes de sécurité supplé- nement ARP, un petit outil pratique un appel a été établi puis achevé mentaire. hakin9 N o 5/2005 www.hakin9.org 25
aléatoirement et contiennent un nom d'utilisateur et un mot de passe sous forme de valeur parasite. Grâce à ce mécanisme, il est quasiment impos- sible pour une personne malveillante d'intercepter le mot de passe sur une période de temps réaliste. DoS – ou Déni de Service Comme sur chaque système offrant Figure 3. Décodage vocal réalisé par l'outil Cain & Abel des services, il est toujours possible de détruire un serveur ou un service Vol d'identité général d'informations parasites MD5 si vous disposer d'un débit suffisant. et détournement formées sur les valeurs du nom de Dans le cas d'un serveur mandataire d'inscription l'utilisateur, du mot de passe, d'une SIP, il serait possible de lancer une En règle générale, l'inscription sur un valeur nonce envoyée par le serveur, attaque dite register-storm capable serveur mandataire SIP nécessite de la méthode HTTP ainsi que de la de surcharger le service. Par ailleurs, un nom d'utilisateur ainsi qu'un mot requête URI. Ce message est traité il serait également possible d'atta- de passe. Comme il a été mentionné par le serveur qui élabore des infor- quer le service lui-même au moyen plus haut, l'ensemble des messages mations parasites MD5, composées d'attaques dites de déni de service, SIP ne sont pas cryptés. Si une per- des mêmes paramètres contenus si ce service est vulnérable. Il est sonne malveillante aspire le processus dans le serveur. Si les deux types d'in- même possible d'obtenir un accès d'authentification (comme avec l'atta- formations parasites sont identiques, au serveur au moyen d'attaques par que ARP), elle peut alors utiliser une l'authentification réussit et est recon- surcharge de la mémoire tampon con- combinaison de nom d'utilisateur/mot nue par un message de statut émis tre ce service. Une telle attaque était de passe pour être authentifé sur le par le serveur (voir le Listing 4). possible en 2003 grâce au serveur serveur mandataire SIP. Les informations parasites en- libre PBX Asterisk (CAN-2003-0761). Toutefois, une telle attaque n'est voyées dans la troisième phase En raison de la faiblesse de traitement plus possible avec les dernières im- disposent de deux fonctionnalités des paramètres dotés des messages plémentations VoIP. Le processus qui permettent d'éviter une fausse MESSAGE et INFO, une personne aux d'authentification (Voir l'Encadré authentification ou une fausse réu- intentions malveillantes était capable Mécanismes de sécurité au sein des tilisation d'une fonction aspirée. de lancer des commandes locales protocoles VoIP), comme la mani- Ces informations ne sont valides dans le contexte d'un service asterisk, pulation d'autres fonctions pertinen- que pour une valeur nonce choisie normalement démarré par root. tes, ont recours à la fonctionnalité authentification digest. Tout d'abord, le client tente de s'authentifier par Mécanismes de sécurité au sein rapport au serveur mandataire SIP des protocoles VoIP En plus des mécanismes relatifs à la communication contextuelle, il existe plusieurs (voir le Listing 1). Le serveur manda- autres mécanismes de sécurité sous le protocole SIP, bien qu'ils ne soient pas inté- taire rejette cette tentative d'authenti- grés aux implémentations. Ces mécanismes de sécurité se rapportent principalement fication en envoyant le code de statut à l'authentification et la sécurité cryptographique de la communication. 401 Unauthorized (voir le Listing 2) Plusieurs possibilités permettent de réaliser l'authentification. Une des méthodes puis demande au client de se con- les plus implémentées est l'authentification digest. Il s'agit d'une simple méthode de necter au moyen de l'authentification challenge-response, qui peut être demandée pour chaque requête. digest. À la ligne débutant par la Il existe une autre méthode censée sécurisée les paquets SIP : l'utilisation du très chaîne WWW-Authenticate, la valeur connu S/MIME. Grâce à S/MIME, le corps d'un message SIP peut être sécurisé au nonce, qui est censée être choisie de moyen des certificats S/MIME. L'utilisation de S/MIME garantie l'établissement d'une manière aléatoire, est soumise. infrastructure à clé publique ainsi que l'implémentation des mécanismes nécessaire Focus Lors de la troisième étape (voir le à la vérification des certificats. Dans le cas de SIP, S/MIME sécurise généralement les messages SDP. L'utilisation de S/MIME demande beaucoup de temps et d'efforts, en Listing 3), le client s'authentifie de nou- l'absence de structures établies. veau. Cette fois, il envoie également D'autres mécanismes de sécurité exigent des éléments de protocole supplémen- le message Authorization. Celui-ci taires. Il est possible à la fois pour les protocoles SIP et RTP de nommer TLS (serveur contient son nom d'utilisateur, le RMA de mail sécurisé) comme méthode éventuelle. Dans le cas du protocole SIP, la protec- donné et la valeur nonce envoyée par tion ne s'effectue que par saut de sorte qu'il est impossible de savoir si le partenaire de le serveur. La partie la plus importante communication a recours à un téléphone activé sur TLS. est la valeur de réponse. Il s'agit en 26 www.hakin9.org hakin9 N o 5/2005
Sécurité pour Voice over IP Le service SIP devient impropre dans la mesure où les messages Listing 1. Première phase d'inscription SIP SIP invalides dépendent de l'implé- REGISTER sip:sip.example.com SIP/2.0 mentation. Si le serveur ne dispose Via: SIP/2.0/UDP 10.10.10.1:5060;rport; § d'aucun mécanisme lui permettant branch=z9hG4bKBA66B9816CE44C848BC1DEDF0C52F1FD de gérer (ou tout simplement ignorer) From: Tobias Glemser ;tag=1304509056 To: Tobias Glemser les messages invalides, il est fort pro- Contact: "Tobias Glemser" bable que celui-ci ne fonctionne plus. Call-ID: 2FB73E1760144FC0978876D9D69AE254@sip.example.com Afin de contrôler son comportement, CSeq: 20187 REGISTER il existe l'outil PROTOS Test Suite, Expires: 1800 censée être lancée par tous les pro- Max-Forwards: 70 User-Agent: X-Lite priétaires de PBX (en anglais Private Content-Length: 0 Branch Exchange) sur leur boîte (voir à ce sujet l'Encadré Sur Internet). Une autre attaque différente par déni de service est appelée user- Listing 2. Deuxième phase d'inscription SIP – rejet supported DoS (ou déni de service SIP/2.0 401 Unauthorized supporté par l'utilisateur). La Figure 4 Via: SIP/2.0/UDP 10.10.10.1:5060;rport=58949; § expose un message UDP envoyé branch=z9hG4bKBA66B9816CE44C848BC1DEDF0C52F1FD au téléphone SIP au moyen de la From: Tobias Glemser ;tag=1304509056 To: Tobias Glemser ; § connexion 14 et de l'IP 192.168.5.84 tag=b11cb9bb270104b49a99a995b8c68544.a415 à partir du serveur mandataire SIP Call-ID: 2FB73E1760144FC0978876D9D69AE254@sip.example.com 192.168.5.25. En envoyant ce mes- CSeq: 20187 REGISTER sage, le serveur mandataire (ou WWW-Authenticate: Digest realm="sip.example.com", § la personne malveillante) signale nonce="42b17a71cf370bb10e0e2b42dec314e65fd2c2c0" Server: sip.example.com ser à l'utilisateur qu'il vient de recevoir Content-Length: 0 un nouveau message vocal dans sa boîte à messages. Vous pourriez reconnaître cette technique en jetant un coup d'oeil au corps du message Listing 3. Troisième phase d'inscription SIP – nouvelle authentification Messages-Waiting: yes ainsi qu'à celui REGISTER sip:sip.example.com SIP/2.0 de Voice-Message: 1/0. À la place d'un Via: SIP/2.0/UDP 10.10.10.1:5060;rport; § message vocal, il pourrait également branch=z9hG4bK913D93CF77A5425D9822FB1E47DF7792 From: Tobias Glemser ;tag=1304509056 s'agir d'un message par fax par exem- To: Tobias Glemser ple. Le premier chiffre (1 dans ce cas) Contact: "Tobias Glemser" indique le nombre de nouveaux mes- Call-ID: 2FB73E1760144FC0978876D9D69AE254@sipgate.de sages stockés, et le second (0 dans CSeq: 20188 REGISTER ce cas) indique le nombre d'anciens Expires: 1800 Authorization: Digest username="123456",realm="sip.example.com", § messages stockés. nonce="42b17a71cf370bb10e0e2b42dec314e65fd2c2c0", § Comme vous pouvez le constater, response="bef6c7346eb181ad8b46949eba5c16b8",uri="sip:sip.example.com" ce paquet a été édité. Cette manœu- Max-Forwards: 70 vre est relativement facile à réaliser User-Agent: X-Lite grâce à l'outil Packetyzer (voir l'Enca- Content-Length: 0 dré Sur Internet) pour Windows, tech- niquement basé sur Ethereal. Chacun des paquets peut être édité. Certaines Listing 4. Quatrième phase d'inscription SIP – réussie sommes de contrôle incorrectes sont également affichées et peuvent être SIP/2.0 200 OK Via: SIP/2.0/UDP 10.10.10.1:5060;rport=58949; § corrigées. Il est donc possible d'en- branch=z9hG4bK913D93CF77A5425D9822FB1E47DF7792 voyer ce message vers des récipients From: Tobias Glemser ;tag=1304509056 arbitraires ; il suffit de disposer de l'IP To: Tobias Glemser ; § et de l'identifiant de connexion de l'uti- tag=b11cb9bb270104b49a99a995b8c68544.017a lisateur, qui est en général le même Call-ID: 2FB73E1760144FC0978876D9D69AE254@sip.example.com CSeq: 20188 REGISTER que le numéro de téléphone. Afin de Contact: ;q=0.00;expires=1800 clarifier cette démonstration et de Server: sip.example.com ser prouver qu'aucune autre information Content-Length: 0 n'est requise, réglez tous les autres hakin9 N o 5/2005 www.hakin9.org 27
Interruption d'appel Nombreuses sont les personnes à mettre immédiatement fin à leur appel à la réception d'un simple message BYE émis par un rapport de revues. Or ce n'est pas si sim- ple. Tout d'abord, n'oubliez pas que la personne malveillante doit con- naître l'identifiant de l'appel du dia- logue donné. Selon le RFC 3261 : le champ en-tête de l'identifiant Call-ID agit en tant qu'unique iden- tifiant afin de rassembler une série de messages. Cet identifiant DOIT être le même pour l'ensemble des requêtes et des réponses envoyées par n'importe quel agent utilisateur dans un dialogue. Il n'existe aucune règle rigoureuse devant être observée par l'identifiant basé sur des informations parasites ou devant être comptée dans les lignes supérieures, mais dans la plupart des implémentations, c'est exactement ce comportement qui est observé : des identifiants choisis de manière aléatoire. Par conséquent, la personne malveillante doit aspirer l'initialisation de l'appel afin d'y met- tre fin au moyen de l'identifiant. Si cette personne se trouve dans cette situation, le contenu de l'appel pour- Figure 4. Paquet SIP modifié rait bien être plus intéressant que d'y mettre tout simplement fin. champs sur la valeur 0. D'autres l'erreur, intéressante à voir puisqu'il champs comme User-Agent ne sont n'y a en réalité aucune erreur réelle. Piratage téléphonique bien évidemment pas utiles ici. Si les personnes malveillantes Le piratage téléphonique (en anglais Et maintenant, comment falsi- commencent par envoyer de tels mes- phreaking) le plus répandu par le fier un tel message ? Il ne contient sages à chaque utilisateur du réseau, passé est la fraude aux services té- aucune donnée sensible. La plu- les utilisateurs et le support passeront léphoniques, qui consiste à envoyer part des téléphones (on a testé un tous les deux du temps à chercher la des systèmes de tonalités spéciales Cisco 9750 ainsi qu'un Grandstream cause de l'erreur. De même, si vous dans des cabines téléphonique pu- BT-100) traitent ces messages envoyez un tel message à de nom- bliques. Cette fraude est en passe (mêmes ceux contenant de fausses breux utilisateurs, et si chacun appelle de resurgir. En raison du découplage sommes de contrôle) et les montrent sa boîte de messages, un flux de des données utiles (flux RTP) et de aux utilisateurs. En règle générale, demandes va être engendré voire un la signalisation (SIP), le scénario une icône ou l'ensemble de l'afficha- plantage de serveur. suivant semble assez réaliste, mais ge commencent par clignoter. L’utili- sateur appelle désormais sa boîte de Focus message parce qu'il a reçu un nou- Sur Internet veau faux message. Comme il n'y • http://www.ee.oulu.fi/research/ouspg/protos/testing/c07/sip/ – PROTOS Test Suite, a aucun nouveau message stocké • http://www.ethereal.com – sniffeur réseau Ethereal, pour lui, il va sans doute penser qu'il • http://www.packetyzer.com – Packetyzer – sniffeur TCP/IP Windows basé sur s'agit d'une erreur et va l'ignorer. Peu Ethereal, de temps après, l'affichage clignote • http://www.asterisk.org – serveur libre PBX Asterisk, de nouveau. L'utilisateur appelle le • http://www.oxid.it – outil Cain & Abel. support, qui va chercher l'origine de 28 www.hakin9.org hakin9 N o 5/2005
Sécurité pour Voice over IP hakin9 N o 5/2005 www.hakin9.org 29
ne peut pas encore être réalisé sans connaître les paquets réponses aujourd'hui. issus du serveur). Certains modèles À propos des auteurs Un client préparé règle un nouvel commerciaux de numéros de servi- Les auteurs sont tous deux consul- appel vers une autre client lui aussi ces spéciaux prévoient des quantités tants en informatique. Tobias Glem- prêt. Tous les deux se connectent via astronomiques de paquets pour un ser travaille pour le compte de la un serveur mandataire SIP et se com- appel, indépendamment de la durée société Tele-Consulting GmbH (http:// portent de manière tout à fait normale. de l'appel. Compte tenu de cette www.tele-consulting.com), en Allema- Dès que l'appel est établi, le serveur situation, une personne malveillante gne depuis plus de quatre ans, alors que Reto Lorenz occupe le poste de di- mandataire reçoit un signal lui ordon- pourrait réaliser des taux importants recteur commercial de la même boîte. nant de mettre fin à l'appel que les grâce à des appels très courts, à la deux clients peuvent lire. Mais ils n'in- charge des autres utilisateurs. terrompent pas le RTP en continu et Composeurs l'appel lui-même continue, le serveur SPIT (Spam over IP L'utilisation des composeurs, décla- SIP ne remarque pas ce phénomène. Telephone) rés hors service depuis le succès Si les deux clients se trouvent L'attaque appelée SPIT est l'un des autres technologies comme le dans le même sous-réseau, l'appel des dangers les plus fréquemment DSL ou les câbles, est en passe de ne se terminera en aucun cas en rai- mentionnés en cas d'installation de devenir une nouvelle attaque. Avec son des voix P2P en continu. Si une la technologie VoIP. Cette attaque le recours à un client SIP, nous dis- coupure apparaît sur le serveur man- consiste à envoyer des messages posons du même scénario que celui dataire SIP (par exemple, connexion vocaux de la même façon que les pu- qui consiste à composer un numéro vers un autre réseau), la communica- blicités e-mail non désirées ou spam. au moyen d'un modem ou de lignes tion RTP est relancée par le serveur Contrairement aux appels automati- ISDN pour appeler des numéros sur- mandataire. Il doit donc mettre fin lui- sés dans le monde des services taxés. Par exemple, un composeur même à la communication RTP en téléphoniques ordinaires, les appels pourrait infecter un client SIP et ins- continu. Il faut donc que le serveur VoIP ne génèrent pas de coûts dès taller un certain nombre de préfixes mandataire reconnaisse, au moyen le début. A l'instar des spams tradi- ou entrer un nouveau serveur man- de SIP, qu'une terminaison d'appel tionnels bien connus, le spitter uti- dataire SIP très onéreux. Les appels a été signalée puis transfère cette lise l'adresse d'une victime, dans ce seraient générés via ces numéros information directement au contrôle cas, il ne s'agit pas de son adresse surtaxés sans que l'utilisateur n'ait de la communication RTP. e-mail, mais de son adresse SIP. aucun moyen de le savoir jusqu'à Une autre attaque éventuelle de Avec le succès que rencontre la té- l'arrivée de la première facture. piratage téléphonique dépend de léphonie IP, ce n'est qu'une question À l'heure actuelle, de tels com- l'implémentation du serveur manda- de temps pour obtenir facilement de poseurs n'ont pas encore été remar- taire SIP. En effet, certaines implé- nombreuses adresses SIP valides, qués, mais ce n'est qu'une question mentations, comme la dernière sortie surtout si les livres d'adresses cen- de temps avant d'entendre parler d'Asterisk, exigent une réauthenti- trales vont être réellement utilisés. de la première attaque de ce genre fication via l'authentification digest Le spitter appelle un numéro SIP réussie (ou échouée ?). comme vous l'avez constaté dans trouvé, le serveur mandataire SIP de les Listings 1 à 4 pour la grande la victime va traiter cet appel et la Conclusion majorité des communications client- victime elle-même n'a d'autre choix Il est évident que la technologie VoIP serveur. D'autres implémentations que d'écouter le message spam éla- est l'une des techniques de ces der- nécessitent une réauthentification borée par le spitter sur par exemple nières années parmi les plus promet- uniquement après un certain temps. la virilité de quelqu'un. Tout comme teuse et est en passe de devenir une Si tel est le cas, il est possible, grâce les spammers, le spitter n'a besoin nouvelle application phare d'Internet, au scénario suivant, de générer des que d'un seul élément, le débit. En destinée aux réseaux des sociétés charges pour le fournisseur. effet, les messages vocaux consom- mais aussi aux réseaux privés. Suite Une personne malveillante en- ment bien plus de ressources que les à la récente attention des médias sur voie un message INVITE valide au e-mails. Un message de 15 secon- les problèmes de sécurité de VoIP, serveur mandataire SIP, au moyen des par exemple (aucune victime ne vous n'aurez pas tort de penser que Focus des informations qu'il a obtenues supporterait un message plus long) la combinaison des protocoles SIP d'un utilisateur authentifié avec suc- équivaut à 120 Ko au moyen d'un et RTP est d'une incroyable fai- cès. Le serveur mandataire SIP va codec de 64 Kbps. En ayant recours blesse. Bien sûr, il est indispensable désormais initialiser l'appel. Les pa- à des chevaux de Troie, encore une d'envisager les problèmes de sé- quets restants nécessaires à réussir fois comme les spams, un utilisateur curité avant d'adopter une nouvelle l'initialisation de l'appel pourraient Internet non protégé pourrait être in- technologie. n être envoyés par la personne mal- duit à envoyer une attaque SPIT au veillante (ce qui nécessite du temps travers de sa bande passante. 30 www.hakin9.org hakin9 N o 5/2005
Vous pouvez aussi lire