2020 年 8 月 11 日 - KB4569746 适用于 Windows 10 版本 1607 和 Windows Server 2016 的 .NET Framework 4.8 的累积更新
Applies To
.NET发布日期:
2020 年 8 月 11 日版本:
.NET Framework 4.8摘要
安全改进
当运行在 IIS 上的 ASP.NET 或 .NET Framework 网络应用程序不正确地允许访问缓存文件时,存在特权提升漏洞。 成功利用此漏洞的攻击者可获得限制文件的访问权限。 为了利用此漏洞,攻击者需要向受影响的服务器发送经特殊设计的请求。 此更新通过更改 ASP.NET 和 .NET Framework 处理请求的方式来修复此漏洞。
若要了解有关漏洞的更多信息,请参阅以下常见漏洞和披露 (CVE)。
质量与可靠性改进
CLR1 |
- .NET Framework 4.8 中的更改使某些 EnterpriseServices 方案退化,在这种情况下,单线程单元对象可能被视为多线程单元,然后导致锁定失败。 目前,此更改可以正确识别单线程单元对象,从而避免了这种失败。 - 解决了程序集中 IBC 配置文件数据导致 Ngen 辅助角色进程崩溃并退回到完整的本机映像的问题。 - 解决了线程中止传输过程中可能发生的罕见崩溃。 |
|
SQL |
- SqlBulkCopy.WriteToServer 可能导致内存中 SQL 表的事务失败。 客户端可能会看到异常消息“执行超时已过期。 在操作完成之前发生超时或服务器没有响应。” SqlBulkCopy.WriteToServer 在将数据发送到 SQL Server 之后发送了 Attention 令牌(取消消息),从而导致服务器中止内存表的事务。 |
|
ASP.NET |
- 在 ASP.Net 遥测数据中使用符合 FIPS 的哈希。 - 解决了在表单身份验证和会话状态配置部分中,“cookieSameSite”属性的配置不允许使用“未指定”作为值的问题。 |
|
WPF2 |
- 解决了在 WPF TextBox 或 RichTextBox 中启用拼写检查时,“etc.”、“e.g.”等单词会被错误地识别为拼写错误的问题。 - 解决了在 .NET 4.8 上运行的部分逐显示器 WPF 应用程序有时可能因 exceptionSystem.ComponentModel.Win32Exception 而崩溃的问题。 - 解决了 TextBlock 在渲染和点击测试期间与测量期间相比发生重排(做出不同的换行决定)的问题。 症状包括缺少文本,以及在程序化文本处理过程中快速失败崩溃。 - 解决了由于 HostVisual 在错误的线程上断开目标而导致渲染线程故障的问题。 - 解决了滚动树结构不均匀的 TreeView 时出现的挂起问题,不均匀是指给定节点的子节点控制大小明显不同的子树。 - 解决了在关闭由用户代码重复关闭的工具提示时可能发生的崩溃问题。 - 当 HwndHost 离开可视化树时,将创建堆栈跟踪。 其成本高昂,并且通常是不必要的。 现在,仅当发生异常情况时,才会更改逻辑以创建堆栈跟踪。 - 解决了 System.Speech.SpeechSynthesizer 中的内存泄漏。 - 如果系统剪贴板被其他进程锁定,则 DataGrid 的“复制”命令将引发异常。 这会造成崩溃,因为堆栈上通常没有应用代码可捕获异常。 在这种情况下,TextBox(以及记事本、Word、浏览器等其他应用)的行为是静默失败 - 不会将任何内容复制到剪贴板,但没有异常。 WPF 应用现在可以通过在其 app.config 文件中设置 <appSettings> <add key="ShouldThrowOnDataGridCopyOrCutFailure" value="false"/> </appSettings> 来选择此行为。 - 解决了为 FixedPage 文档构造内部模型时发生的问题。 用于选择和复制/粘贴等编辑操作时,某些文本以错误的顺序显示。 |
|
WCF3 |
- 使用 NetTcpBinding 或 NetNamedPipeBinding 时,如果在 NetworkCredential 的 UserName 属性中使用格式类似于 username@dns.domain 的 UPN Windows 用户名,则 WCF 会错误地将用户名与 dns.domain 拆分,并将它们分别放入 UserName 和 Domain 属性中。 这在某些情况下是无效的,并且会导致身份验证失败。 使用 UPN 用户名时,此修补程序将删除凭据修改。 可通过将 AppSetting“wcf:enableLegacyUpnUsernameFix”设置为“真”来重新启用修改。 |
|
网络库 |
- 解决了 HttpListener 中的内存泄漏。 |
|
Winforms |
- 解决了 DataGridView IsReadOnlyaccessibility 状态的问题: 讲述人和其他辅助工具会相应地通知只读单元状态。 - 解决了 .NET Framework 4.8 中发生衰退的问题,使用 DataGridView ComboBox 单元格类型并已选择 3 级辅助功能的应用程序在编辑单元格时可能发生间歇性崩溃。 - 解决了 ClickOnce RFC3161 时间戳验证代码中的问题。 |
|
Winforms 辅助功能改进 |
在此版本中添加了可供应用程序选择的新辅助功能改进。 默认情况下,禁用这些更改。 选择 .NET 4.8 和更早版本中引入的辅助功能的应用程序可以向应用程序的配置文件添加以下兼容性开关: "Switch.UseLegacyAccessibilityFeatures.4=false" 具体来说,如果应用程序面向 .NET 4.8,请添加以下 AppContextSwitchOverrides 部分: <?xml version="1.0" encoding+"utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Versionv4.8"/; </startup> <runtime> <!-- AppContextSwitchOverrides value attribute is in the form of 'key1=true|false;key2=true|false --> <AppContextSwitchOverrides value="Switch.UseLegacyAccessibilityFeatures.4=false" /> </runtime> </configuration> 如果应用程序面向该框架的早期版本并选择了先前发布的辅助功能集,则将 "Switch.UseLegacyAccessibilityFeatures.4=false" 开关添加到 AppContextSwitchOverrides 部分: <?xml version="1.0" encoding+"utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Versionv4.7"/; </startup> <runtime> <!-- AppContextSwitchOverrides value attribute is in the form of 'key1=true|false;key2=true|false --> <AppContextSwitchOverrides value=Switch.UseLegacyAccessibilityFeatures=false|Switch.UseLegacyAccessibilityFeatures.2=false|Switch.UseLegacyAccessibilityFeatures.3=false|Switch.UseLegacyAccessibilityFeatures.4=false"/> </runtime> </configuration> 此版本中的 Winforms 辅助功能改进包括:
|
1 公共语言运行时 (CLR) 2Windows 演示基础 (WCF) 3 Windows 通信基础
此更新中的已知问题
Microsoft 目前不知道此更新的任何问题。
如何获取此更新
安装此更新
发布频道 |
可用 |
下一步 |
Windows Update 和 Microsoft Update |
是 |
无。 此更新会通过 Windows 更新自动下载并安装。 |
Microsoft 更新目录 |
是 |
若要获取此更新的独立程序包,请转到 Microsoft 更新目录网站。 |
Windows Server Update Services (WSUS) |
是 |
如果按照以下方式配置“产品和分类”,此更新将自动与 WSUS 同步: 产品:Windows 10 版本 1607 和 Windows Server 2016 分类: 安全更新 |
文件信息
有关此更新中提供的文件列表,请下载累积更新的文件信息。
有关保护和安全的信息
-
在线保护自己: Windows 安全支持
-
了解我们如何防范网络威胁: Microsoft 安全