Преминаване към основното съдържание
Поддръжка
Влизане с Microsoft
Влезте или създайте акаунт.
Здравейте,
Изберете друг акаунт.
Имате няколко акаунта
Изберете акаунта, с който искате да влезете.

Обобщена информация

Код за отдалечено изпълнение на уязвимост в Microsoft Visual Studio 2019 и Visual Studio 2017 ако XOML (разширен обект Markup Language) препраща към някои видове и предизвиква произволен код да се изпълнява, когато файлът е отворен в Visual Studio.

Сега има ограничение на която типове могат да се използват .xoml файлове. Ако .xoml файл, който съдържа някой от типовете наскоро неупълномощен, получавате съобщение за грешка, уведомяващо, че типът е неразрешено.

To Научете повече за уязвимостта, преминете към CVE-2019-1113.

Заобиколно решение

Ако отвори .xoml файл не води до проблеми със сигурността, можете да забраните на процеса на проверка за неупълномощени типове. За да направите това, добавете ключ към<appSettings>раздел на файла devenv.exe.config , както следва:

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

Тази appSetting стойност напълно забранява тип проверка в програмата за сериализация XOML (разширен обект Markup Language). Ако стойността е вярно, то по-висок приоритет следните нови 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>
...

Тези промени маркирате само WorkflowDesigner тип на System.Activities.Presentation събрание като неразрешено, както следва:

  • Версия: 4.0.0.0

  • Култура: неутрално

  • PublicKeyToken: 31bf3856ad364e35

За да маркирате други типове като неразрешено, можете да добавите подобни записи за тези типове.

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.

Беше ли полезна тази информация?

Доколко сте доволни от качеството на езика?
Какво е повлияло на вашия потребителски опит?
Като натиснете „Подаване“, вашата обратна връзка ще се използва за подобряване на продуктите и услугите на Microsoft. Вашият ИТ администратор ще може да събира тези данни. Декларация за поверителност.

Благодарим ви за обратната връзка!

×