Title: Windows XP SP2
1Windows XP SP2
- Point de vue du développeur
Gilles Guimard (gillesg_at_microsoft.com) Jean
Gautier (jeanga_at_microsoft.com )
2Agenda
- Protection Réseau
- Le Pare-feu de Windows XP
- DCOM
- Connections RPC
- Protection NX
- Outils de développement
- Sécurité du courrier électronique
- Sécurité Internet Explorer
- Application Compatibility Toolkit (ACT) 4.0
- Update Impact Analyzer
3Pourquoi ce SP2?
- Plusieurs attaques virales du passé auraient été
atténuées si un pare-feu avait été actif - La surface dattaque de Windows XP pouvait être
largement réduite - Simplifier ladministration déléments clés de la
sécurité
4Nouveautés du Pare-feu
- Activé par défaut
- Sécurité dès le démarrage
- IPV4 et IPV6 sont supportés
- Multi profils Domaine/Standard
- Configurable via
- Netsh
- Stratégies de groupe
- Modèle objet NetFW
- Fichier INF lors du déploiement
5Parefeu Windows
6Que se passe til lorsquune application tente
douvrir un port réseau?
7Configuration du Pare-feu avec netsh
- Quelques commandes simples
- firewall show config
- firewall add portopening TCP 80 MyWebPort
- firewall delete portopening TCP 80
- firewall add allowedprogram programc\windows\sys
tem32\notepad.exe nameTheNotepad modeDISABLE - firewall set service typeREMOTEADMIN modeDISABLE
8Configuration du Pare-feuModèle Objet NetFw
- using NetFwTypeLib
- namespace FirewallConfig
-
- class Program
-
- static void Main(string args)
-
- INetFwMgr mgr (INetFwMgr)System.Activator.Cre
ateInstance( - System.Type.GetTypeFromProgID("HNetCfg.FwMgr")
) - INetFwProfile profile mgr.LocalPolicy.Current
Profile - INetFwAuthorizedApplication app
(INetFwAuthorizedApplication) System.Activator.
CreateInstance( - System.Type.GetTypeFromProgID("HNetCfg.FwAutho
rizedApplication")) - app.ProcessImageFileName _at_"c\windows\system3
2\notepad.exe" - app.Name "LeNotepad"
9Configuration Pare-feu - Recommandations
- Réservée à ladministrateur
- Demander laval de lutilisateur avant de
modifier la configuration du pare-feu
programmatiquement - Adapter la configuration au contexte (Internet,
Réseau dentreprise)
10DCOM Ce qui ne change pas
- Tous les serveurs COM InProcess fonctionneront de
la même façon sur Windows XP SP2 - Par défaut, tous les serveurs DCOM locaux
fonctionneront de la même façon sur Windows XP
SP2 - Par défaut, tous les clients DCOM fonctionneront
de la même façon - Les événements ou call backs transforment un
client en serveur DCOM
11DCOM Ce qui change
- Tous les appels DCOM inter machines doivent être
authentifiés - Le lancement et lactivation à distance sont
restreints par défaut aux seuls administrateurs
locaux - Ladministrateur peut imposer des limites de
sécurité globales au poste. - Limitant ainsi les modifications au niveau de
chaque application (CoInitializeSecurity) - Modifiable via DCOMCNFG.EXE
12Résumé Sécurité DCOM
- Distinction entre
- Accès distant
- Accès local
- Distinction entre
- Lancement (création du processus serveur)
- Activation (création dune instance)
- Le tout sous le contrôle total de
ladministrateur et configurable via DCOMCNFG
13Amélioration de la sécurité RPC
- Ouverture automatique des ports RPC pour les
services utilisant les comptes Local System,
Network Service ou Local Service - Sinon, utiliser les Applications Autorisées
- Par défaut, toutes les connexions entrantes
doivent être authentifiées
14Basic Redirecteur WebDAV
- WebDAV
- Nautorise plus lauthentification Basic
- Car il ne permet pas dutiliser un canal sécurisé
(SSL) - Par défaut, Windows XP désactive
lauthentification Basic dans le redirecteur
WebDAV - Controlé par
- HKLM\SYSTEM\CurrentControlSet\Services\WebClient\P
arameters\UseBasicAuth (REG_DWORD)
15Basic et WinInet
- Lauthentification Basic sur un canal non
sécurisé est désactivé par défaut - Utilisation de SSL ( i.e. HTTPS)
- Controlé par
- HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Int
ernet Settings\DisableBasicOverClearChannel
(REG_DWORD)
16Protection dexécution (NX)
- Requière une plateforme matérielle supportant le
No Execution - Le K8 dAMD et lItanium dIntel supportent NX
- Peut être émulé sur les plateformes non NX
- Permet de rendre beaucoup plus difficile
lexploitation de Buffer Overruns - Basé sur la protection daccès en exécution de la
mémoire
17Principe de fonctionnement NX
- Une exception STATUS_ACCESS_VIOLATION est levée
lors dune tentative dexécution de données - LPVOID lpvBase VirtualAlloc( NULL, dwSize, //
size of allocation MEM_RESERVE, // allocate
reserved pages PAGE_READWRITE) // Read, Write - Désactivable
18Internet Explorer
- Fenêtre de gestion des modules complémentaires
- Activation/Désactivation/mise à jour
- Module de type
- ActiveX
- Browser Helper Object
- Extension de barre doutils
- Détection des problèmeslié à un module
complémentaire - Affichage du module qui à causé lerreur
19(No Transcript)
20Service de pièce attachée
- Ce service protège le système contre les pièces
attachées malveillantes - Approche unifiée qui est utilisée par Outlook
Express, Outlook 2003 et MSN Messenger - Si vous développez une application qui exécute ou
sauve des pièces attachées, vous devez utiliser
ce service
21Service de pièce attachée
- Donne pour chaque pièce attachée un facteur de
risque - Basé sur lextension de fichier, le content-type,
etc. - Ce facteur de risque est mappé sur les zone de
Internet Explorer - Linterface COM IAttachmentExecute est le point
dentrée pour ce service - Remplace la fonction AssocIsDangerous
22(No Transcript)
23Internet Explorer
- Verrouillage de la zone poste de travail
- Tous les fichiers locaux ouverts dans Internet
Explorer disposent dune sécurité renforcée - Restreint lutilisation de fichier HTML sur la
zone  poste de travail - Aide à prévenir les attaques lorsquelles
utilisent du code HTML comme vecteur dattaque - Les paramètres par défaut
- URLACTION_ACTIVEX_RUN ? désactivé
- URLACTION_SCRIPT_RUN ? désactivé
- URLACTION_CROSS_DOMAIN_DATA ? prompt
- URLACTION_BINARY_REHAVIORS_BLOCK ? désactivé
- URLACTION_JAVA_PERMISSIONS ? désactivé
24Implications
- Toutes les applications utilisant des fichiers
HTML/Script/ActiveX,applets en local sont
impactées - Solutions
- Si vos pages locales utilisent du script ou des
ActiveX, vous pouvez insérer dans la page une
balise de typelt! save from url(0022)
http//www.url.com --gt - Enregistrer les fichiers sous forme darchive web
(mht) - Créer une application séparée et utiliser le
contrôle Internet Explorer - Notes
- Nimpacte pas les applications utilisant le
contrôle Internet Explorer - Nimpacte pas les applications les zones
 Intranet ou  Internet - Les fichiers HTA ne sont pas impactés
- Le protocole res// utilise le verrouillage de la
zone  InternetÂ
25(No Transcript)
26Internet Explorer
- Le bloqueur délément contextuel
- Bloque les fenêtres de type pop-up non désirées
- Paramétrable par zone
- Fonctionnalités
- Activé par défaut
- Toutes les fenêtres de type pop-up sont bloquées
dans la zone Internet - Les sites de confiance (https) et les sites de la
zone  Intranet local ne sont pas bloqués par
défaut - Nimpacte pas les applications utilisant le
contrôle Internet Explorer
27Internet Explorer
- Interface utilisateur
- Outils/Options/Confidentialité
28Internet Explorer
- Options avancées
- Sites à autoriser permet les pop-up pour ces
sites - Bloque tous les pop-up automatiques, créés via
des évènements, window_onload(), timers - Les liens ne sont pas bloqués par défaut
- Lorsque les pop-up sont désactivés pour les
liens, la touche ATLclick sur un lien désactive
la fonctionnalité - On peut activer cette fonctionnalité parzones
 Intranet local et  Site de confianceÂ
29Internet Explorer
- Restriction sur laffichage des fenêtres
- Plus possible de désactiver la barre détat via
du script - La méthode fullscreen est remplacée par un
affichage en maximisé - Laffichage de fenêtre via la fonctionwindow.crea
tePopup - Ne peut apparaître que dans la zone parente
- Impossible de couvrir la barre de titre, barre
détat
30Implications
- Affecte laffichage des fenêtres pour les sites
Internet - Toutes applications Internet utilisant
window.open(), window.showModalDialog/showModeless
Dialog(), window.navigateAndFind() et showHelp()
dans des évènements au chargement/déchargement de
la page - Nimpacte pas
- les applications utilisant le contrôle Internet
Explorer - La nouvelle interface INewWindowManager permet
dimplémenter sa propre gestiondes pop-up
31Implications
- Try/catch et gestion derreur
lt!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0
Transitional//EN"gt ltHTMLgt ltHEADgt lttitlegtPopup
Testerlt/titlegtlt/HEADgt ltbodygt ltform id"Form1"
method"post" runat"server"gt ltPgtltINPUT
type"button" value"Open" onclick"openWin()"
ID"Button1" NAME"Button1"gtlt/Pgt ltPgtltINPUT
type"button" value"ShowHelp" onclick"showPopup(
)" ID"Button2" NAME"Button2"gtlt/Pgt lt/formgt lt/b
odygt ltscript language"javascript"gt function
openWin() try window.open("http//ww
w.msn.com","MSN") catch (e)
window.alert("Popup window blocked "
e.number) function handlePopupErrors()
window.alert("Error occurred") return
true function showPopup()
window.onerror handlePopupErrors
window.showHelp("http//www.msn.com","") lt/sc
riptgt lt/HTMLgt
32(No Transcript)
33Internet Explorer
- Le modèle objet
- Nouvel événement au niveau de lobjet WebBrowser
NewWindow3 - Private Sub object_NewWindow3( _
- ByRef ppDisp As Object, _
- ByRef Cancel As Boolean, _
- ByVal dwFlags As Long, _
- ByVal bstrUrlContext As String, _
- ByVal bstrParentUrl As String
- Linterface INewWindowManager EvaluateNewWindow
34Références
- MSDN librairie
- http//msdn.microsoft.com/library/
- Références Windows XP SP2
- http//msdn.microsoft.com/security/productinfo/XPS
P2/default.aspx - http//msdn.microsoft.com/security/productinfo/XPS
P2/introduction.aspx - XP SP2 RC1 Fact Sheet
- http//www.microsoft.com/presspass/newsroom/winxp/
windowsxpspfs.asp
35Application Compatibility Toolkit
- Les Objectifs
- Faciliter la migration vers Windows XP/SP2 en
s'assurant de la compatibilité de vos
applications avec Windows XP / XP SP2 - Fournir un système unifié pour tester et
référencer toutes les problématiques de migration - Outils de test, datténuation, et de déploiement
36Application Compatibility Toolkit
- Modification du code de Windows XP
- 9x est moins  consistant dans la gestion de la
mémoire (heap) - Changement  Subtile des api win32,
SetForgroudWindows - Les paramètres de la registry ont été modifiée
- Changement des dossiers
- Documents Settings
- My Documents
- Internet Explorer
- Verrouillage de la zone poste de travail,
Affichage de nouveaux dialogues lors du
téléchargement de fichiers. - DCOM RPC
- Nouvelles permission lors du lancement ou
lactivation dobjets. laccès à distance pour un
utilisateur anonyme nest plus permis - Windows Firewall
- Les ports sont fermés par défaut
- Protection dexécution (NX)
- Access Violations pour une application qui ne
gère pas NX corectement
37Phase dévaluation
- Agent pour
- Effectuer un inventaire des applications
- Évaluer les problématiques de migration
Collector
Collector
Collector
Collector
Collector
Collector
Collector
Collector
Collector
DCOM
DCOM
DCOM
Support
Vente
- Il peut être configuré pour
- remonter des informations
- comme
- Nom de département.
- Nom de lutilisateur, nom de la machine, ID
Windows Firewall
Windows Firewall
Windows Firewall
HR
Serveurs
Environnent de production
IE
IE
- Distribué via
- SMS
- Log on scripts
- Loutils  IE testÂ
- Détecte les problème decompatibilité avec
Windows XP SP2
Client
Environnement de test
38Phase dévaluation
Network Share
Network Share
Collector
Collector
Collector
Network Share
Report Viewer (Analyzer)
Collector
DCOM
Collector
Collector
DCOM
Windows Firewall
Windows Firewall
Collector
Support
Vente
SQL Server
DCOM
Collector
Windows Firewall
Client
Serveurs
HR
Environnent de production
Web Service
Windows Firewall
Collector
MSFT Online DB
Serveurs
39Phase dévaluation
- Agent pour effectuer un inventaire des
applications - 3 Outils pour tester la compatibilité des
application avec Windows XP SP2 - Vérifie si une application emploie les
fonctionnalités de DCOM qui sont bloquées par le
SP2 - Vérifié si lapplication est compatible avec le
firewall - Détecte les applications Web qui ne serait pas
compatible avec les nouvelles options de sécurité
de Windows XP SP2 - Un outils pour analyser et gérer les problème de
compatibilité
40Phase datténuation
- Loutil Solution Builder (fixpack.exe)
- Création dun patch unitaire
- A Partir de la liste des applications ayant des
problème de compatibilité avec DCOM et le
firewall - A partir des différents Fix Win32 à déployer
- Loutils Compatibility Administrator
- Création dun patch afin dexécuter lapplication
en mode Windows 95, Windows 2000 - Loutils Internet Explorer Compatibility
- Création dun fichier .reg correspondant au
options de sécurité dinternet Explorer à modifier
41Déploiement
- Peut être réalisé via
- SMS
- Logon script
42(No Transcript)
43Références
- ACT 4.0
- http//www.microsoft.com/windows/appcompatibility/
act4.mspx - Newsgroup
- microsoft.public.windows.app_compatibility
44Update Impact Analyzer
- Basé sur un moteur dintersection développé par
Microsoft Research - Utilise les informations issues
- de la base de registre
- des fichiers
- des manifestes de mises à jours
- des traces dapplication métier
- Génère un rapport daide à la décision concernant
les tests prioritaires
45Questions?
46(No Transcript)
47RestrictRemoteClients
- RPC_RESTRICT_REMOTE_CLIENT_NONE (0)
- Configuration pré Windows XP SP2
- RPC_RESTRICT_REMOTE_CLIENT_DEFAULT (1)
- Pas de connections anonymes (sauf si
RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH est utilisé
lors de lenregistrement - RPC_RESTRICT_REMOTE_CLIENT_HIGH (2)
- Idem 1 mais pas dexceptions admises
- Ne sapplique pas aux connections RPC via Tubes
nommés (ncacn_np)
48EnableAuthEpResolution
- Par défaut, RPC expose une interface permettant
de se connecter aux interfaces enregistrées - EnableAuthEpResolution
- 1 Pas de connections anonymes
- 0 Connections anonymes autorisées
49DCOMPERM
- Registre HKLM\SOFTWARE\Microsoft\Ole
- DefaultLaunchRestriction
- DefaultAccessRestriction
- MachineLaunchRestriction
- MachineAccessRestriction
- Masque de droits
- COM_RIGHTS_EXECUTE 1
- COM_RIGHTS_EXECUTE_LOCAL 2
- COM_RIGHTS_EXECUTE_REMOTE 4
- COM_RIGHTS_ACTIVATE_LOCAL 8
- COM_RIGHTS_ACTIVATE_REMOTE 16