gpt4 book ai didi

javascript - 为什么内联 JavaScript 安全性不好?

转载 作者:行者123 更新时间:2023-12-03 09:03:25 25 4
gpt4 key购买 nike

我知道内联 JS 不利于性能,但为什么它不利于安全呢?你能向我解释一下为什么吗?有一些例子吗?

最佳答案

限制性content security policy通过禁止除具有特定哈希值的脚本之外的所有脚本,可以帮助减少脚本注入(inject)漏洞的影响。

  • 如果您使用 on* 形式的内联 JavaScript属性或javascript: URL,你根本无法实现这种类型的策略,所以这肯定不太安全。

  • 如果您使用 <script> 形式的内联 JavaScript没有 src ,创建用于 CSP 的哈希值或随机数不太方便,这可能会诱使人们根本不添加哈希值或随机数。随机数策略还允许使用动态脚本,这通常是个坏主意(动态脚本的唯一用途是在 <script> 中插入 JSON,因为它看起来与 JavaScript 兼容 - 会导致错误和脚本注入(inject)²)。

¹ 或位于仅用于静态内容的特定域。小心允许域(包括源!)提供可以充当脚本的用户内容!
² 未转义引起的 < 、U+2028 和 U+2029 – JSON 与内联 JavaScript 的 3 个不兼容性。我建议使用典型的 HTML 转义并读取 data-属性代替。

关于javascript - 为什么内联 JavaScript 安全性不好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48672542/

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