各位大哥帮帮忙,看看这是什么问题,从来没遇到过!~ 从客户端(ftbContent="<IMG height=85 src="...")中检测到有潜在危险的 Request.Form 值。是不是要配置一下webconfig 啊怎么配?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Web.Config 设置<system.web><pages validateRequest="false"/> </system.web> 在那个页面中写<%@ Page validateRequest="false" ... %> 大多数脚本利用发生在用户可以将可执行代码(脚本)插入您的应用程序时。默认情况下,ASP.NET 提供请求验证。不管窗体发送包含什么样的 HTML,该验证都会引发错误。您可以使用下列方法防止脚本利用: 在接受或显示字符串之前,将 HTML 编码应用于它们,以便字符串不包括任何可执行元素。 如果您的应用程序需要接受某些 HTML,则禁用请求验证并创建您自己的 HTML 筛选器。 本主题中的过程说明如何执行这些任务。应用 HTML 编码HTML 编码使用 HTML 保留字符转换 HTML 元素,以便显示它们而不是执行它们。应用 HTML 编码 在显示字符串之前,调用 Server 对象的 HtmlEncode 方法。HTML 元素会转换为浏览器将显示(而不解释为 HTML)的字符串表示形式。 以下示例说明 HTML 编码。在一个实例中,在显示用户输入之前对其进行编码。在第二个实例中,在显示数据库中的数据之前对其进行编码。 注意 只有通过向 @ Page 指令中添加 validateRequest="false" 来在页中禁用请求验证时,此示例才将起作用。决不禁用请求验证而不添加您自己的检查或筛选器。// C#private void Button1_Click(object sender, System.EventArgs e){ Label1.Text = Server.HtmlEncode(TextBox1.Text); Label2.Text = Server.HtmlEncode(dsCustomers1.Customers[0].CompanyName);}筛选 HTML 元素默认情况下,Web 窗体页检测发送到服务器的信息中的任何 HTML 元素和保留字符。这样,将防止用户试图将脚本嵌入您的应用程序。当页检测到 HTML 时,它会引发一个错误。您可以使用 Page_Error 或 Application_Error 处理程序捕捉此错误。有关详细信息,请参见显示安全的错误信息。但是,如果您的应用程序需要接受某些 HTML 元素,可关闭请求验证,并创建一个只允许使用要接受的 HTML 元素的筛选器。注意 不要创建试图只筛选出不可接受元素的筛选器,因为预料每个可能的错误输入十分困难。相反,如果您创建筛选器,则创建一个定义可接受输入的筛选器。筛选 HTML 元素 通过将属性 ValidateRequest="false" 添加到 @ Page 指令中禁用请求验证。 安全说明 决不要禁用自动请求验证而不添加您自己的检查或筛选器。使用 HtmlEncode 方法对字符串进行编码。 调用 String.Replace 方法,将要接受的已编码 HTML 标记转换回它们的 HTML 形式。 提示 如果您熟悉正则表达式,则可以使用一个正则表达式来高效地执行筛选。有关详细信息,请参见 .NET Framework 正则表达式。以下示例说明一个简单的筛选器,它接受加粗元素和带下划线的元素(<b>、</b>、<u>、</u>)。在显示所有其他用户输入之前都对其进行编码。 安全说明 许多 HTML 标记都允许在其属性中使用脚本。例如,标记 <img src="javascript:alert('hi')"> 是合法的。如果您希望接受比简单的格式设置标记更复杂的 HTML 标记,则必须确保恶意用户无法假借允许的 HTML 标记将脚本传递到您的应用程序。 检查 错误 .net1.1发送邮件问题 如何把动态添加的批量地址写入数据库? JS厉害的进吧 如何在网页中嵌入VB.NET 做的windows 应用程序? 这种筛选式搜索怎么在ASPX页面上实现? 关于参数传递的问题 asp:Hyperlink的问题 .net如何保护我的程序? 關于水晶報表 没有IIS,ASP.NET的程序也能运行吗? 还请大家多多帮忙哦!!!
<pages validateRequest="false"/>
</system.web>
<%@ Page validateRequest="false" ... %>
如果您的应用程序需要接受某些 HTML,则禁用请求验证并创建您自己的 HTML 筛选器。
本主题中的过程说明如何执行这些任务。应用 HTML 编码
HTML 编码使用 HTML 保留字符转换 HTML 元素,以便显示它们而不是执行它们。应用 HTML 编码 在显示字符串之前,调用 Server 对象的 HtmlEncode 方法。HTML 元素会转换为浏览器将显示(而不解释为 HTML)的字符串表示形式。
以下示例说明 HTML 编码。在一个实例中,在显示用户输入之前对其进行编码。在第二个实例中,在显示数据库中的数据之前对其进行编码。 注意 只有通过向 @ Page 指令中添加 validateRequest="false" 来在页中禁用请求验证时,此示例才将起作用。决不禁用请求验证而不添加您自己的检查或筛选器。
// C#
private void Button1_Click(object sender, System.EventArgs e)
{
Label1.Text = Server.HtmlEncode(TextBox1.Text);
Label2.Text =
Server.HtmlEncode(dsCustomers1.Customers[0].CompanyName);
}
筛选 HTML 元素
默认情况下,Web 窗体页检测发送到服务器的信息中的任何 HTML 元素和保留字符。这样,将防止用户试图将脚本嵌入您的应用程序。当页检测到 HTML 时,它会引发一个错误。您可以使用 Page_Error 或 Application_Error 处理程序捕捉此错误。有关详细信息,请参见显示安全的错误信息。但是,如果您的应用程序需要接受某些 HTML 元素,可关闭请求验证,并创建一个只允许使用要接受的 HTML 元素的筛选器。注意 不要创建试图只筛选出不可接受元素的筛选器,因为预料每个可能的错误输入十分困难。相反,如果您创建筛选器,则创建一个定义可接受输入的筛选器。
筛选 HTML 元素 通过将属性 ValidateRequest="false" 添加到 @ Page 指令中禁用请求验证。
安全说明 决不要禁用自动请求验证而不添加您自己的检查或筛选器。
使用 HtmlEncode 方法对字符串进行编码。
调用 String.Replace 方法,将要接受的已编码 HTML 标记转换回它们的 HTML 形式。
提示 如果您熟悉正则表达式,则可以使用一个正则表达式来高效地执行筛选。有关详细信息,请参见 .NET Framework 正则表达式。
以下示例说明一个简单的筛选器,它接受加粗元素和带下划线的元素(<b>、</b>、<u>、</u>)。在显示所有其他用户输入之前都对其进行编码。 安全说明 许多 HTML 标记都允许在其属性中使用脚本。例如,标记 <img src="javascript:alert('hi')"> 是合法的。如果您希望接受比简单的格式设置标记更复杂的 HTML 标记,则必须确保恶意用户无法假借允许的 HTML 标记将脚本传递到您的应用程序。