如何使用AWS WAF防止热链接

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用AWS WAF防止热链接相关的知识,希望对你有一定的参考价值。

有一个AWS文档解释了如何为自己做这件事,即如何只允许一个页面热链接并拒绝所有其他页面:https://aws.amazon.com/blogs/security/how-to-prevent-hotlinking-by-using-aws-waf-amazon-cloudfront-and-referer-checking/

我想知道WAF是否是我的用例的正确选择,这与上面的有点不同。

  • 在我工作的公司,我们打算通过JS小部件销售数据。
  • 我们希望限制对这些数据的访问,以便只有授权的REFERER能够向用户显示我们的数据,同时拒绝所有其他REFERER。
  • 欺骗REFERER的可能性对我们来说不是一个重要的威胁。
  • 我们希望将客户群增加到数百人。

我问这个问题的原因是因为注意到WAF有一些严格的限制:https://docs.aws.amazon.com/waf/latest/developerguide/limits.html,根据我的理解,对于我们的用例,WAF不会很好地扩展。

答案

WAF不适合这项工作。

首先,即使最多有10条规则,每条规则最多10个条件,每条规则最多10个过滤器,每个AWS账户最多有100个字符串条件。

其次,条件和过滤器不能很好地构成我们的用例。规则的条件由AND组成,条件的过滤器由OR组成。例如,像r(x) := (x=a + x=b + x=c) * (x=d + x=e)这样的规则会给r(d) = false而不会测试x=d

以上是关于如何使用AWS WAF防止热链接的主要内容,如果未能解决你的问题,请参考以下文章

AWS WAF 日志利用率 + Web 应用程序的渗透测试

AWS WAF 的工作原理

AWS:使用 cloudformation 模板将 WAF 附加到 api 网关

HTML代码片段

HTML代码片段

防止图像热链接