加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

PagesSection.ValidateRequest是否足以阻止asp.Net中的XSS

发布时间:2020-12-15 23:58:34 所属栏目:asp.Net 来源:网络整理
导读:在asp.net中,PagesSection.ValidateRequest方法足以阻止所有XSS攻击,还是需要做更多的事情? 任何人都可以指向我专门针对asp.net这个主题的更全面的资源,因为谷歌主要返回MSDN文章,我想验证我们做得还不够. 解决方法 AntiXSS库 Microsoft AntiXSS library是A
在asp.net中,PagesSection.ValidateRequest方法足以阻止所有XSS攻击,还是需要做更多的事情?

任何人都可以指向我专门针对asp.net这个主题的更全面的资源,因为谷歌主要返回MSDN文章,我想验证我们做得还不够.

解决方法

AntiXSS库

Microsoft AntiXSS library是ASP.Net的一个很好的解决方案.它使用白名单(黑名单)方法,似乎由Microsoft定期更新.

最新下载(截至本文):http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=28589

AntiXSS支持文本和HTML样式验证. HTML验证确实允许可能不合需要的内容(例如另一个域中的图像).

它要求您通过库运行每个输入值,这将产生额外的(尽管很简单的)代码.

using System;
using Microsoft.Security.Application;

public class AppText
{
    public static string GetSafeHtml( string inputText )
    {
        return Sanitizer.GetSafeHtmlFragment( inputText );
    }

    public static string GetSafeText( string inputText )
    {
        return Microsoft.Security.Application.Encoder.HtmlEncode( inputText );
    }
}

优点

手动验证每个输入可确保您不会假设安全性仅由ASP.Net请求验证“处理”.它还使您可以根据需要灵活地禁用请求验证(请求中存在可疑字符的合法情况).因为您使用AntiXSS库显式验证输入,所以您可以在请求中允许字符/标记.

一般XSS信息

https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读