【发布时间】:2015-06-12 22:06:02
【问题描述】:
在其中一个网站中,我在文章中找到了该声明:
AntiXSS 库采用接受列表方法,而 .NET Framework 采用阻止列表方法。
请解释一下accepted-list approach和blocked-list approach是什么意思???
【问题讨论】:
标签: asp.net-mvc antixsslibrary
在其中一个网站中,我在文章中找到了该声明:
AntiXSS 库采用接受列表方法,而 .NET Framework 采用阻止列表方法。
请解释一下accepted-list approach和blocked-list approach是什么意思???
【问题讨论】:
标签: asp.net-mvc antixsslibrary
在安全术语中,accepted-list 方法被称为 白名单方法; blocked-list 方法称为 Blacklist 方法。
请参阅此处What is whitelist and blacklist data? 或谷歌黑名单与白名单的讨论。
Fiction from hollywood: 让我们想象一下影响整个世界的病毒爆发(如生化危机电影中的生物病毒爆发)感染。你没有被感染,你一个人呆着,你有一种预感,有些人像你一样没有被感染。病毒袭击后,一个人需要2-3个小时才能意识到感染并变成僵尸。您想建立一个安全的设施来保护自己免受感染。在无线电通讯中,您听说某制药公司已经发明了一种病毒疫苗。
您现在有两种方法可以为您的安全设施构建外围安全系统:
让我们谈谈哪种方法更安全。
让我们将所有这些放在跨站点脚本 (XSS) 的上下文中
黑名单方法:阻止所有标签/字符串,如 。更全面的列表-https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet
缺点:此黑名单过滤器会漏掉新引入的 html5 标签中的漏洞,例如 、 等,因为黑名单还不知道video 和 picture 标签可能会被滥用,谁知道可能还有更多类似的实例。 https://html5sec.org/
白名单方法:只允许已知安全的标签,例如
优点:您比黑名单方法更安全,因为您信任 之类的标签(就像他们接种了疫苗一样)并拒绝其他所有内容。其他所有内容都包括可能不安全的标签和您不关心的标签。您只关心已知安全的内容,并且您只接受它。
通常在标签之外的白名单验证,也包括 css 类和 javascript 事件。如果不是 Microsoft AntiXSS,请尝试 OWASP AntiSamy。
更多阅读:
【讨论】: