Sécurisation d'Exchange 2007

Mon 31 March 2008 by Jeremy Renard

Exchange 2007 est la nouvelle solution de messagerie proposée par Microsoft. En comparaison avec la dernière version, datant de 2003, de nombreuses fonctionnalités ont été apportées, notamment en termes de sécurité. Cet article fournit les six étapes à prendre en compte pour sécuriser son système de messagerie Exchange : sécuriser l'architecture, sécuriser les serveurs de messagerie, sécuriser les clients, sécuriser les communications, renforcer le niveau de sécurité et enfin, maintenir le niveau de sécurité.

Etape 1 : Construire sur des bases solides

Tout d’abord, modeler l’architecture. Exchange 2007 est constitué de cinq rôles qui sont appliqués sur les serveurs lors de l’installation. Même si cela n’est pas recommandé, il est possible d’en mutualiser plusieurs grâce à la virtualisation. Ces rôles sont :

  • Rôle Mailbox : A placer dans le LAN interne de l’entreprise. Les serveurs installés avec ce rôle hébergent les bases de données contenant les emails et les profils utilisateurs et donc les données sensibles. Pour des raisons de disponibilité du service de messagerie, nous utiliserons des clusters. A savoir : les serveurs Mailbox sont directement et étroitement liés aux serveurs AD. Cependant, les rôles d’administration séparent les droits sur la messagerie et sur l’AD depuis cette version d’Exchange ;
  • Rôle Hub Transport : Connecté aux serveurs Mailbox, ces serveurs doivent être séparés par un pare-feu. Ils représentent en fait les relais SMTP. En général, un serveur Hub Transport est installé par domaine. Attention, mal configuré, il peut être relié directement à l’Internet ;
  • Rôle Client Access Server (CAS) : Connecté aux serveurs Mailbox, ce serveur fournit les fonctionnalités de messagerie à distance (cf. Etape 3). Selon que le rôle Edge Transport est installé ou non, le CAS est le plus exposé à l’Internet ;
  • Rôle Edge Transport : Rôle non obligatoire. Il sert de sas entre l’Internet et le CAS. Il sera alors placé dans une DMZ. Un grand nombre de propriétés de sécurité sont définies ici tandis qu’elles seront configurées sur le Hub Transport s’il n’est pas prévu d’utiliser le rôle Edge Transport ;
  • Rôle Unified Messaging : Ce type de serveur a surtout pour objectif d’apporter des fonctionnalités liées à la messagerie unifiée tel que la vidéo-conférence ou la synchronisation avec la VoIP par exemple.

Etape 2 : Sécuriser les serveurs de messagerie

Cette étape consiste à sécuriser chaque rôle. Quel que soit le rôle traité, seuls les services nécessaires devront être lancés et seuls les programmes nécessaires devront être installés. Cela peut être fait avec le Security configuration Wizard (SCW) de Windows. Ensuite, il faudra imposer des ACL sur les dossiers créés et notamment les dossiers publics sur les serveurs Mailbox tandis qu’ils devraient être déconnectés.Pour tous les serveurs, une politique de rôles d’administration doit être appliquée en appliquant une gestion des droits. Six profils différents sont prédéfinis nativement dans Exchange 2007, le but étant d’appliquer le principe de « moindre privilège ».

Ensuite, nous avons besoin d’un antivirus dédié et d’une solution anti-spam. Qu’il s’agisse de la solution Forefront Security for Exchange proposée par Microsoft ou non selon ses besoins, les solutions retenues devront utiliser une architecture 64bits et proposer des protections adéquates pour ce système de messagerie.Pour terminer sur la partie serveur, ces derniers devront bénéficier d’une solution de backup, de monitoring et de haute disponibilité.

Etape 3 : Sécuriser les clients de messagerie

Les clients de messagerie sont Outlook 2007 (client lourd), OWA (Webmail) et Outlook Anywhere (Outlook avec accès distant).

Etape 3.1 : Authentification

Exchange 2007 peut bloquer les communications entre un serveur Mailbox et une version d’Outlook autre que 2007. Ensuite, il faut savoir que les fichiers personnels de l’utilisateur, et donc sensibles, sont présents sur chaque poste client mais non chiffrés … La solution proposée par Microsoft est d’utiliser le chiffrement EFS ou BitLocker.

Concernant OWA, l’authentification par défaut s’effectue via un mot de passe et utilise le protocole Kerberos ou NTLM en cas d’échec. Il est cependant possible d’utiliser une authentification forte reposant sur des Smart Cards avec code PIN pour chiffrer les communications via SSL.

Quant à Outlook Anywhere, l’authentification se fait par mot de passe (via NTLM ou le mode Basic) puis les flux peuvent être chiffrés avec SSL. Pour cela, il conviendra de configurer un serveur IIS sur les serveurs Edge Transport (ou les CAS si non installés).

Etape 3.2 : Limitation des risques de propagation virale et de spams

Outlook et OWA sont capables de filtrer les emails en fonction des extensions des pièces jointes. Plusieurs niveaux de blocage peuvent être configurés.

Les fonctionnalités d’ anti-spam proposées reposent des listes (blanches et noires), le contenu des messages (à base de mots-clés) et un filtre comportemental.

Enfin, l’ Object Model Guard a pour but de vérifier qu’un programme illicite n’essaie pas d’atteindre le carnet d’adresses ou d’envoyer un email avec le profil de l’utilisateur.

Etape 4 : Sécuriser les communications

Etape 4.1 : Sécuriser les communications serveur <-> serveur

La grande nouveauté d’Exchange 2007 est la possibilité de chiffrer les communications en utilisant le protocole SSL/TLS avec authentification mutuelle entre les serveurs via certificats. Si par défaut Exchange propose l’installation de certificats auto-signés il est recommandé de mettre en place des certificats générés par la PKI de l’entreprise et les faire signer par l’autorité de certification racine. Il est aussi possible d’utiliser IPSec à la place de ou en plus de SSL/TLS.

Etape 4.2 : Sécuriser les communications serveur <-> client

Autre nouveauté d’Exchange 2007, le chiffrement des communications entre Outlook 2007 et les serveurs Exchange (les serveurs Mailbox pour être précis). Côté client, cette option doit être appliquée et imposée au client par GPO.

Etape 5 : Renforcer le niveau de sécurité

Etape 5.1 : Appliquer les restrictions

Pour des raisons de performance, nous devons limiter la taille des emails entrants et sortant et le nombre de destinataires. Ces limites peuvent être contrôlées à plusieurs niveaux : au niveau de l’entreprise, du périmètre Exchange 2007, des connecteurs, des serveurs ou des utilisateurs.Dans un deuxième temps, il est possible de paramétrer une liste d’expéditeurs. Si l’expéditeur fait partie de la liste, plusieurs actions pourront de dérouler : accepter le message, refuser le message ou demander à ce que tous les expéditeurs soient identifiés.

Etape 5.2 : Le filtrage des emails

Avec Exchange 2007, il existe de nombreuses méthodes pour filtrer et/ou traiter les messages à implémenter sur les serveurs Hub Transport pour être sûr que chaque email est traité :

  • Le blocage des emails selon l’extension ou le contenu d’un fichier de type MIME ;
  • Le filtrage des expéditeurs qui se fait sur l’analyse du contenu du champ MAIL FROM.
  • Le filtrage des destinataires dont l’analyse porte sur le contenu du champ RCPT TO ;
  • Identification du serveur SMTP expéditeur : Il s’agit de vérifier que le serveur SMTP envoyant le message appartient bien au domaine auquel il prétend ;
  • Évaluer la réputation de l’expéditeur : grâce à un algorithme, il s’agit d’attribuer à l’expéditeur un niveau de réputation ;
  • Le postmark : Il s’agit d’un marqueur qui est placé dans l’entête de l’email envoyé pour s’assurer qu’il ne s’agit pas d’un courrier indésirable ;
  • Le blocage de l’ affichage des images ;
  • La classification des messages : l’expéditeur peut attribuer une classe à son message (ex : « confidentiel »). En fonction de cette classe, une action pourra être exécutée.

Etape 6 : Maintenir le niveau de sécurité

La liste suivante propose un certain nombre d’actions ayant pour vocation de maintenir le niveau de sécurité acquis lors des précédentes étapes :

  • Les outils de vérification tels que Microsoft Exchange Best Practices Analyzer, MBSA, IIS Lockdown tool ;
  • Évaluer la sécurité grâce à des tests de vulnérabilité sur les serveurs de messagerie et des audits de configuration sur les serveurs et les clients ;
  • Une gestion des mises à jour pour s’assurer que les serveurs ne sont pas exploitables par les nouvelles failles ;
  • Une gestion des traces pour des raisons légales, pour la gestion des incidents et le recouvrement des emails.

Pour voir la version longue de cet article, consulter la newsletter de l’ESEC de Mars 2008.