Cliquez pour évaluer et commenter
TechNet
Bibliothèque TechNet
Windows
Windows Server
Windows Server 2003
 Application de la gestion MIME dans...
Application de la gestion MIME dans Internet Explorer
noteRemarques
Le composant Configuration de sécurité renforcée d'Internet Explorer de Microsoft Windows Server 2003 (également connu sous le nom de sécurisation Microsoft Internet Explorer) réduit la vulnérabilité d'un serveur aux attaques provenant de contenus Web, en appliquant des paramètres de sécurité Internet Explorer plus restrictifs qui désactivent les scripts, les composants ActiveX et les téléchargements de fichiers pour les ressources dans la zone de sécurité Internet. De ce fait, la plupart des améliorations de sécurité incluses dans la dernière version d'Internet Explorer ne seront pas aussi perceptibles dans Windows Server 2003 Service Pack 1. Ainsi, les nouvelles fonctionnalités Barre d'informations Internet Explorer et Bloqueur de fenêtres publicitaires intempestives ne seront pas utilisées sauf si le site se trouve dans une zone dont les paramètres de sécurité autorisent les scripts. Si vous n'utilisez pas la configuration de la sécurité améliorée sur votre serveur, ces fonctionnalités vont se comporter comme elles le font dans Windows XP Service Pack 2.

Quelle est la fonction de l'application de la gestion MIME ?

Internet Explorer utilise des informations de type MIME (Multipurpose Internet Mail Extensions) pour décider de la façon de traiter les fichiers envoyés par un serveur Web. Par exemple, lorsque des fichiers graphiques .jpg sont reçus à la suite d'une requête HTTP (Hypertext Transfer Protocol), ils sont généralement affichés dans une fenêtre Internet Explorer. Si Internet Explorer reçoit un fichier exécutable, il invite généralement l'utilisateur à choisir la façon de le traiter.

Internet Explorer dans Windows Server 2003 avec le Service Pack 1 va suivre des règles plus strictes que Internet Explorer dans Windows Server 2003. Ces règles sont conçues pour protéger les utilisateurs du téléchargement ou de l'exécution accidentelle d'un fichier dangereux, à cause d'informations MIME ou d'extension de nom de fichier erronées.

Qui est concerné par cette fonctionnalité ?

Il est important pour les développeurs Web de connaître ces restrictions afin de prévoir les changements ou solutions possibles en cas d'impact sur leur site Internet.

Les développeurs d'applications doivent étudier cette fonctionnalité afin d'envisager la modification de leurs applications. Cette fonctionnalité n'est pas activée par défaut pour les processus non-Internet Explorer et les développeurs devront inscrire leurs applications pour bénéficier des modifications.

Les utilisateurs finals seront affectés par les sites ou les applications non compatibles avec ces règles plus strictes.

Quelles nouvelles fonctionnalités ont été ajoutées à cette fonction dans Windows Server 2003 Service Pack 1 ?

Gestion MIME et application de la cohérence des types de fichiers

Description détaillée

Lorsque des fichiers sont envoyés au client, Internet Explorer utilise les informations suivantes pour décider de la façon de les traiter :

  • Extension du nom de fichier, identificateur de programme correspondant et CLSID du gestionnaire inscrit de cette extension.
  • Type de contenu extrait de l'en-tête HTTP (type MIME), identificateur de programme correspondant et CLSID du gestionnaire inscrit de ce contenu ou type MIME.
  • Disposition du contenu extraite de l'en-tête HTTP.
  • Résultat de la détection MIME.

Internet Explorer est plus restrictif que dans Windows Server 2003 quant à l'exécution d'un fichier téléchargé potentiellement dangereux.

Internet Explorer applique le principe de cohérence entre le mode de gestion d'un fichier dans le navigateur et son mode de gestion dans le shell Windows. Lorsque le fichier est téléchargé dans le cache, Internet Explorer compare le type MIME de ce fichier avec son extension. Si ces informations ne correspondent pas, il tente de renommer le fichier qui se trouve dans le cache.

Avant qu'un fichier ne soit chargé dans son gestionnaire MIME ou exécuté par son gestionnaire d'extension, Internet Explorer compare les CLSID de ces deux gestionnaires. S'il existe toujours une incohérence, Internet Explorer impose une invite obligatoire demandant à l'utilisateur de confirmer qu'il souhaite charger le fichier dans le gestionnaire MIME. Si celui-ci rejette le fichier incohérent, Internet Explorer affiche une boîte de dialogue d'erreur de téléchargement et n'exécute pas automatiquement le fichier dans le gestionnaire d'extension du shell Windows, mais propose de sauvegarder le fichier.

Il existe un changement associé mais distinct destiné à empêcher l'exécution de fichiers potentiellement endommagés dans leurs gestionnaires d'extension de l'environnement. Internet Explorer affiche la boîte de dialogue d'erreur de téléchargement pour tout fichier rejeté par son gestionnaire MIME avec le code d'erreur suivant : E_Cannot_Load_Data. Il n'exécute pas ce fichier dans son gestionnaire d'extension d'environnement, quel que soit le type MIME ou l'extension du nom de fichier.

Ces modifications n'affectent pas les cas où un en-tête HTTP "Content-disposition=attachment" est utilisé pour le fichier. Dans ce cas en effet, le nom ou l'extension de fichier proposé par le serveur est considéré comme final. Le fichier peut alors être exécuté, quelle que soit l'incohérence entre le type MIME et l'extension, si l'utilisateur choisit d'accepter le téléchargement du fichier lorsqu'il y est invité.

Pourquoi cette modification est-elle importante ?

Lorsque les informations concernant le type de fichier ne sont pas transmises correctement par le serveur et qu'elles sont enregistrées sur l'ordinateur, un fichier dangereux peut être exécuté ultérieurement. Par exemple, Internet Explorer peut télécharger un fichier ayant l'aspect d'un fichier texte. Si ce fichier ne peut pas être chargé par son gestionnaire MIME et qu'il possède une extension .doc, il risque d'être exécuté dans une application telle que Microsoft Word sans que l'utilisateur en soit averti. Dans Microsoft Word, le fichier peut alors utiliser un contenu actif, tel qu'une macro, pour exécuter un programme (par exemple un virus) sur l'ordinateur de l'utilisateur.

Quels sont les changements observés ?

Internet Explorer tente désormais de renommer les fichiers téléchargés dans le cache d'Internet Explorer de façon à faire correspondre les types de contenu et les extensions, afin de protéger l'utilisateur contre les fichiers qui trompent l'utilisateur quant à leur type.

Internet Explorer invite l'utilisateur à télécharger le fichier et n'exécute plus les fichiers pour lesquels le type MIME et l'extension ne sont pas cohérents et qui sont rejetés par le gestionnaire MIME inscrit.

Internet Explorer n'exécute pas non plus les fichiers dans leur gestionnaire d'environnement si le code d'erreur E_Cannot_Load_Data est renvoyé par leur gestionnaire MIME.

Plutôt que d'exécuter un tel fichier dans le gestionnaire d'environnement, Internet Explorer affiche une boîte de dialogue d'erreur et propose à l'utilisateur de sauvegarder ce fichier.

Les développeurs Web peuvent isoler les applications qui ne fonctionnent pas en raison de ce comportement : il leur suffit de désactiver cette fonctionnalité comme indiqué dans la section Paramètres, plus loin dans ce document.

Comment contourner ces problèmes ?

Les développeurs Web doivent modifier leurs serveurs Web afin qu'ils hébergent des fichiers utilisant des en-têtes de types de contenu et des extensions de noms de fichiers cohérents. Si cela n'est pas possible, ils peuvent avoir recours à l'en-tête HTTP "Content-disposition=attachment" afin que les fichiers soient directement envoyés vers leur gestionnaire d'extension plutôt que vers le gestionnaire MIME. Notez que les téléchargements de fichiers contenant l'en-tête "Content-disposition=attachment" provoquent l'affichage de l'invite demandant à l'utilisateur s'il souhaite ouvrir ou enregistrer le fichier.

Si vous avez développé un gestionnaire MIME et que vous comptez volontairement sur Internet Explorer pour l'exécution des fichiers que votre gestionnaire MIME rejette, vous devez modifier ce dernier en conséquence. La modification la plus sûre consiste à faire en sorte que le fichier soit traité de façon native directement dans le gestionnaire MIME, plutôt que d'être rejeté.

Il arrive cependant qu'il soit impossible de modifier le comportement du gestionnaire MIME de telle sorte qu'il gère les fichiers téléchargés de façon native. Dans ces différents scénarios, il y a plusieurs options possibles.

Vous pouvez développer un gestionnaire MIME et un gestionnaire d'extension de nom de fichier faisant tous deux partie du même CLSID, afin qu'Internet Explorer accepte la correspondance de CLSID. Il n'invitera donc pas l'utilisateur à télécharger le fichier et ne bloquera pas son exécution dans le gestionnaire d'extension.

Si le gestionnaire MIME n'a pas besoin d'être chargé et qu'il provoque des erreurs de non correspondance entre le type MIME et l'extension, le développeur peut le marquer de telle sorte qu'il soit ignoré par Internet Explorer en cas de non-correspondance. Par exemple, si le gestionnaire MIME d'un type MIME multimédia présente une extension incohérente et doit être exécuté directement pour être lu correctement, le développeur peut marquer le ProgID de son gestionnaire MIME de telle sorte qu'il soit ignoré en cas d'incohérence lorsque l'extension du nom du fichier multimédia appartient à un ProgID différent. Pour ce faire, il doit définir la valeur suivante du Registre avec le gestionnaire MIME à ignorer :

HKEY_CLASSES_ROOT\PROG_ID_OF_MIMEHANDLER_TO_IGNORE\"PreferExecuteOnMismatch"=DWORD:00000001

Si aucune de ces solutions ne résout le problème, il est conseillé au développeur de signaler cette incompatibilité aux utilisateurs et de leur expliquer comment enregistrer le fichier incohérent dans le système de fichiers pour le lancer ensuite manuellement.

Si votre scénario est affecté par des invites de téléchargement de fichiers en raison d'une incohérence MIME/extension inconciliable, vous pouvez inscrire le ProgID de votre gestionnaire MIME de façon à contourner toutes les invites de téléchargement, y compris la nouvelle invite déclenchée par ce type d'incohérence.

Auparavant, vérifiez que votre gestionnaire MIME est capable de traiter les fichiers qui lui sont délégués en toute sécurité. Par exemple, assurez-vous qu'il ne permettrait pas à un utilisateur malintentionné d'obtenir plus de privilèges que ceux autorisés par la zone d'où provient le fichier. Cette vérification s'effectue au moyen du modelage de menaces, de la révision du code qui doit contenir des modes de défaillance sécurisés, et de la saturation de tampons. Si vous déterminez que votre gestionnaire MIME est capable de gérer de façon sécurisée tous les types de fichiers susceptibles de lui être délégués, vous pouvez l'inscrire de façon à contourner les invites de téléchargement en ajoutant une nouvelle clé à l'un des paramètres de Registre suivants :

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\InternetSettings\Secure_Mime_Handlers 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings\Secure_Mime_Handlers

Cette clé doit être nommée avec le ProgID de votre gestionnaire MIME et posséder le DWORD=00000001.

Détection MIME et promotion des types de fichiers

Description détaillée

L'un des critères de sauvegarde permettant de déterminer le type d'un fichier est le résultat de la détection MIME. En examinant un fichier, Internet Explorer peut en effet reconnaître les signatures de bits de certains types de fichiers. Dans Windows Server 2003 Service Pack 1, la détection MIME d'Internet Explorer ne promeut jamais un fichier de type « texte/en clair » vers d'autres types de fichier plus dangereux dans la zone des sites sensibles. Par exemple, les fichiers reçus en tant que fichiers de texte brut, mais qui contiennent du code HTML, ne sont pas élevés au type HTML, qui peut contenir du contenu actif.

Pourquoi cette modification est-elle importante ?

Ce changement constitue un moyen de défense supplémentaire contre les contenus malveillants publiés sur un serveur Web de confiance : il arrive en effet qu'un fichier portant l'en-tête content-type=text\plain soit transmis par le serveur mais qu'un utilisateur malintentionné ait chargé dans ce fichier du code HTML avec un contenu actif.

Quels sont les changements observés ?

Lorsqu'un serveur Web n'inclut pas l'en-tête Content-Type approprié dans ses fichiers et utilise des extensions de noms de fichiers non standard pour des pages HTML, ces pages risquent d'être affichées en tant que texte brut au lieu du format HTML.

Comment contourner ces problèmes ?

Configurez les serveurs Web de telle sorte qu'ils utilisent les en-têtes Content-Type adéquats, ou nommez les fichiers en leur attribuant l'extension appropriée pour l'application destinée à les gérer.

Quels paramètres ont été ajoutés ou modifiés dans Windows Server 2003 Service Pack 1 ?

 

Nom du paramètre Emplacement Précédente valeur par défaut Valeur par défaut Valeurs possibles

IExplore.exe

Explorer.exe

HKEY_LOCAL_MACHINE(ou Current User)\Software \Microsoft \Internet Explorer\Main \FeatureControl \FEATURE_MIME_HANDLING\

Aucun

1

0 - désactivé

1 - activé

IExplore.exe

Explorer.exe

HKEY_LOCAL_MACHINE(ou Current User)\Software \Microsoft \Internet Explorer\Main \FeatureControl\FEATURE_MIME_SNIFFING\

Aucun

1

0 - désactivé

1 - activé

Paramètres du comportement de la détection MIME par zone

La nouvelle restriction appliquée à la détection MIME est contrôlée par le paramètre de sécurité Ouvrir les fichiers en fonction de leur contenu, pas de leur extension de fichier, ce paramètre pouvant être activé ou désactivé séparément pour chaque zone de sécurité. Le tableau suivant présente les paramètres par défaut par zone de sécurité :

 

Zone de sécurité « Ouvrir les fichiers en fonction de leur contenu, pas de leur extension de fichier » Paramètre de sécurité par défaut

Zone Sites sensibles

Désactiver

Zone Internet

Enable

Zone intranet

Enable

Zone de sites approuvés

Activer

Dois-je modifier mon code pour utiliser Windows Server 2003 Service Pack 1 ?

Configurez les serveurs Web de telle sorte qu'ils utilisent les en-têtes Content-Type appropriés. Vous pouvez également nommer les fichiers en leur attribuant l'extension appropriée pour l'application destinée à les gérer.

Contenu de la communauté   Qu'est-ce que le Contenu de la communauté ?
Ajouter du contenu RSS  Annotations
Processing
© 2012 Microsoft. Tous droits réservés. Conditions d'utilisation | Marques | Confidentialité
Page view tracker