gpt4 book ai didi

javascript - 保护站点免受外部缩小 JS 代码影响的方法

转载 作者:行者123 更新时间:2023-11-29 23:26:51 25 4
gpt4 key购买 nike

我知道最好的方法是完全不使用外部 JS,但遗憾的是,这是不可能的。

情况

网站的所有者希望(没有如果/和/或但是)从提供赌博广告的公司那里获得报酬。该公司声明,为了让他们提供上述广告,网站所有者必须向网站添加 JS 代码。上面说的 JS 代码只有几行,但本质上它创建了一个标签 <script>并加载位于宣传公司服务器中的缩小的外部 JS 文件。他们制作不同类型的广告(弹出窗口等)和其他一些需要代码的东西。

没有讨论来解决这个问题,我想知道是否可以添加任何类型的安全层来保护网站浏览者。我知道他们仍然处于危险之中,但我无能为力。

要做的事

  • 复制外部 JS 文件并从网站所有者的服务器提供它(或者这是一个可怕的想法?问题是,至少这样他们不能将其更改为他们想要的内容,因为它在网站所有者的服务器中).
  • 不在任何具有登录表单的页面中加载 JS 文件。
  • 仅加载将显示宣传的 JS 文件。
  • 如果用户登录则不加载 JS 文件
  • 修改JS文件,让它有自己的范围(function(){})() .

还有什么我可以做的吗?或者我只是自欺欺人地认为我可以提供一些微弱的保护?

最佳答案

有几种方法可以让您使用外部脚本来保护您的页面。首先创建一个内容安全策略。这基本上告诉浏览器它可以从哪里加载不同类型的内容,因此如果第三方在没有事先通知您的情况下开始从新来源加载内容,他们将被阻止。

其次是 script-src 标签。这允许您指定脚本标签的散列,如果它发生变化,浏览器将不会运行它。

Troy Hunt 博客上有关于这些和更多内容的更好的文章,特别是此页面 https://www.troyhunt.com/locking-down-your-website-scripts-with-csp-hashes-nonces-and-report-uri/

关于javascript - 保护站点免受外部缩小 JS 代码影响的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48868055/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com