メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

概要

XOML (Extensible Object Markup Language) ファイルで特定の型が参照され、そのファイルが Visual Studio で開かれたときにランダムなコードが実行される場合、Microsoft Visual Studio 2019 および Visual Studio 2017 にリモートでコードが実行される脆弱性が存在します。      

.xoml ファイル内で使用できる型には制限が追加されました。  承認されなくなった型のいずれかを含む .xoml ファイルを開くと、その型が承認されていないことを示すエラー メッセージが表示されます。    

この脆弱性の詳細については、CVE-2019-1113 を参照してください。

回避策

.xoml ファイルを開いてもセキュリティの問題が発生しない場合は、承認されていない型をチェックするプロセスを無効にすることができます。 これを行うには、次のように devenv.exe.config ファイルの <appSettings> セクションにキーを追加します。  

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


この appSetting 値にすると、XOML (Extensible Object Markup Language) シリアライザーの型チェックは完全に無効になります。    この値を true に設定した場合、特定の型のみを禁止する次の新しい appSetting 値よりも優先されます。 

特定の型のみを禁止する場合は、devenv.exe.config ファイルを次のように変更する必要があります。

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


このように変更すると、既定で承認されていないすべての型が許可されます。  特定の型を非承認とマークするには、さらに 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>
...


このように変更すると、次のように System.Activities.Presentation アセンブリの WorkflowDesigner 型のみが非承認とマークされます。

  • Version: 4.0.0.0

  • Culture: neutral

  • PublicKeyToken: 31bf3856ad364e35

他の型を非承認としてマークするには、それらの型について同様のエントリを追加します。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×