HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet JSSI CELAR 2006 Mercredi 29 novembre 2006 Exemples d'intrusion sur les réseaux VoIP Olivier Dembour Guillaume Lehembre <Olivier.Dembour@hsc.fr> <Guillaume.Lehembre@hsc.fr>
Agenda Attaques des téléphones Attaques des passerelles Voix Attaques de l'architecture Téléphonie opérateur UMA GSM & VoIP IMS SIP 2 / 21
Attaques des téléphones 1/2 Équipements généralement peu sécurisés Prise d'empreinte assez facile Réponse ICMP dépendant de la taille des paquets Services ouverts Prise d'empreinte nmap Nombreux services ouverts SSH, HTTP, SNMP, telnet... Serveurs Web généralement activés par défaut Récupération des paramètres Possibilité de lancer tcpdump sur les téléphones SNOM 3 / 21
Attaques des téléphones 2/2 Assez sensibles aux attaques d'inondation Dépendant même du modèle pour une même marque Dégradation de la qualité de la voix Perte de liaison Blocage complet du téléphone Téléphones SIP Wifi assez folkloriques SNMP (lecture / écriture) Login admin codé en dur sur Hitachi (maintenant corrigé) DNS ou NTP codés en dur Ports non documentés Quid des procédures de mise à jour? 4 / 21
Attaques des passerelles Voix 1/4 Call Manager (Cisco) Gestionnaire de tous les téléphones Critique pour l'architecture Version 4 : possibilité de couper le service à distance (scan de port) Coupure totale de la téléphonie Version 5 (Linux ) : plus résistant, présence de filtres HTTP, SSH Protocole propriétaire SCCP (Skinny) Protocole en TCP suivit de (S)RTP Possibilité de déconnecter les téléphones Par ré enregistrement d'un téléphone connecté 5 / 21
Attaques des passerelles Voix 2/4 Protocole Skinny (suite) Usurpation d'identité (Protection par authentification?) IPBX d'alcatel Compte par défaut sur le PABX (avec hosts.equiv) Mots de passe triviaux Nombreux services (HTTP, telnet, FTP, RSH) Serveur WEB (CGI cachés vulnérables) Activation par défaut du protocole SIP (TCP / UDP) 6 / 21
Attaques des passerelles Voix 3/4 IPBX Alcatel (suite) Possibilité de connexion anonyme (SIP) Possibilité d'usurpation d'identité en interne (SIP) Protocole propriétaire (UA) Protocole en UDP Protocole de signalisation, puis RTP Possibilité d'usurper l'identité de l'ipbx Désynchronisation de la signalisation Redémarrage du téléphone Sonnerie intempestive du téléphone 7 / 21 Signalisation de décroché inopérante, nécessité de couper l'alimentation Mise hors service à distance (paquet usurpé)
Attaques des passerelles Voix 4/4 A long terme : des attaques externes commencent... VOIPSA (Mai 2006) Attaque de brute force (10 tentatives / secondes) Penser de suite au problème d'authentification! 8 / 21
Attaques de l'architecture 1/2 Réservation des adresses DHCP attribuables plus d'adresses = plus de service Solution : limitation du nombre de requêtes DHCP par port Répondre aux interrogations DHCP (DHCP Snooping) Solution : définir le(s) port(s) pouvant envoyer des réponses DHCP Écoute des conversations (Ex : C&A, ILTY, Wireshark, etc.) Solution : activer l'inspection ARP pour éviter les attaques MitM, chiffrer les communications 9 / 21
Attaques de l'architecture 2/2 Déni de service sur les téléphones (Ex: ISIC,inondation diverse, etc.) Solution partielle : filtrer le trafic inter téléphones pour ne laisser passer que les flux nécessaires Ne protège pas des DoS sur les protocoles ouverts nécessairement Accès au VLAN voix Pas vraiment de solutions simple Un attaquant peut toujours connecter son ordinateur à la place d'un téléphone en usurpant si nécessaire son adresse MAC. La solution arrivera avec 802.1X. Bref, des solutions simples permettent de palier un certain nombre de problèmes de sécurité 10 / 21
Téléphonie opérateur : UMA 1/2 Particularité de l'uma Plus GSM sur IP que Voix sur IP Nécessite une identité valide (Carte SIM) Protocole IKEv2 : RFC 4306 récente (Décembre 2005) Corrections des «problèmes» de IKEv1 Echange Diffie Hellman, chiffrement immédiat, puis dialogue Possibilité de monter une tunnel IKEv2 avec un PC Mais nécessité un peu de développement (intégration d'eap SIM) 11 / 21
Téléphonie opérateur : UMA 2/2 Exposition de l'infrastructure interne de l'opérateur HLR contenant les identités de tous les clients Interrogé par un serveur Radius Équipement de voix moins connu du domaine de la sécurité Moins testés? Mais aussi vulnérable Exemple: coupure de ports du UNC avec 1 paquet 12 / 21
Téléphonie opérateur : GSM & VoIP 1/2 Architecture avec BTS/IP MS [Interface Radio] Chiffrement en théorie... BTS/IP BTS/IP Abis over IP + RTP/RTCP Abis over IP + RTP/RTCP Abis over IP + RTP/RTCP A BSC/IP PCU Gb MSC/VLR 13 / 21 SGSN Dans la version initiale : absence de mécanismes de sécurité fondés sur la cryptographie dans l'adaptation du protocole Abis sur IP : Flux TCP (propriétaire) pour la signalisation sans authentification mutuelle ou BTS/IP unilatérale entre BTS et BSC, ni chiffrement ou contrôle d'intégrité, Flux UDP (RTP/RTCP) pour la voix à destination d'une passerelle MGW (Media Gateway) Même constat : absence complète de sécurisation Sécurité (physique/logique) des équipements BTS/IP?
14 / 21 Téléphonie opérateur : GSM & VoIP 2/2 Falsification d'appels entrants Signalisation GSM BSC (.105) 10.0.0.105 BTS (.106) 10.0.0.106 GSM PAGING_CMD(TS=0,CCCH,) # Appel Entrant 10.0.0.106 10.0.0.105 GSM CHAN_RQD(TS=0,RACH,) 10.0.0.105 10.0.0.106 GSM CHAN_ACTIV(TS=0,SDCCH4/0,) # Alloc. Canal Sig. 10.0.0.106 10.0.0.105 GSM CHAN_ACTIV_ACK(TS=0,SDCCH4/0,) 10.0.0.105 10.0.0.106 GSM IMM_ASS(TS=0,CCCH,RR:Immediate Assignment) 10.0.0.106 10.0.0.105 GSM EST_IND(TS=0,SDCCH4/0,RR:Paging Response) [...] Mécanismes d'authentification + chiffrement (MS + BTS) 10.0.0.105 10.0.0.106 GSM DATA_REQ(TS=0,SDCCH4/0:MM:Identity Request) # IMEI 10.0.0.105 10.0.0.106 GSM DATA_REQ(TS=0,SDCCH4/0:CC:Setup) 10.0.0.106 10.0.0.105 GSM DATA_IND(TS=0,SDCCH4/0:MM:Identity Response) 10.0.0.106 10.0.0.105 GSM DATA_IND(TS=0,SDCCH4/0:CC:Call Confirmed) 10.0.0.105 10.0.0.106 GSM CHAN_ACTIV(TS=1,Bm,) [...] 10.0.0.106 10.0.0.105 GSM CHAN_ACTIV_ACK(TS=1,Bm,) 10.0.0.105 10.0.0.106 GSM DATA_REQ(TS=0,SDCCH4/0:RR:Assignment Command) 10.0.0.203 10.0.0.106 RTP Payload type=unknown (84), SSRC=168645406, Seq=50107, Time=790508536 10.0.0.106 10.0.0.203 RTCP Receiver Report [...] MGW (.203) BTS (.106) Flux Audio (RTP) Message CALL SETUP qui comporte le numéro appelant,, falsifiable : R éécriture en ::;;<<05522 Risques : Atteinte à la confidentialité des conversations, fraudes diverses (détournement d'appels, redirection vers des numéros surfacturés pour les appels sortants etc.)
Téléphonie opérateur : IMS 1/3 IMS : IP Multimedia Subsystem (3GPP) Spécification adaptée aux opérateurs SIP, incluant des modifications Convergence vers le tout IP des réseaux et services Télécom Communication IP de bout en bout Problème de la gestion des identités : Identité privée : utilisée pour l'authentification et la facturation Identité publique : présentée aux utilisateurs et aux applications Aucune corrélation entre l'en tête «FROM» SIP et l'identité privée, le P CSCF transfère les messages avec les en têtes forgés 15 / 21
Téléphonie opérateur : IMS 2/3 16 / 21
Téléphonie opérateur : IMS 3/3 MESSAGE sip:test1@ims.hsc.fr SIP/2.0 From: sip:test2@ims.hsc.fr To: sip:test1@ims.hsc.fr Security-Verify: digest;d-ver="876708e489d65e36bcba9e01143c310b" Du P CSCF à la victime Le champ P Asserted Identity indiquant l'utilisateur authentifié est inséré par le P CSCF mais non pris en compte 17 / 21 Exemple : Identité privée utilisée = hsc1 Conséquences : Usurpation d'identité dans le «chat» Usurpation d'identité dans le partage de fichiers De l'attaquant au P CSCF MESSAGE sip:test1@ims.hsc.fr SIP/2.0 From: sip:test2@ims.hsc.fr To: sip:test1@ims.hsc.fr P-Asserted-Identity:sip:hsc1@ims.hsc.fr P-Called-Party-ID:<sip:test1@ims.hsc.fr>... Et aussi... possibilités : de canaux cachés non facturé en utilisant les messages de signalisation (MESSAGE) de SPAM dans l'uri SIP pour un coût nul (MESSAGE & INVITE) d'attaques inter mobiles (plus généralement)!
Téléphonie opérateur : SIP 1/3 De nombreux opérateurs & entreprises mettent à disposition de leurs clients des passerelles SIP (5060/udp) Quid de la sécurité des piles SIP? Des outils commencent à apparaître pour réaliser la prise d'empreinte des piles SIP (active ou passive) Analyse des réponses vis à vis de méthodes / messages / média non suportés, temps de réémmission, etc. smap logiciel hybride entre nmap & sipsak http://www.wormulon.net/ Hendrik Scholz Récupération des bannières des serveurs Autre logiciels connexes : parser_test, stackcmp, sip 18 / 21
Téléphonie opérateur : SIP 2/3 Fuite d'informations des piles SIP : dans les Call ID Souvent prédictibles Dérivés de l'adresse MAC (Teles iswitch) + réutilisé dans les Branch dans les Branch Ex : Newport SBC inclu les numéros des entités communicantes encodées + compteur qui s'incrémente permet de d'obtenir le nombre d'appels par seconde! Les parseurs des différentes piles SIP sont souvent trop permissifs et autorisent l'envoi de trames erronées (encodés, incluant des caractères interdits, etc.) susceptible de provoquer des erreurs applicatives 19 / 21
Téléphonie opérateur : SIP 3/3 Cas pratique d'intrusion sur des réseaux VoIP opérateur : Session Initiation Protocol Request Line: INVITE sip:06xxxxxxxx@a.b.c.d SIP/2.0 Message Header Via: SIP/2.0/UDP 10.0.0.53:7502 Max Forwards: 70 From: "0606060606" <sip:0606060606>;tag=9c6072bf2bd8428bb2f63d1191f23f34;epid=eae6c76a48 To: <sip:06xxxxxxxx@a.b.c.d> Call ID: 2c3fad5bdb6e48dda1640aaa7417d3b3 20 / 21 Impact : Consultation de la messagerie de tous les abonnés, Usurpation d'identité pour les appels et les SMS / MMS mais pas d'impact sur la facturation
Questions & Prochains rendez vous Formation ISO27001 Lead Auditor Certification ISO27001 Lead Auditor par LSTI http://www.hsc.fr/services/formations/ Tutoriel Sécurité à Solutions Linux 2007 Lyon : 27 nov 1 déc Paris : 4 8 décembre Genève : 22 26 janvier Toulouse : 5 9 février http://www.hsc.fr/conferences/solutionslinux_2007.html.fr Prochainement un cours HSC sur la sécurité VoIP! Questions?? Olivier Dembour Guillaume Lehembre <Olivier.Dembour@hsc.fr> <Guillaume.Lehembre@hsc.fr> 21 / 21