未启用 ASP.NET ViewState MAC

medium Web App Scanning 插件 ID 112924

简介

未启用 ASP.NET ViewState MAC

描述

ViewState 是 ASP.NET 框架特有的参数,当用户在不同的网页之间浏览应用程序并保存相关值和控件时,它被用作 breadcrumb 跟踪。在页面上的 __viewstate 参数中,所有值都已被序列化,并在一个隐藏字段中以 base64 编码。除了 base64 编码外,viewstate 还可以用 MAC(消息验证代码)签名,以保证完整性,也可以加密以保证机密性。

如果 viewstate 并未签名,根据内部存储的信息,攻击者可能会修改内部存储的信息。

解决方案

ASP.NET 通过在特定页面上添加“<%@Page EnableViewStateMAC=“True”%>”或在 web.config 文件中添加“<pages enableViewStateMac='true'>”,以为 ViewState 参数提供 MAC 验证。

另见

https://devblogs.microsoft.com/aspnet/cryptographic-improvements-in-asp-net-4-5-pt-2/

https://docs.microsoft.com/en-us/dotnet/api/system.web.ui.page.enableviewstatemac?view=netframework-4.8

https://docs.microsoft.com/en-us/previous-versions/dotnet/articles/ms972976(v=msdn.10)

插件详情

严重性: Medium

ID: 112924

类型: remote

发布时间: 2021/8/5

最近更新时间: 2022/2/1

扫描模板: basic, full, pci, scan

风险信息

VPR

风险因素: Low

分数: 1.4

CVSS v2

风险因素: Medium

基本分数: 5

矢量: CVSS2#AV:N/AC:L/Au:N/C:N/I:P/A:N

CVSS 分数来源: Tenable

CVSS v3

风险因素: Medium

基本分数: 5.3

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

CVSS 分数来源: Tenable

漏洞信息

CPE: cpe:2.3:a:microsoft:microsoft_.net_framework:*:*:*:*:*:*:*:*

参考资料信息