Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Résumé

Il existe une vulnérabilité d’exécution de code à distance dans Microsoft Visual Studio 2019 et Visual Studio 2017 si un fichier XOML (Extensible Object Markup Language) fait référence à certains types entraîne l'exécution de code aléatoire lors de l'ouverture du fichier dans Visual Studio.

Il existe maintenant une restriction sur les types autorisés à être utilisés dans les fichiers .xoml. Si un fichier.xoml contenant l'un des types nouvellement non autorisés est ouvert, vous recevez un message d'erreur indiquant que le type n'est pas autorisé.

Pour en savoir plus sur cette vulnérabilité, consultez la page CVE-2019-1113.

Solution de contournement

Si un fichier .xoml ouvert ne pose pas de problème de sécurité, vous pouvez désactiver le processus de recherche de types non autorisés. Pour ce faire, ajoutez une clé à la section <appSettings> du fichier devenv.exe.config, comme suit :

...
<appSettings>
<add key="microsoft:WorkflowComponentModel:DisableXOMLSerializerTypeChecking" value="true"/>
</appSettings>
...


Cette valeur appSetting entraîne la désactivation de la vérification de type dans le sérialiseur XOML (Extensible Object Markup Language). Si la valeur est définie sur vrai, elle est prioritaire sur la nouvelle valeur appSetting pour désactiver uniquement certains types.

Si vous souhaitez uniquement interdire certains types spécifiques, vous devez apporter les modifications suivantes au fichier devenv.exe.config :

...
<appSettings>
<add key="microsoft:WorkflowComponentModel:DisableXOMLSerializerDefaultUnauthorizedTypes" value="true"/>
</appSettings>
...


Cette modification autorise tous les types non autorisés par défaut. Pour marquer des types spécifiques comme non autorisés, vous devez également apporter les modifications suivantes au fichier devenv.exe.config :

...
<configuration>
...
<configSections>
<sectionGroup name="System.Workflow.ComponentModel.WorkflowCompiler" type="System.Workflow.ComponentModel.Compiler.WorkflowCompilerConfigurationSectionGroup, System.Workflow.ComponentModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="authorizedTypes" type="System.Workflow.ComponentModel.Compiler.AuthorizedTypesSectionHandler, System.Workflow.ComponentModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</sectionGroup>
</configSections>
...
<System.Workflow.ComponentModel.WorkflowCompiler>
<authorizedTypes>
<foo version="v4.0">
<authorizedType Assembly="System.Activities.Presentation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Activities.Presentation" TypeName="WorkflowDesigner" Authorized="false"/>
</foo>
</authorizedTypes>
</System.Workflow.ComponentModel.WorkflowCompiler>
...
</configuration>
...


Ces modifications marquent uniquement le type WorkflowDesigner dans l’assemblage System.Activities.Presentation comme non autorisé, comme suit :

  • Version : 4.0.0.0

  • Culture : neutre

  • PublicKeyToken: 31bf3856ad364e35

Pour marquer d'autres types comme non autorisés, vous pouvez ajouter des entrées similaires pour ces types.

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×