Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
内联Javascript与外部Javascript-其中一个比另一个更安全吗?_Javascript - Fatal编程技术网

内联Javascript与外部Javascript-其中一个比另一个更安全吗?

内联Javascript与外部Javascript-其中一个比另一个更安全吗?,javascript,Javascript,这是一个多年来我时常想知道的问题,但从未真正费心去寻找一个明确的答案 我们知道可以通过控制台操作内联脚本和外部脚本,但是一个脚本比另一个脚本有什么小的安全优势吗 操纵其中一个是否有点困难,还是它们都同样容易受到攻击?内联JavaScript可能存在的问题 内联JavaScript的主要缺点是潜在的。本质上,受信任的网站可以无意中呈现可执行任意数量恶意行为的代码(在本例中为JavaScript)。可以找到一个内联JavaScript安全问题的简单示例 内容安全策略 当JavaScript外部化时

这是一个多年来我时常想知道的问题,但从未真正费心去寻找一个明确的答案

我们知道可以通过控制台操作内联脚本和外部脚本,但是一个脚本比另一个脚本有什么小的安全优势吗


操纵其中一个是否有点困难,还是它们都同样容易受到攻击?

内联JavaScript可能存在的问题

内联JavaScript的主要缺点是潜在的。本质上,受信任的网站可以无意中呈现可执行任意数量恶意行为的代码(在本例中为JavaScript)。可以找到一个内联JavaScript安全问题的简单示例


内容安全策略

当JavaScript外部化时,您可以建立一个
内容安全策略
,该策略信任从您的网站(以及其他需要的网站)加载的外部JavaScript,并阻止所有内联JavaScript执行。本质上,您正在确定所有外部加载的资源都是安全的,如果碰巧有任何JavaScript尝试内联执行,那么就阻止尝试


附加步骤

然而,应注意的是,应建立保障措施,作为“清洁”输入和输出文本的第一道防线。应假定任何用户输入(传入或传出)都可能是恶意的。相应地计划

以下链接提供了更多信息:


对于浏览器来说,它们都是JavaScript。一个并不比另一个安全。浏览器开发工具允许您根据自己的意愿拦截、暂停、调试和修改JS,无论它们是否是内联的。这是我一直假设的,但从来没有问过的问题。浏览器开发工具能做什么与安全性完全无关?@spice而内联JavaScript可能执行得更快,使用外部JavaScript文件可能更安全。如果您修改了包含外部JavaScript文件的页面,您可能会对不意外篡改/更改JavaScript感到安全。@Bergi告诉一个没有正确验证ajax提交的content server端的网站。因此,安全性的好处来自于使用CSP,而不是通过一种或另一种方式使用JavaScript。正确。与内部加载相比,JavaScript本身在外部并不更安全。由于无法有效使用CSP,选择使用内联JavaScript可能会间接降低安全性。请记住,今天的所有选择都可能影响到明天保护网站的能力。