sécurité asterisk
DESCRIPTION
Forum Atena , 5 mai 2011 à l’ Epita Conférence : « La place de l'open source sur le marché de la ToIP : bilan et perspectives. ». Sécurité Asterisk. Attaque & Défense. Par Serge CARPENTIER Ingénieur Sécurité Réseau Voix - AGARIK SAS Fondateur d’Asterisk France. Les bonnes questions. - PowerPoint PPT PresentationTRANSCRIPT
Sécurité AsteriskAttaque & Défense
Forum Atena, 5 mai 2011 à l’Epita Conférence : « La place de l'open source sur le marché de la ToIP : bilan
et perspectives. »
Par Serge CARPENTIER Ingénieur Sécurité Réseau Voix - AGARIK SAS
Fondateur d’Asterisk France
Les bonnes questions
• Les bonnes questions :– Quels sont les risques d’une indisponibilité
de mon infrastructure Voix ?– Combien cela peut-il coûter à l’entreprise ?
• Par son indisponibilité• Informations dérobées (Ex: Conversation
ou message vocal)• Fraude d’appel
– Le budget pour la mise en place de la sécurité est-il justifié ?
– La sécurité mise en place n’est-elle pas exagérée ?
Responsabilité• L’attitude à avoir sur la gestion de la
sécurité sur une infrastructure doit être ferme & claire.
Level 2 : Grab / Énumération
Voici quatre types d’énumération le plus souvent utilisées :
• Récupérer la version du « Sip User Agent Client » et « Server ».• Les extensions des comptes « Souvent utilisé comme compte utilisateur »• Les fichiers de configuration des téléphone sur le serveur TFTP « Qui contiennent souvent les Comptes SIP & Password ».• Les informations de configuration via SNMP.
Level 2 : Grab / Énumération (Suite II)
• Deux cas nous intéressent :– Le Grab de Bannière– L’énumération des Extensions
• SipViCious : Exemple d’un scan réel
Level 2 : Grab / Énumération Suite IV)
http://www.asterisk.org/security
• L’utilité d’avoir la version de l’instance Asterisk nous permettra de savoir s’il y a des failles connues et de les l’utiliser.
Level 2 : Grab / Énumération (Suite V)
• Enumération des comptes SIP
Lors de cet exercice, le serveur nous retourne un « 404 Not Found » si le compte n’existe pas, sinon celui-ci nous demande le Password. A cet instantSIPVicious sait que le compte existe.
Level 2: Enumeration FinLevel 3: Cracking de password
Il ne reste plus qu’à utiliser SVCRACK avec un dictionnaire afin de trouver le password du compte.
• Des outils sont disponibles pour effectuer les mêmes actions sur des comptes IAX.
Exemple: ENUMIAX
Level 2: Enumeration FinLevel 3: Cracking de password
Sécurité AsteriskAttaque & Défense
Exemple d’une attaque DDoS ToIP
• Level 4 : Mise en place & Execution
Level 4: Execution
Level 4: Execution
• La prise de contrôle de serveur VoIP peut permettre plusieurs attaques comme :
Attaque DDoS VoixPrendre le contrôle de plusieurs Comptes VoIPMettre en place WarVoxMettre en Base tous les numéros à appeler en même temps
Prendre le contrôle de plusieurs Comptes VoIPMettre en place WarVoxMettre en Base tous les numéros à appeler en même temps
Fraude de communications
J’ achète un Joli numéro surtaxé et à chaque appel passé je gagne de l’argentJ’ appelle gratuitement.
J’ achète un Joli numéro surtaxé et à chaque appel passé je gagne de l’argentJ’ appelle gratuitement.
En prenant le contrôle de la machine via une faille Asterisk, toutes les autres attaques traditionnelles sont possibles.
Usurpation d’identité
Appeler en changeant sont Caller-id afin de se faire passer pour quelqu’un d’autre.Appeler en changeant sont Caller-id afin de se faire passer pour quelqu’un d’autre.
Sécurité AsteriskAttaque & Défense
Sécuriser un minimum
• Sécuriser sa couche d’accès en interne• Sécuriser son serveur en Général• Sécuriser Asterisk: SIP• Sécuriser Asterisk: IAX• Sécuriser Asterisk: Dial Plan
Sécuriser sa couche d’accès en interne.Petites informations supplémentaires
• Sécuriser les accès sur les Switchs via 802.1x avec RADIUS ou via du VMPS.– Conséquence : Lors d’une @MAC inconnue, l’interface bascule soit
dans un VLAN isolé ou alors le port se met en securité.
• Limiter les nombres d’ @MAC par port de Switch à 2.• But: Eviter de faire déborder la table MAC sur le Switch pour que celui-
ci, réagisse comme un HUB afin de pouvoir sniffer tous les paquets.
• Utiliser les fonctions avancées de sécurité sur les Switchs comme :• DHCP Snooping (Evite a un Pirate de distribuer des adresses IP avec une autre passerelle et/ou d’autres serveurs DNS.• ARP Guard : Va envoyer une alerte à un IPS ou effectuer une action sur le switch, afin d’éviter le Spoofing d’adresse MAC pour effectuer unMiTM.
Sécuriser sa couche d’accès en interne.Petites informations supplémentaires
• Séparer la Voix de la Data dans deux VLAN différents.• Utiliser des ACL ou règles de Firewall pour filtrer le Traffic entre les deux
VLAN.• Limiter le nombre VLAN qui vont transiter sur l’interface du Switch et
mettre un vlan Native.• Vérifier et maintenir à jour les updates des Switchs ainsi que des
téléphones.
Sécuriser son serveur en Général
• Ne pas exécuter Asterisk en Root
• Ne pas connecter Asterisk sur Internet directement.
• Utiliser des firewall Statefull et ne pas ouvrir des ports dans tous les sens.
• Utiliser Fail2Ban pour bloquer les IP effectuant du Fuzzing.
• Utiliser IPTABLE afin de filtrer les différents ports et bloquer les IP effectuants
des scans. (Ex avec SipScan utiliser cette option : --string "sip-scan" ). Votre vlan Voix n’a pas besoin d’accéder aux différentes interfaces
d’administration. • Utiliser des instances SBC pour séparer les connexions Interne et Externe. (Cela assurera une séparation entre votre réseau d’entreprise et celui de l’extérieur). Vyatta & OpenSBC par exemple pour interconnecter son ITSP en SIP ou un site distant.
• Pour les Clients Mobiles (Wifi ou Nomade) utiliser des connexions VPN.
Sécuriser son serveur en Général
• Vyatta utilise IPTABLE et charge l’option SIPContrack. De l’extérieur on ouvrira seulement le port 5060:
iptables -A RH-Firewall-1-INPUT -p udp -m string --to 300 --algo bm --string "friendly-scanner" -m udp --dport 5060 -j LOGDROPiptables -A RH-Firewall-1-INPUT -p udp -m string --to 300 --algo bm --string "sip-scan" -m udp --dport 5060 -j LOGDROPiptables -A RH-Firewall-1-INPUT -p udp -m string --to 300 --algo bm --string "iWar" -m udp --dport 5060 -j LOGDROPiptables -A RH-Firewall-1-INPUT -p udp -m string --to 300 --algo bm --string "sipsak" -m udp --dport 5060 -j LOGDROP
• Filtrage des scanners SIP
+ OpenSBC =
Sécuriser Asterisk: SIP
• Activer alwaysauthreject: Asterisk renverra toujours un 401 pour un INVITE ou un REGISTER
• Passer l’option allowaguest à no• Changer son SIPUSERAGENT: ex: useragent=Cisco_IOS12T4• Changer le context par defaut (qui est default)• Utiliser l’authentification par Certificat si possible et SIP/TCP/TLS• Asterisk 1.8.x : SRTP est en natif• Ne Pas utiliser les SDA comme compte SIP, plutot faire une translation par
une AGI.• Pour les comptes utilisateurs, mettre un call-limit à 2 ou 3.• Utiliser un maximum les ACL des comptes SIP.
IAX2 est souvent utilisé pour l’interconnexion de deux sites distants afin d‘économiser les Headers et éviter les problèmes de NAT.•Supprimer les exemples de compte IAX.•Changer le contexte par defaut•Utiliser les clefs RSA pour l’authentification entre deux Asterisk •Utiliser les ACL•Activer l’encryption AES128•Ne Pas utiliser les SDA comme compte IAX2, plutôt faire une translation par une AGI.
Sécuriser Asterisk: SIP
Sécuriser Asterisk: Dial Plan
• Ne pas utiliser le matching absolu _X.,1,……• Faire DialPlan par élévation de droit d’appel :
[CNTX_LOCAL]Comment=Appel locaux et numéros d’urgence
[CNTX_FRANCE_NATIONAL]Include => CNTX_LOCAL
[CNTX_FRANCE_MOBILE]Include => CNTX_FRANCE_NATIONAL
[CNTX_FRANCE_INTERNATIONAL]Include => CNTX_FRANCE_MOBILE
• Faire correspondre les CallerID pour les services d’entreprises.Exemple : exten => 3361234567890/33140401010,1,VoicemailMain()
…..Nous pouvons aller vraiment très loin.
Les bonnes infos
• Site Asterisk:
• Site officiel Asterisk : www.asterisk.org• Asterisk-France : www.asterisk-france.org• Voip-info: http://www.voip-info.org
• Securité Voix :• VoIP SA: http://www.voipsa.org/• NIST : csrc.nist.gov/publications/nistpubs/800.../SP800-58-final.pdf• VoIP Abuse Project: http://www.infiltrated.net/voipabuse/
http://www.hackingvoip.com/Certification : Sécurité C.E.H & E-CVPhttp://www.eccouncil.org
Events
Nuit du Hack 2011http://www.nuitduhack.com/
Votre interlocuteur Vos questions ?
Serge CarpentierIngénieur Sécurité Réseau Voix
Agarik20, rue Dieumegard93 400 Saint-OuenTel +33 (0)1 40 10 58 88Fax +33 (0)1 40 10 57 90 [email protected]
AGARIK, LE SPÉCIALISTE DE L’HÉBERGEMENT ET DE L’INFOGÉRANCE WEB CRITIQUE
HÉBERGEMENT – RÉSEAU – INFOGÉRANCE – CLOUD – SÉCURITÉ>> WWW.AGARIK.COM <<
Agarik Recrute