【问题标题】:How to allow a wildcard for part of a querystring in IIS request filtering如何在 IIS 请求过滤中允许部分查询字符串使用通配符
【发布时间】:2015-10-28 17:35:29
【问题描述】:

我有一个由 3 部分组成的查询字符串。

前 2 部分是静态的,但最后一个是动态的,可以是任何值。

因为查询字符串中使用的关键字被 IIS 阻止/拒绝,所以我需要知道如何在 IIS 7.5 的请求过滤中只允许查询字符串的最后一部分使用动态值

例如:

in-content=knownvalue&out-content=knownwvalue&searchable= *这可以是由字符、数字、连字符、撇号和符号等组成的任何单词。

提前感谢大家的帮助。

【问题讨论】:

    标签: security iis-7.5 wildcard


    【解决方案1】:

    因为在查询字符串的一部分中使用的关键字被 IIS 阻止/拒绝我需要知道如何只为查询字符串的最后部分允许动态值

    我认为您目前无法在每个参数级别配置默认请求验证,因此要允许特定参数的所有输入,您必须禁用它。

    (无论如何我都会这样做,因为 IIS 请求验证是一个被误导的 bogus security measure hides not solves 注入问题。)

    如果您之后仍想逐个参数地进行输入过滤,您可以在应用程序中实现它或提供您自己的请求验证(继承 RequestValidation 并将 requestValidationType 指向该类)。特定于应用程序的输入过滤通常是一件好事,但它不能解决注入型 XSS 问题,唯一有效的解决方案仍然是正确转义输出上下文。

    【讨论】:

    • 感谢 bobince。我怀疑无法在参数级别进行配置。我已经对输入进行了转义,并在服务器端添加了过滤器以删除最令人反感的动词......所以......现在我将进行一些测试,我们将看看它是否至少保持一定程度的安全性。再次感谢您的明确回复。
    猜你喜欢
    • 2014-07-24
    • 2017-01-04
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 2013-09-09
    • 2014-09-02
    • 1970-01-01
    • 2020-03-14
    相关资源
    最近更新 更多