Windows XP SP2 Point de vue du développeur Gilles Guimard ([email protected])...

49
Windows XP SP2 Windows XP SP2 Point de vue du Point de vue du développeur développeur Gilles Guimard ( Gilles Guimard ( [email protected] [email protected] ) ) Jean Gautier ( Jean Gautier ( [email protected] [email protected] ) )

Transcript of Windows XP SP2 Point de vue du développeur Gilles Guimard ([email protected])...

Page 1: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Windows XP SP2 Windows XP SP2 Windows XP SP2 Windows XP SP2

Point de vue du Point de vue du développeurdéveloppeur

Gilles Guimard (Gilles Guimard ([email protected]@microsoft.com))Jean Gautier (Jean Gautier ([email protected]@microsoft.com ) )

Page 2: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

AgendaAgenda

Protection RéseauProtection RéseauLe Pare-feu de Windows XPLe Pare-feu de Windows XP

DCOMDCOM

Connections RPCConnections RPC

Protection NXProtection NX

Outils de développementOutils de développement

Sécurité du courrier électroniqueSécurité du courrier électronique

Sécurité Internet ExplorerSécurité Internet Explorer

Application Compatibility Toolkit (ACT) 4.0Application Compatibility Toolkit (ACT) 4.0

Update Impact AnalyzerUpdate Impact Analyzer

Page 3: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Pourquoi Pourquoi cece SP2? SP2?

Plusieurs attaques virales du passé Plusieurs attaques virales du passé auraient été atténuées si un pare-feu auraient été atténuées si un pare-feu avait été actifavait été actif

La surface d’attaque de Windows XP La surface d’attaque de Windows XP pouvait être largement réduitepouvait être largement réduite

Simplifier l’administration d’éléments Simplifier l’administration d’éléments clés de la sécuritéclés de la sécurité

Page 4: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Nouveautés du Pare-feuNouveautés du Pare-feu

Activé par défautActivé par défaut

Sécurité dès le démarrageSécurité dès le démarrageIPV4 et IPV6 sont supportésIPV4 et IPV6 sont supportésMulti profils: Domaine/StandardMulti profils: Domaine/Standard

Configurable viaConfigurable viaNetshNetshStratégies de groupeStratégies de groupeModèle objet NetFWModèle objet NetFWFichier INF lors du déploiementFichier INF lors du déploiement

Page 5: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Parefeu WindowsParefeu Windows

Un aperçu rapideUn aperçu rapide

Page 6: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Que se passe t’il lorsqu’une Que se passe t’il lorsqu’une application tente d’ouvrir un port application tente d’ouvrir un port réseau?réseau?

Page 7: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Configuration du Pare-feu avec netshConfiguration du Pare-feu avec netsh

Quelques commandes simples:Quelques commandes simples:firewall show configfirewall show configfirewall add portopening TCP 80 MyWebPortfirewall add portopening TCP 80 MyWebPortfirewall delete portopening TCP 80firewall delete portopening TCP 80

firewall firewall add allowedprogram program=c:\add allowedprogram program=c:\windows\system32\notepad.exe windows\system32\notepad.exe name=Tname=TheNotepad mode=DISABLEheNotepad mode=DISABLE

firewall firewall set service type=REMOTEADMIN set service type=REMOTEADMIN mode=DISABLEmode=DISABLE

Page 8: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Configuration du Pare-feuConfiguration du Pare-feuModèle Objet NetFw Modèle Objet NetFw

using NetFwTypeLib;using NetFwTypeLib;

namespace FirewallConfignamespace FirewallConfig{{

class class ProgramProgram{{

static void Main(string[] args)static void Main(string[] args){{

INetFwMgrINetFwMgr mgr = ( mgr = (INetFwMgrINetFwMgr)System.)System.ActivatorActivator.CreateInstance(.CreateInstance(System.System.TypeType.GetTypeFromProgID("HNetCfg.FwMgr"));.GetTypeFromProgID("HNetCfg.FwMgr"));

INetFwProfileINetFwProfile profile = mgr.LocalPolicy.CurrentProfile; profile = mgr.LocalPolicy.CurrentProfile;

INetFwAuthorizedApplicationINetFwAuthorizedApplication app = ( app = (INetFwAuthorizedApplicationINetFwAuthorizedApplication))System.System.ActivatorActivator.CreateInstance(.CreateInstance(

System.System.TypeType.GetTypeFromProgID("HNetCfg.FwAuthorizedApplication"));.GetTypeFromProgID("HNetCfg.FwAuthorizedApplication"));

app.ProcessImageFileName = @"c:\windows\system32\app.ProcessImageFileName = @"c:\windows\system32\notepad.exe";notepad.exe";

app.Name = "LeNotepad";app.Name = "LeNotepad";app.Enabled = false;app.Enabled = false;

profile.AuthorizedApplications.Add(app);profile.AuthorizedApplications.Add(app);}}

}}}}

Page 9: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Configuration Pare-feu - Configuration Pare-feu - RecommandationsRecommandations

Réservée à l’administrateurRéservée à l’administrateur

Demander l’aval de l’utilisateur avant Demander l’aval de l’utilisateur avant de modifier la configuration du pare-feu de modifier la configuration du pare-feu programmatiquementprogrammatiquement

Adapter la configuration au contexte Adapter la configuration au contexte (Internet, Réseau d’entreprise) (Internet, Réseau d’entreprise)

Page 10: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

DCOM: Ce qui ne change pasDCOM: Ce qui ne change pas

Tous les serveurs COM InProcess Tous les serveurs COM InProcess fonctionneront de la même façon sur Windows fonctionneront de la même façon sur Windows XP SP2XP SP2

Par défaut, tous les serveurs DCOM locaux Par défaut, tous les serveurs DCOM locaux fonctionneront de la même façon sur Windows fonctionneront de la même façon sur Windows XP SP2XP SP2

Par défaut, tous les clients DCOM Par défaut, tous les clients DCOM fonctionneront de la même façon fonctionneront de la même façon

Les événements ou call backs transforment un Les événements ou call backs transforment un client en serveur DCOMclient en serveur DCOM

Page 11: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

DCOM: Ce qui changeDCOM: Ce qui change

Tous les appels DCOM inter machines doivent Tous les appels DCOM inter machines doivent être authentifiés être authentifiés

Le lancement et l’activation à distance sont Le lancement et l’activation à distance sont restreints par défaut aux seuls restreints par défaut aux seuls administrateurs locauxadministrateurs locaux

L’administrateur peut imposer des limites de L’administrateur peut imposer des limites de sécurité globales au poste.sécurité globales au poste.

Limitant ainsi les modifications au niveau de Limitant ainsi les modifications au niveau de chaque application (CoInitializeSecurity)chaque application (CoInitializeSecurity)Modifiable via DCOMCNFG.EXEModifiable via DCOMCNFG.EXE

Page 12: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Résumé Sécurité DCOMRésumé Sécurité DCOM

Distinction entre:Distinction entre:Accès distantAccès distant

Accès localAccès local

Distinction entre:Distinction entre:Lancement (création du processus serveur)Lancement (création du processus serveur)

Activation (création d’une instance)Activation (création d’une instance)

Le tout sous le contrôle total de Le tout sous le contrôle total de l’administrateur et configurable via l’administrateur et configurable via DCOMCNFGDCOMCNFG

Page 13: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Amélioration de la sécurité RPCAmélioration de la sécurité RPC

Ouverture automatique des ports RPC Ouverture automatique des ports RPC pour les services utilisant les comptes pour les services utilisant les comptes Local System, Network Service ou Local Local System, Network Service ou Local ServiceService

Sinon, utiliser les Applications AutoriséesSinon, utiliser les Applications Autorisées

Par défaut, toutes les connexions Par défaut, toutes les connexions entrantes doivent être authentifiéesentrantes doivent être authentifiées

Page 14: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Basic & Redirecteur WebDAVBasic & Redirecteur WebDAV

WebDAV:WebDAV:N’autorise plus l’authentification BasicN’autorise plus l’authentification Basic

Car il ne permet pas d’utiliser un canal sécurisé Car il ne permet pas d’utiliser un canal sécurisé (SSL)(SSL)

Par défaut, Windows XP désactive Par défaut, Windows XP désactive l’authentification Basic dans le redirecteur l’authentification Basic dans le redirecteur WebDAVWebDAV

Controlé par:Controlé par:

HKLM\SYSTEM\CurrentControlSet\Services\HKLM\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\UseBasicAuth WebClient\Parameters\UseBasicAuth (REG_DWORD)(REG_DWORD)

Page 15: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Basic et WinInetBasic et WinInet

L’authentification Basic sur un canal L’authentification Basic sur un canal non sécurisé est désactivé par défaut:non sécurisé est désactivé par défaut:

Utilisation de SSL ( i.e. HTTPUtilisation de SSL ( i.e. HTTPS)S)

Controlé par:Controlé par:HKCU\SOFTWARE\Microsoft\Windows\HKCU\SOFTWARE\Microsoft\Windows\

CurrentVersion\Internet Settings\CurrentVersion\Internet Settings\DisableBasicOverClearChannelDisableBasicOverClearChannel (REG_DWORD)(REG_DWORD)

Page 16: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Protection d’exécution (NX)Protection d’exécution (NX)

Requière une plateforme matérielle Requière une plateforme matérielle supportant le No Executionsupportant le No Execution

Le K8 d’AMD et l’Itanium d’Intel supportent NXLe K8 d’AMD et l’Itanium d’Intel supportent NX

Peut être émulé sur les plateformes non NXPeut être émulé sur les plateformes non NX

Permet de rendre beaucoup plus difficile Permet de rendre beaucoup plus difficile l’exploitation de Buffer Overrunsl’exploitation de Buffer Overruns

Basé sur la protection d’accès en exécution Basé sur la protection d’accès en exécution de la mémoirede la mémoire

Page 17: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Principe de fonctionnement NXPrincipe de fonctionnement NX

Une exception Une exception STATUS_ACCESS_VIOLATION est levée STATUS_ACCESS_VIOLATION est levée lors d’une tentative d’exécution de lors d’une tentative d’exécution de donnéesdonnées

LPVOID lpvBase = VirtualAlloc( NULL,LPVOID lpvBase = VirtualAlloc( NULL, dwSize, dwSize, // size of allocation // size of allocation MEM_RESERVE, MEM_RESERVE, // allocate reserved pages // allocate reserved pages PAGE_READWRITE); PAGE_READWRITE); // Read, Write// Read, Write

DésactivableDésactivable

Page 18: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Internet ExplorerInternet Explorer

Fenêtre de gestion des modules Fenêtre de gestion des modules complémentairescomplémentaires

Activation/Désactivation/mise à jourActivation/Désactivation/mise à jour

Module de type:Module de type:ActiveXActiveX

Browser Helper ObjectBrowser Helper Object

Extension de barre d’outilsExtension de barre d’outils

Détection des problèmesDétection des problèmeslié à un module complémentairelié à un module complémentaire

Affichage du module qui à causé l’erreurAffichage du module qui à causé l’erreur

Page 19: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.
Page 20: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Service de pièce attachéeService de pièce attachée

Ce service protège le système contre Ce service protège le système contre les pièces attachées malveillantesles pièces attachées malveillantes

Approche unifiée qui est utilisée par Approche unifiée qui est utilisée par Outlook Express, Outlook 2003 et MSN Outlook Express, Outlook 2003 et MSN MessengerMessenger

Si vous développez une application qui Si vous développez une application qui exécute ou sauve des pièces attachées, exécute ou sauve des pièces attachées, vous devez utiliser ce servicevous devez utiliser ce service

Page 21: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Service de pièce attachéeService de pièce attachée

Donne pour chaque pièce attachée un Donne pour chaque pièce attachée un facteur de risquefacteur de risque

Basé sur l’extension de fichier, le content-Basé sur l’extension de fichier, le content-type, etc.…type, etc.…

Ce facteur de risque est mappé sur les Ce facteur de risque est mappé sur les zone de Internet Explorerzone de Internet Explorer

L’interface COM L’interface COM IAttachmentExecuteIAttachmentExecute est le point d’entrée pour ce serviceest le point d’entrée pour ce service

Remplace la fonction Remplace la fonction AssocIsDangerous AssocIsDangerous

Page 22: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.
Page 23: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Internet ExplorerInternet Explorer

Verrouillage de la zone poste de travailVerrouillage de la zone poste de travailTous les fichiers locaux ouverts dans Internet Tous les fichiers locaux ouverts dans Internet Explorer disposent d’une sécurité renforcéeExplorer disposent d’une sécurité renforcée

Restreint l’utilisation de fichier HTML sur la zone « poste Restreint l’utilisation de fichier HTML sur la zone « poste de travail »de travail »

Aide à prévenir les attaques lorsqu’elles utilisent du code Aide à prévenir les attaques lorsqu’elles utilisent du code HTML comme vecteur d’attaqueHTML comme vecteur d’attaque

Les paramètres par défautLes paramètres par défautURLACTION_ACTIVEX_RUN URLACTION_ACTIVEX_RUN désactivé désactivéURLACTION_SCRIPT_RUN URLACTION_SCRIPT_RUN désactivé désactivéURLACTION_CROSS_DOMAIN_DATA URLACTION_CROSS_DOMAIN_DATA prompt promptURLACTION_BINARY_REHAVIORS_BLOCK URLACTION_BINARY_REHAVIORS_BLOCK désactivé désactivéURLACTION_JAVA_PERMISSIONS URLACTION_JAVA_PERMISSIONS désactivé désactivé

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0Flags = 1

Page 24: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

ImplicationsImplications

Toutes les applications utilisant des fichiers Toutes les applications utilisant des fichiers HTML/Script/ActiveX,applets en local sont impactéesHTML/Script/ActiveX,applets en local sont impactéesSolutionsSolutions

Si vos pages locales utilisent du script ou des ActiveX, vous Si vos pages locales utilisent du script ou des ActiveX, vous pouvez insérer dans la page une balise de typepouvez insérer dans la page une balise de type<!– save from url=(0022) <!– save from url=(0022) http://www.url.comhttp://www.url.com --> -->Enregistrer les fichiers sous forme d’archive web (mht)Enregistrer les fichiers sous forme d’archive web (mht)Créer une application séparée et utiliser le contrôle Internet Créer une application séparée et utiliser le contrôle Internet ExplorerExplorer

NotesNotesN’impacte pas les applications utilisant le contrôle Internet N’impacte pas les applications utilisant le contrôle Internet ExplorerExplorerN’impacte pas les applications les zones « Intranet » ou N’impacte pas les applications les zones « Intranet » ou « Internet »« Internet »Les fichiers HTA ne sont pas impactésLes fichiers HTA ne sont pas impactésLe protocole res:// utilise le verrouillage de la zone « Internet »Le protocole res:// utilise le verrouillage de la zone « Internet »

Page 25: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.
Page 26: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Internet ExplorerInternet Explorer

Le bloqueur d’élément contextuelLe bloqueur d’élément contextuelBloque les fenêtres de type pop-up non désiréesBloque les fenêtres de type pop-up non désirées

Paramétrable par zoneParamétrable par zone

FonctionnalitésFonctionnalitésActivé par défautActivé par défaut

Toutes les fenêtres de type pop-up sont bloquées Toutes les fenêtres de type pop-up sont bloquées dans la zone Internetdans la zone Internet

Les sites de confiance (https) et les sites de la Les sites de confiance (https) et les sites de la zone « Intranet local » ne sont pas bloqués par zone « Intranet local » ne sont pas bloqués par défautdéfaut

N’impacte pas les applications utilisant le contrôle N’impacte pas les applications utilisant le contrôle Internet ExplorerInternet Explorer

Page 27: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Internet ExplorerInternet Explorer

Interface utilisateurInterface utilisateurOutils/Options/ConfidentialitéOutils/Options/Confidentialité

La fenêtre est bloquée

La fenêtre est affichée car elle estdans la liste des sites à autoriser

La fonctionnalité est désactivée

Page 28: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Internet ExplorerInternet Explorer

Options avancéesOptions avancéesSites à autoriser – permet les pop-up pour ces Sites à autoriser – permet les pop-up pour ces sitessites

Bloque tous les pop-up automatiques, créés via Bloque tous les pop-up automatiques, créés via des évènements, window_onload(), timers …des évènements, window_onload(), timers …

Les liens ne sont pas bloqués par défautLes liens ne sont pas bloqués par défaut

Lorsque les pop-up sont désactivés pour les liens, Lorsque les pop-up sont désactivés pour les liens, la touche ATL+click sur un lien désactive la la touche ATL+click sur un lien désactive la fonctionnalitéfonctionnalité

On peut activer cette fonctionnalité parOn peut activer cette fonctionnalité parzones « Intranet local » et « Site de confiance »zones « Intranet local » et « Site de confiance »

Page 29: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Internet ExplorerInternet Explorer

Restriction sur l’affichage des fenêtresRestriction sur l’affichage des fenêtresPlus possible de désactiver la barre d’état Plus possible de désactiver la barre d’état via du scriptvia du script

La méthode fullscreen est remplacée par La méthode fullscreen est remplacée par un affichage en maximiséun affichage en maximisé

L’affichage de fenêtre via la fonctionL’affichage de fenêtre via la fonctionwindowwindow..createPopupcreatePopup

Ne peut apparaître que dans la zone parenteNe peut apparaître que dans la zone parente

Impossible de couvrir la barre de titre, barre Impossible de couvrir la barre de titre, barre d’étatd’état

Page 30: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

ImplicationsImplications

Affecte l’affichage des fenêtres pour les Affecte l’affichage des fenêtres pour les sites Internetsites Internet

Toutes applications Internet utilisant Toutes applications Internet utilisant window.open(), window.open(), window.showModalDialog/showModelessDialog(window.showModalDialog/showModelessDialog(), window.navigateAndFind() et showHelp() dans ), window.navigateAndFind() et showHelp() dans des évènements au chargement/déchargement des évènements au chargement/déchargement de la pagede la page

N’impacte pasN’impacte pasles applications utilisant le contrôle Internet les applications utilisant le contrôle Internet ExplorerExplorerLa nouvelle interface La nouvelle interface INewWindowManagerINewWindowManager permet d’implémenter sa propre gestionpermet d’implémenter sa propre gestiondes pop-updes pop-up

Page 31: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

ImplicationsImplications

Try/catch et gestion d’erreurTry/catch et gestion d’erreur<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>

<HEAD><title>Popup Tester</title></HEAD>

<body><form id="Form1" method="post" runat="server">

<P><INPUT type="button" value="Open" onclick="openWin()" ID="Button1" NAME="Button1"></P><P><INPUT type="button" value="ShowHelp" onclick="showPopup()" ID="Button2" NAME="Button2"></P>

</form></body><script language="javascript">function openWin(){

try{ window.open("http://www.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","");}</script>

</HTML>

Page 32: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.
Page 33: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Internet ExplorerInternet Explorer

Le modèle objetLe modèle objetNouvel événement au niveau de l’objet Nouvel événement au niveau de l’objet WebBrowser : NewWindow3WebBrowser : NewWindow3Private Sub object_NewWindow3( _Private Sub object_NewWindow3( _

ByRef ppDisp As Object, _ByRef ppDisp As Object, _

ByRef Cancel As Boolean, _ByRef Cancel As Boolean, _

ByVal dwFlags As Long, _ByVal dwFlags As Long, _

ByVal bstrUrlContext As String, _ByVal bstrUrlContext As String, _

ByVal bstrParentUrl As StringByVal bstrParentUrl As String

L’interface INewWindowManagerL’interface INewWindowManagerEvaluateNewWindowEvaluateNewWindow

Page 34: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

RéférencesRéférences

MSDN librairieMSDN librairiehttp://msdn.microsoft.com/library/http://msdn.microsoft.com/library/

Références Windows XP SP2Références Windows XP SP2http://msdn.microsoft.com/security/producthttp://msdn.microsoft.com/security/productinfo/XPSP2/default.aspxinfo/XPSP2/default.aspxhttp://msdn.microsoft.com/security/producthttp://msdn.microsoft.com/security/productinfo/XPSP2/introduction.aspxinfo/XPSP2/introduction.aspx

XP SP2 RC1 Fact SheetXP SP2 RC1 Fact Sheethttp://www.microsoft.com/presspass/newsrhttp://www.microsoft.com/presspass/newsroom/winxp/windowsxpspfs.aspoom/winxp/windowsxpspfs.asp

Page 35: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Application Compatibility ToolkitApplication Compatibility Toolkit

Les ObjectifsLes ObjectifsFaciliter la migration vers Windows XP/SP2 Faciliter la migration vers Windows XP/SP2 en s'assurant de la compatibilité de vos en s'assurant de la compatibilité de vos applications avec Windows XP / XP SP2applications avec Windows XP / XP SP2

Fournir un système unifié pour tester et Fournir un système unifié pour tester et référencer toutes les problématiques de référencer toutes les problématiques de migrationmigration

Outils de test, d’atténuation, et de déploiement Outils de test, d’atténuation, et de déploiement

Page 36: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Application Compatibility Application Compatibility ToolkitToolkit

Modification du code de Windows XPModification du code de Windows XP9x est moins « consistant » dans la gestion de la mémoire (heap)9x est moins « consistant » dans la gestion de la mémoire (heap)Changement « Subtile » des api win32, SetForgroudWindows…Changement « Subtile » des api win32, SetForgroudWindows…Les paramètres de la registry ont été modifiéeLes paramètres de la registry ont été modifiée

Changement des dossiersChangement des dossiersDocuments & SettingsDocuments & SettingsMy DocumentsMy Documents

Internet ExplorerInternet ExplorerVerrouillage de la zone poste de travail, Affichage de Verrouillage de la zone poste de travail, Affichage de nouveaux dialogues lors du téléchargement de fichiers.nouveaux dialogues lors du téléchargement de fichiers.

DCOM & RPCDCOM & RPCNouvelles permission lors du lancement ou l’activation Nouvelles permission lors du lancement ou l’activation d’objets. l’accès à distance pour un utilisateur anonyme n’est d’objets. l’accès à distance pour un utilisateur anonyme n’est plus permisplus permis

Windows FirewallWindows FirewallLes ports sont fermés par défautLes ports sont fermés par défaut

Protection d’exécution (NX)Protection d’exécution (NX)Access Violations pour une application qui ne gère pas NX Access Violations pour une application qui ne gère pas NX corectementcorectement

Page 37: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Phase d’évaluationPhase d’évaluation

Vente Support

ServeursHR

Environnement de test

Environnent de production

Collector

DCOM

WindowsFirewall

IE

CollectorCollectorCollectorCollectorCollectorCollectorCollectorCollector

DCOMDCOM

WindowsFirewall

WindowsFirewall

IE

Agent pour :•Effectuer un inventaire des applications•Évaluer les problématiques de migration

L’outils « IE test »•Détecte les problème decompatibilité avec Windows XP SP2

Client

Distribué via• SMS• Log on scripts

Il peut être configuré pourremonter des informationscomme :•Nom de département.•Nom de l’utilisateur, nom de la machine, ID…

Page 38: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Phase d’évaluationPhase d’évaluation

NetworkShare

NetworkShare

Environnent de production

VenteSupport

Serveurs

HR

Collector

DCOM

WindowsFirewall

Collector

Collector

Collector

Collector

Collector

Collector

Collector

Collector

DCOM

DCOM

WindowsFirewall

WindowsFirewall

WindowsFirewall

Serveurs

MSFTOnline DB

SQLServer

NetworkShare

NetworkShare

Web Service

NetworkShare

NetworkShareReport

Viewer(Analyzer)

Client

Page 39: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Phase d’évaluationPhase d’évaluation

Agent pour effectuer un inventaire des applications3 Outils pour tester la compatibilité des application avec Windows XP SP2

Vérifie si une application emploie les Vérifie si une application emploie les fonctionnalités de DCOM qui sont bloquées par le fonctionnalités de DCOM qui sont bloquées par le SP2SP2Vérifié si l’application est compatible avec le Vérifié si l’application est compatible avec le firewallfirewallDétecte les applications Web qui ne serait pas Détecte les applications Web qui ne serait pas compatible avec les nouvelles options de sécurité compatible avec les nouvelles options de sécurité de Windows XP SP2de Windows XP SP2

Un outils pour analyser et gérer les problème Un outils pour analyser et gérer les problème de compatibilitéde compatibilité

Page 40: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Phase d’atténuationPhase d’atténuation

L’outil Solution Builder (fixpack.exe)L’outil Solution Builder (fixpack.exe)Création d’un patch unitaireCréation d’un patch unitaire

A Partir de la liste des applications ayant des problème de A Partir de la liste des applications ayant des problème de compatibilité avec DCOM et le firewallcompatibilité avec DCOM et le firewall

A partir des différents Fix Win32 à déployerA partir des différents Fix Win32 à déployer

L’outils Compatibility AdministratorL’outils Compatibility AdministratorCréation d’un patch afin d’exécuter l’application Création d’un patch afin d’exécuter l’application en mode Windows 95, Windows 2000…en mode Windows 95, Windows 2000…

L’outils Internet Explorer CompatibilityL’outils Internet Explorer CompatibilityCréation d’un fichier .reg correspondant au Création d’un fichier .reg correspondant au options de sécurité d’internet Explorer à modifieroptions de sécurité d’internet Explorer à modifier

Page 41: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

DéploiementDéploiement

Peut être réalisé viaPeut être réalisé viaSMSSMS

Logon scriptLogon script

Page 42: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.
Page 43: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

RéférencesRéférences

ACT 4.0ACT 4.0

http://www.microsoft.com/windows/appcomhttp://www.microsoft.com/windows/appcompatibility/act4.mspxpatibility/act4.mspx

NewsgroupNewsgroup

microsoft.public.windows.app_compatibilitymicrosoft.public.windows.app_compatibility

Page 44: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Update Impact AnalyzerUpdate Impact Analyzer

Basé sur un moteur d’intersection développé Basé sur un moteur d’intersection développé par Microsoft Researchpar Microsoft Research

Utilise les informations issues:Utilise les informations issues:de la base de registrede la base de registredes fichiersdes fichiersdes manifestes de mises à joursdes manifestes de mises à joursdes traces d’application métierdes traces d’application métier

Génère un rapport d’aide à la décision Génère un rapport d’aide à la décision concernant les tests prioritairesconcernant les tests prioritaires

Page 45: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

Questions?Questions?

Page 46: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.
Page 47: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

RestrictRemoteClients RestrictRemoteClients

RPC_RESTRICT_REMOTE_CLIENT_NONE (0)RPC_RESTRICT_REMOTE_CLIENT_NONE (0) Configuration pré Windows XP SP2Configuration pré Windows XP SP2

RPC_RESTRICT_REMOTE_CLIENT_DEFAULT RPC_RESTRICT_REMOTE_CLIENT_DEFAULT (1)(1)

Pas de connections anonymes (sauf si Pas de connections anonymes (sauf si RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTHRPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH est est utilisé lors de l’enregistrementutilisé lors de l’enregistrement

RPC_RESTRICT_REMOTE_CLIENT_HIGH (2)RPC_RESTRICT_REMOTE_CLIENT_HIGH (2): : Idem 1 mais pas d’exceptions admisesIdem 1 mais pas d’exceptions admises

Ne s’applique pas aux connections RPC via Ne s’applique pas aux connections RPC via Tubes nommés (Tubes nommés (ncacn_np)ncacn_np)

Page 48: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

EnableAuthEpResolutionEnableAuthEpResolution

Par défaut, RPC expose une interface Par défaut, RPC expose une interface permettant de se connecter aux permettant de se connecter aux interfaces enregistréesinterfaces enregistrées

EnableAuthEpResolution: EnableAuthEpResolution: 1: Pas de connections anonymes1: Pas de connections anonymes

0: Connections anonymes autorisées0: Connections anonymes autorisées

Page 49: Windows XP SP2 Point de vue du développeur Gilles Guimard (gillesg@microsoft.com) gillesg@microsoft.com Jean Gautier (jeanga@microsoft.com ) jeanga@microsoft.com.

DCOMPERMDCOMPERM

Registre HKLM\SOFTWARE\Microsoft\OleRegistre HKLM\SOFTWARE\Microsoft\OleDefaultLaunchRestrictionDefaultLaunchRestrictionDefaultAccessRestrictionDefaultAccessRestrictionMachineLaunchRestrictionMachineLaunchRestrictionMachineAccessRestrictionMachineAccessRestriction

Masque de droitsMasque de droitsCOM_RIGHTS_EXECUTE 1COM_RIGHTS_EXECUTE 1COM_RIGHTS_EXECUTE_LOCAL 2COM_RIGHTS_EXECUTE_LOCAL 2COM_RIGHTS_EXECUTE_REMOTE 4COM_RIGHTS_EXECUTE_REMOTE 4COM_RIGHTS_ACTIVATE_LOCAL 8COM_RIGHTS_ACTIVATE_LOCAL 8COM_RIGHTS_ACTIVATE_REMOTE 16COM_RIGHTS_ACTIVATE_REMOTE 16