最近发现 输入查询信息时,不小心粘贴了html,然后就提示从客户端中“”  <div class="clear"></div>“”检测到有潜在危险的 Request.Form 值错误。

调试跟踪之后发现,解码编码查询条件值根本不起作用,因为未进入查询条件方法之前,.net已经捕获异常。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

 

从客户端中检测到有潜在危险的 Request.Form 值 随笔 第1张

 

从客户端中检测到有潜在危险的 Request.Form 值 随笔 第2张

 

1.目前使用在页面加上了

<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/pages/common/master/home.master" CodeFile="select-project-by-permission.aspx.cs" Inherits="pages_popup_select_project_by_permission" ValidateRequest="false"%>

结果 没有报错。

从客户端中检测到有潜在危险的 Request.Form 值 随笔 第3张

2.因安全性低,未采用验证。

在web.config中的pages节中配置validateRequest="false",如:

<system.web >
<pages validateRequest="false" ></pages > 
</system.web >

但这样,整个项目中的所有Form请求都不再验证提交内容的安全性,极不提倡这种做法。

 查询过程中发现设置全局有问题,ASP.NET4.0设置 validateRequest="false"会失效。原因:https://www.cnblogs.com/tangfd405/p/3162836.html

需添加<httpRuntime requestValidationMode="2.0"/>

从客户端中检测到有潜在危险的 Request.Form 值 随笔 第4张

 

 资料查询地址:https://docs.microsoft.com/en-us/aspnet/whitepapers/request-validation 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄