Microsoft TechDays 2008, jour 3 : NAP, Vista et ADRMS
Par Sylvain SARMEJEANNE, jeudi 14 février 2008 à 16:34 :: General :: #215 :: rss
Voici de nouveaux aperçus de quelques conférences des Microsoft TechDays 2008. Côté sécurité, cette journée a été principalement consacrée à Vista et aux avancées réseau de Windows Server 2008.
Nouveautés réseau de Windows Server 2008
Conférence présentée par Arnaud Lheureux de Microsoft. Windows Server 2008 (Vista aussi, au passage) comporte une nouvelle pile TCP/IP qui réunit dans un même pilote tcpip.sys les piles IPv4 et IPv6 (cette dernière était anciennement présente dans tcpip6.sys). L'envoi et la réception des paquets sont effectués par la nouvelle version 6.0 de l'interface NDIS. Cette nouvelle pile expose désormais une interface dénommée "Inspection API", permettant d'avoir accès de façon "propre" au contenu des paquets et de pouvoir les modifier. Cela concerne en premier lieu les outils de sécurité tiers tels que les pare-feux.
Windows 2008 semble apporter des améliorations sur les performances réseau, en particulier avec Receive-Side Scaling (permettant de répartir la charge de traitement des paquets sur plusieurs processeurs ou coeurs), NetDMA (diminuant la charge CPU lors de la copie des données vers les tampons applicatifs) et compound TCP (prise en charge efficace des liens très haut débit en jouant sur la fenêtre TCP). Les slides "commerciales" de la présentation annonçaient une amélioration de 40 % sur un transfert SMB en comparaison avec XP/2003.
D'autres technologies plus haut niveau ont été implémentées ou améliorées :
- SMBv2 : nouvelle version du protocole SMB, réduisant le nombre de messages nécessaires
- IPv6 : avec support natif d'IPsec
- DNS : peut fonctionner avec IPv6
D'un point de vue de la sécurité, le pare-feu est désormais activé par défaut (avec une politique de rejet par défaut et des exceptions pour les services Microsoft). IPsec est administré dans la même fenêtre que le pare-feu.
Enfin, Windows Server 2008 apporte le support de NAP (voir ci-après).
Atelier pratique : NAP
Conférence présentée par Cyril Voisin et Amir Laissoub de Microsoft. Les ateliers sont l'occasion de manipuler sur machine les concepts présentés durant les conférences, ici NAP (Network Access Protection).
NAP est une technologie permettant de gérer une politique de sécurité réseau par rapport à un "état de santé" des machines. Les machines respectant la politique auront un accès aux ressources ; les autres seront placées dans un environnement de quarantaine où elles pourront se mettre en conformité avec cette politique. Une politique peut être basée sur la présence d'un pare-feu, d'un anti-virus, l'installation des correctifs de sécurité, etc.
Le but de cet atelier était de n'autoriser les machines sur le réseau que si elles étaient équipées d'un pare-feu. Si tel n'était pas le cas, un message s'affichait indiquant les éléments de non conformité. Il est aussi possible de forcer l'application de la politique : lorsqu'un client sans pare-feu se connecte au réseau, son pare-feu est automatiquement activé.
Dans cet exemple, la mise en quarantaine s'appuyait sur DHCP ; cela protège des postes non conformes, mais pas des utilisateurs malveillants qui pourront toujours, s'ils possèdent les droits administrateurs, s'attribuer une configuration IP correspondant au réseau standard. Cela peut être résolu en utilisant IPsec et 802.1X.
La sécurité de Vista... 1 an après
Conférence présentée par Nicolas Ruff d'EADS. Enfin une conférence non animée par un employé de Microsoft, qui apporte un regard indépendant tout à fait bienvenu... Après avoir rappelé que le marketing lors de la sortie de Vista plaçait la sécurité au premier plan, il passe en revue les principales protections de Vista :
- au niveau conception : SDL (Security Development Lifecycle), UAC (User Account Control), isolation des services dans la session 0
- au niveau implémentation : analyse statique (flag /ANALYSE de Visual Studio, PreFix/PreFast) et code défensif (flag /GS de Visual Studio, SafeCRT (utilisation de fonctions "sûres" pour les recopies), SafeINT (pour manipuler les entiers en diminuant les risques de débordement))
- défense en profondeur : protection du tas, SafeSEH (protection des gestionnaires d'exception), UIPI (User Interface Privilege Isolation), niveaux d'intégrité, DEP (Data Execution Prevention), ASLR (Address Space Layout Randomization)
- environnement : diminution des droits (UAC, comptes de services), outils (Windows Defender, pare-feu)
Au niveau conception, le système n'est protégé que contre les attaques modélisées. Par exemple, un produit tiers peut choisir de désactiver UAC ou la signature des pilotes sur la version x64. Comme le rappelle N. Ruff non sans ironie, si un utilisateur décide de surfer sur un site douteux, de télécharger l'exécutable que celui-ci lui propose, de valider tous les messages d'avertissement puis de lancer le binaire, il y aura assez peu de protections qui demeureront efficaces 
Au niveau implémentation, on note les limites de l'intelligence des protections du compilateur. /GS par exemple, n'est pas appliqué à toutes les fonctions mais selon certains critères définis par Microsoft. Dans le cas de la faille ANI MS07-017, des structures étaient directement manipulées, ce qui ne rentrait pas dans le cadre de /GS, d'où une exploitabilité plus facile (ce n'est d'ailleurs plus le cas, le SDL ayant été mis à jour sur ce point). A noter que les produits tiers ne sont quasiment jamais compilés avec ce type de flags...
Les protections ont toutes été contournées indépendamment les unes des autres, mais la combinaison reste tout de même efficace. Au passage, on notera les références aux papiers d'Uninformed (on ne voit pas souvent ça aux TechDays...). Pour ce qui concerne le noyau, on peut parler des attaques contre PatchGuard et les failles dans des pilotes tiers (ATI, MacroVision, DbgView, etc). Côté réseau, les implémentations des protocoles LLTD et P2P ont été assez peu étudiées. Enfin, les fameux gadgets offrent un nouvel angle d'attaque.
En conclusion, Vista n'est pas inviolable, mais apporte toutefois un nombre significatif d'avancées par rapport à XP SP2, la source principale de failles restant les produits tiers qui ne subissent pas autant de contraintes sécuritaires que les produits Microsoft.
Windows Server 2008 : ADRMS et ADFS
Conférence présentée par Philippe Beraud et Stéphane Méténier de Microsoft. ADRMS (Active Directory Rights Management Services) est la solution proposée par Microsoft afin de gérer les droits sur les documents numériques. Le but est de pouvoir, en plus du chiffrement, contrôler l'usage des documents et donc les actions que les utilisateurs pourront effectuer sur ceux-ci. On pourra par exemple, via une politque, décider que tel document ne pourra pas être édité ou imprimé.
La technologie se base sur une pseudo-PKI utilisant un serveur de licences, et utilise le format XrML (eXtensible rights Markup Language).
ADFS (Active Directory Federation Services) peut être mis en place pour utiliser cette technologie entre deux entités distinctes, typiquement un client et un fournisseur.