0

“像 Facebook 这样的网站使用动态更改的名称加载 javascript 文件,这会阻止它之前缓存 JavaScript 文件,因此无法进行这种攻击。”

您可以在此处阅读有关此攻击媒介的更多信息。

加载更改名称的 JS 文件可以降低缓存中毒的风险——因为第三方无法预测要拦截哪些 JS 文件。

如果您知道如何在页面加载时动态更改 JS 文件的名称,或者可以链接到相关信息,我将不胜感激。这种知识对几乎任何人都是有价值的。

4

1 回答 1

1
  1. 为每个用户生成唯一的脚本密钥。(将密钥存储在用户表中,或者只使用键控哈希)

  2. 更改您的<script>标签以引用包含密钥和脚本名称的特殊服务器端处理程序。(您可以使用路由引擎使 URL 更漂亮。

  3. 在服务器端代码中,检查密钥是否与当前登录的用户匹配。
    如果密钥不存在或不匹配,则返回 404。(并记录安全审查请求)

这不适用于 CDN 或静态内容域。

于 2012-08-05T02:54:38.730 回答