使用innerHTML插入内容不执行<script>标签,这是一个安全假设
inserting content with innerHTML doesn't execute <script> tags, can this be a security assumption?
我使用ajax从php获取内容以更新我页面上的内容。我想知道,因为我使用javascript innerHTML插入内容,是否有必要检查脚本标签,因为据我所知,添加了innerHTML的脚本标签不会运行,除非你有意评估它们。
可以用innerHTML插入脚本吗?
这应该能回答你的问题。如果您希望对脚本标记进行评估,则必须手动执行。如果有比一个脚本标签更多的代码,那么你将不得不检查脚本标签。
有一些方法可以解决这个问题,如示例所示(将脚本放在onload
事件的空标记中),但是您必须更改从服务器检索的内容。
如果你害怕客户端会插入将被执行的有害Javascript,那就害怕吧!永远不要在客户端做任何敏感的操作。
相关文章:
- 如何在读取XLS/XLSX本地文件时,使用IE的javascript代码启用未标记为安全的ActiveX控件
- 使用javascript存储变量的最安全方式
- 是否存在React Native“;WEB代码安全防护”;
- 内容安全策略:页面's设置阻止加载资源
- 如何通过安全的https连接在javascript中使用基于soap xml的Web服务
- 导致内容安全策略(CSP)冲突错误的本地jquery.js文件
- 如何在Google chrome安全首选项文件中创建扩展安全哈希代码
- ES6 模板文字是否比 eval 更安全
- CORS保持在SecurityError上:操作不安全
- 旋转木马;启用内容安全策略时无法工作
- 从自己的安全系统中重新找回自己
- 关于ajax的安全问题
- 如何使用app和secret进行安全的解析初始化
- 是一个javascript bookmarklet,可以设置破坏跨域安全的域cookie
- Extjs、Chrome扩展和内容安全策略
- createObjectURL blob url在Firefox中不安全
- java安全doPrivileged方法如何阻止任意脚本
- addthis:addthis实用程序框架的JS安全错误
- 假设浏览器渲染为60 fps是否安全
- 使用innerHTML插入内容不执行