【问题标题】:Accepted list approach explain AntiXSS接受列表方法解释 AntiXSS
【发布时间】:2015-06-12 22:06:02
【问题描述】:

在其中一个网站中,我在文章中找到了该声明:

AntiXSS 库采用接受列表方法,而 .NET Framework 采用阻止列表方法。

请解释一下accepted-list approachblocked-list approach是什么意思???

【问题讨论】:

    标签: asp.net-mvc antixsslibrary


    【解决方案1】:

    在安全术语中,accepted-list 方法被称为 白名单方法; blocked-list 方法称为 Blacklist 方法。

    请参阅此处What is whitelist and blacklist data? 或谷歌黑名单与白名单的讨论。

    Fiction from hollywood: 让我们想象一下影响整个世界的病毒爆发(如生化危机电影中的生物病毒爆发)感染。你没有被感染,你一个人呆着,你有一种预感,有些人像你一样没有被感染。病毒袭击后,一个人需要2-3个小时才能意识到感染并变成僵尸。您想建立一个安全的设施来保护自己免受感染。在无线电通讯中,您听说某制药公司已经发明了一种病毒疫苗。

    您现在有两种方法可以为您的安全设施构建外围安全系统:

    1. 不允许被病毒感染的僵尸[但允许其他所有人] ==> 黑名单方法
    2. 只允许接种过疫苗的人 [拒绝其他人] ==> 白名单方法

    让我们谈谈哪种方法更安全。

    1. 不允许感染病毒的人,但允许其他人 当病毒感染需要 2-3 小时才能出现时,此方法将失败。受到病毒攻击但尚未意识到感染的人将通过并感染安全设施。
    2. 只允许接种过疫苗的人,拒绝其他人 接种疫苗的人不会被感染,您只允许他们。你不在乎人类是否被病毒感染或攻击(并且还没有意识到被感染),你否认他们。您只允许因为您信任疫苗而接种疫苗的人。这是一种更安全的方法,不是吗?

    让我们将所有这些放在跨站点脚本 (XSS) 的上下文中

    1. 黑名单方法:阻止所有标签/字符串,如 。更全面的列表-https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet

      缺点:此黑名单过滤器会漏掉新引入的 html5 标签中的漏洞,例如 等,因为黑名单还不知道videopicture 标签可能会被滥用,谁知道可能还有更多类似的实例。 https://html5sec.org/

    2. 白名单方法:只允许已知安全的标签,例如

      优点:您比黑名单方法更安全,因为您信任 之类的标签(就像他们接种了疫苗一样)并拒绝其他所有内容。其他所有内容都包括可能不安全的标签和您不关心的标签。您只关心已知安全的内容,并且您只接受它。

    通常在标签之外的白名单验证,也包括 css 类和 javascript 事件。如果不是 Microsoft AntiXSS,请尝试 OWASP AntiSamy。

    更多阅读:

    1. Why use a whitelist for HTML sanitizing?
    2. https://kevtownsend.wordpress.com/2011/08/24/whitelisting-vs-blacklisting/
    3. What is whitelist and blacklist data?

    【讨论】:

    • 多么棒的教程。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-18
    • 1970-01-01
    • 2012-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多