电子对安全的困惑



好的,我只是迷路了。我打开了一个电子启动应用程序,添加了一个简单的代码,以按下控制台登录按钮。这个函数在render.js文件中,在我的index.html中被调用。为什么当我按下按钮时我收到这个消息。。。。

Refused to execute inline event handler because it violates the following Content
Security Policy directive: "script-src 'self'". Either the 'unsafe-inline' keyword, a
hash ('sha256-...'), or a nonce ('nonce-...') is required to enable inline execution.

为什么不允许我执行内联的东西?外部来源似乎更容易受到攻击。有人能帮我清理一下吗?

内容安全策略用于避免浏览器中基于XSS的攻击。在电子中,后台是在铬引擎中运行的,因此代码实际上是在铬浏览器中运行的。该浏览器容易出现浏览器具有的所有安全问题

什么是内容安全策略

内容安全策略是现代浏览器用来增强文档(或网页(安全性的HTTP响应标头的名称。Content Security Policy标头允许您限制JavaScript、CSS等资源或浏览器加载的任何内容的方式。

您可以在HTML的顶部添加以下代码,以避免内容安全问题。这个新的头将允许内联代码执行

<meta http-equiv="Content-Security-Policy" content="script-src 'self';">

这个元标签将做什么

允许

使用上述CSP策略,允许在浏览器中加载和执行以下内容:

<!-- allowed by 'self' -->
<script src="/js/some-file.js"></script>
<!-- allowed by https://js.example.com -->
<script src="https://js.example.com/file.js"></script>

区块

上面的示例策略将阻止以下内容在浏览器中加载或执行:

<script src="https://attacker.example.com/file.js"></script>

相关内容

  • 没有找到相关文章

最新更新