2020 年 10 月 13 日-KB4578971 Windows 10 版本 1709 的 .NET Framework 4.8 累积更新

应用对象
.NET

注意

  • 发布日期:
    2020 年 10 月 13 日
  • 版本:
    .NET Framework 4.8

摘要

安全改进

当 .NET Framework 不正确地处理内存中的对象时,存在信息泄漏漏洞。 成功利用该漏洞的攻击者可能会泄漏受影响系统的内存的内容。 要利用该漏洞,已经过身份验证的攻击者将需要运行经特殊设计的应用程序。 该更新通过更正 .NET Framework 处理内存中对象的方式来修复此漏洞。

若要了解有关漏洞的更多信息,请参阅以下常见漏洞和披露 (CVE)。

质量与可靠性改进

WCF1 - 解决了同时启动多个服务时 WCF 服务有时无法启动的问题。
Winforms - 解决了 .NET Framework 4.8 中发生衰退的问题,其中 Control.AccessibleName、Control.AccessibleRole 和 Control.AccessibleDescription 属性停止对以下控件起作用:Label、GroupBox、ToolStrip、ToolStripItems、StatusStrip、StatusStripItems、PropertyGrid、ProgressBar、ComboBox、MenuStrip、MenuItems、DataGridView。
- 解决了数据绑定组合框的组合框项目的可访问名称发生衰退的问题。 .NET Framework 4.8 开始使用类型名称代替 DisplayMember 属性的值作为可访问名称,此改进再次使用了 DisplayMember。
ASP.NET - 禁止在 ASP.Net 控件输出中重用 AppPath Modifier。
- ASP.Net 请求上下文中的 HttpCookie 对象将使用 Cookie 标志的配置默认值而不是 .NET 样式的原始默认值创建,以匹配新 HttpCookie(name)` 的行为。
SQL - 解决了有时当用户连接到一个 Azure SQL 数据库,执行基于安全区的操作,然后连接到具有相同证明 URL 的同一服务器下的另一个数据库并在第二台服务器上执行安全区操作时发生的故障。
CLR2 - 添加了 CLR 配置变量 Thread_AssignCpuGroups(默认为 1),该变量可以设置为 0,以禁用 CLR 对由 Thread.Start() 和线程池线程创建的新线程进行的自动 CPU 组分配,这样应用程序可以自己进行线程传播。
- 解决了使用新 API(如 Unsafe.ByteOffset<T> )时可能发生的罕见数据损坏问题,后者通常用于新的 Span 类型。 当线程从循环内部调用 Unsafe.ByteOffset<T> 时执行 GC 操作时,可能会发生损坏。
- 解决了启用 AppContext 开关“Switch.System.Threading.UseNetCoreTimer”时,计时器的到期时间非常长,比预期快得多的问题。

1 个 Windows Communication Foundation (WCF)
2 公共语言运行时 (CLR)

此更新中的已知问题

ASP.Net 应用程序在预编译过程中失败并显示错误消息

症状
在为 .NET Framework 4.8 应用此 2020 年 10 月 13 日安全和质量汇总后,某些 ASP.Net 应用程序在预编译期间失败。 收到的错误消息可能包含“ASPCONFIG 错误”字样。

原因
“System.web”配置的“sessionState”、“anonymouseIdentification”或“authentication/forms”部分中的配置状态无效。 如果配置转换将 Web.config 文件保留为预编译的中间状态,则可能会在生成和发布例程期间发生这种情况。

解决方法
发现新的意外故障或功能问题的客户可以通过向应用程序配置文件添加 (或合并) 以下代码来实现应用程序设置。 设置“true”或“false”可避免此问题。 但是,对于不依赖无 Cookie 功能的网站,我们建议将此值设置为“true”。


<?xml version="1.0" encoding="utf-8" ?>
<configuration>
      <appSettings>
          <add key=”aspnet:DisableAppPathModifier” value=”true” />
     </appSettings>
</configuration>

ASP.Net 应用程序可能无法在 URI 中传递无 Cookie 令牌

症状
在为 .NET Framework 4.8 应用此 2020 年 10 月 1 日安全和质量汇总后,某些 ASP.Net 应用程序可能无法在 URI 中传递无 Cookie 令牌,这可能会导致 302 重定向循环或会话状态丢失或丢失。

原因
会话状态、匿名标识和表单身份验证的 ASP.Net 功能都依赖于向 Web 客户端颁发令牌,并且它们都允许将这些令牌传送到 Cookie 中或嵌入到不支持 Cookie 的客户端的 URI 中。 URI 嵌入长期以来一直是一种不安全和不推荐的做法,此 KB 会悄悄地禁用 URI 中的颁发令牌,除非这三个功能之一在配置中显式请求 Cookie 模式“UseUri”。 指定“AutoDetect”或“UseDeviceProfile”的配置可能会无意中导致这些令牌在 URI 中嵌入尝试和失败。

解决方法
如果可能,建议观察到新的意外行为的客户将所有三个无 Cookie 设置更改为“UseCookies”。


<?xml version="1.0" encoding="utf-8" ?>
<configuration>
     <system.web>
          <anonymousidentification cookieless="UseCookies" />
          <sessionState cookieless="UseCookies" />
          <authentication>
               <forms cookieless="UseCookies" />
          </authentication>
     </system.web>
</configuation>

如果应用程序绝对必须继续使用 URI 嵌入的令牌并且可以安全地执行此操作,则可以使用以下 appSeting 重新启用它们。 但是,强烈建议不要将这些令牌嵌入到 URI 中。


<?xml version="1.0" encoding="utf-8" ?>
<configuration>
     <appSettings>
          <add key="aspnet:DisableAppPathModifier" value="false" />
     </appSettings>
</configuation>

如何获取此更新

安装此更新

发布渠道 可用 下一步
Windows 更新和 Microsoft 更新 无。 此更新会通过 Windows 更新自动下载并安装。
Microsoft 更新目录 若要获取此更新的独立程序包,请转到 Microsoft 更新目录网站。
Windows Server Update Services (WSUS) 如果按照以下方式配置“产品和分类”,此更新将自动与 WSUS 同步:
产品:Windows 10版本 1709
分类:安全更新

文件信息

有关此更新中提供的文件列表,请下载累积更新的文件信息

有关保护和安全的信息