La VoIP est aujourd’hui une technologie qui s’impose tant chez les particuliers que chez les professionnels. Face à cette technologie il est légitime de se demander quels sont les moyens pour se protéger et éviter une perte de confidentialité par rapport aux technologies traditionnelles.
Plus en plus d’outils sont désormais disponibles pour sécuriser de manière acceptable l’ensemble des systèmes VoIP.
Il est nécessaire d’assurer la protection sur tous les niveaux de modèle DOD.

On peut distinguer les niveaux de sécurité de VOIP suivants :
- Limitation d’accès physique dans le réseau VOIP et sur le serveur VOIP (DOD : Accès réseau)
- Configuration fiable des équipements de réseau et la surveillance permanent de topologie et des propriétés de réseau (DOD : Transport et Internet)
- Configuration fiable de Linux et d’Asterisk
Aujourd’hui je voudrais vous expliquer quelques moyens de protéger votre réseau VOIP et le serveur Asterisk
1. Limitation d’accès physique aux équipements réseau tels que switchs ou serveurs ne doivent pouvoir être fait que par les personnes autorisées (administrateurs ou techniciens). Il est aussi important que les employés ne puissent pas brancher ou débrancher des équipements sur le réseau de l’entreprise
2. Séparation les flux data/voip via 2 vlans différents. On a trois possibilités : Création de VLAN par ports (couche n°1 de modèle OSI), par adresse MAC (couche n°2 de modèle OSI) et par adresse IP (couche n°3 de modèle OSI).
4. Authentification forte sur tous les équipements de réseau et des serveurs.
5. Changement des ports par défaut pour les protocoles SIP, IAX2, SSH. Pour le SIP la modification peut être faite dans le fichier sip.conf dans la section « general », pour SSH dans le fichier /etc/ssh/sshd_config et pour IAX dans le /etc/asterisk/iax.conf
6. L’interdiction de login « root » par ssh. Il faut créer le nouvel utilisateur avec la permission d’accès par ssh :
# useradd < nouvel_utilisateur >
# passwd < pass >
# gedit /etc/ssh/sshd_config
Ajouter la ligne AllowUsers <novel_utilisateur>
Changer PermitRootLogin yes pour PermitRootLogin no
7. Intégration de VPN pour des utilisateurs nomades
8. Etablie des IP autorisés pour les clients VOIP. Cette configuration peut être effectuée dans le fichier sip.conf. Pour chaque nouveau client VOIP il faut indiquer l’adresse IP ou la plage des IPs

9. L’Interdiction d’accès à Asterisk sans authentification. allowguest=yes autorise n’importe quel appel entrant SIP sans authentification ou autre restriction, et le passe au contexte déclaré par défaut pour les appels SIP. L’option allowguest ne devrait jamais être mise sur yes

10. Limiter le nombre des appelles simultanées. Dans la configuration de clients SIP il faut établir le paramètre call-limit=1
11. Définition strict des directions dans les règles pour les appels sortant. Toutes les configurations il faut faire dans le fichier extensions.conf.
Exemples :
exten => _83[1-79]XXXXXX, 1, Dial(SIP/${EXTEN:2}@pstn_beeline)
exten => _85[1-79]XXXXXX, 1, Dial(SIP/${EXTEN:2}@example_num)
exten => _838X., 1, Dial(SIP/${EXTEN:2}@pstn_beeline)
exten => _858X., 1, Dial(SIP/${EXTEN:2}@example_num)
Il ne faut surtout pas utiliser les dialplans suivants :
exten => _+X., 1, Dial (……….)
exten => _X, 1, Dial (……….)
exten => _., 1, Dial (……….)
Celui-ci empêche d’appeler vers les numéros surtaxes.
12. Activer l’option « alwaysauthreject=yes » dans le fichier de configuration /etc/asterisk/sip.conf. l’option alwaysauthreject est normalement déjà présente. Activée, elle permet de rejeter les requêtes d’authentification de type (Brute-force) sur des noms d’utilisateur existants.
13. Différenciez vos noms d’utilisateurs de vos extensions SIP. Il est conseillé de choisir un nom d’utilisateur SIP différent de l’extension.
14. Utiliser fail2ban avec asterisk
15. Utilisation de TLS (Transport Layer Security)
# cat sip.conf
[general]
transport=udp
tlsenable=yes
tlscertfile=/etc/asterisk/tls/server_crt_key.pem
tlscafile=/var/www/ca.crt
tlscipher=ALL
…
[401]
…
transport=tls
Le protocole TLS permet de créer un tunnel entre un ordinateur et un serveur. Ce tunnel sécurisé permet un échange d’informations en contournant les dispositifs de sécurité installés pour un serveur ou un ordinateur. Passant outre les systèmes de protection il est alors possible que des actions malveillantes soient menées au travers du point d’entrée du tunnel. Afin de limiter les risques, il est techniquement possible de filtrer les contenus d’un tunnel TLS par la mise en place d’un dispositif qui authentifie le client et le serveur. Deux tunnels sont alors mis en place, un depuis le client vers le dispositif d’authentification et le second du dispositif vers le serveur. Ce système permet alors une analyse et une sécurisation transparente des contenus transférés par le tunnel TLS
Comme nous l’avons vu, des solutions simples et efficaces existent déjà pour lutter contre les attaques.
Laisser un commentaire