千家信息网

Html5中内容安全策略CSP的示例分析

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,这篇文章主要为大家展示了"Html5中内容安全策略CSP的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Html5中内容安全策略CSP的示例分析"
千家信息网最后更新 2024年09月22日Html5中内容安全策略CSP的示例分析

这篇文章主要为大家展示了"Html5中内容安全策略CSP的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Html5中内容安全策略CSP的示例分析"这篇文章吧。

前言:

Cordova不支持内联事件,所以点击事件必须提取到js里面.以下是从官网摘抄下来,希望对您有所帮助

为了缓解大量潜在的跨站点脚本问题,Chrome的扩展系统已经纳入了内容安全策略(CSP)的一般概念。 这引入了一些相当严格的策略,默认情况下将使扩展更加安全,并为您提供了创建和实施管理可由扩展和应用程序加载和执行的内容类型的规则的功能。

一般来说,CSP作为黑客/白名单机制,用于扩展程序加载或执行的资源。 为您的扩展定义合理的策略,您可以仔细考虑扩展所需的资源,并要求浏览器确保这些资源是您的扩展程序可以访问的唯一资源。 这些策略提供超出您的扩展请求的主机权限的安全性; 它们是一个额外的保护层,而不是替代。

在网络上,这样的策略是通过HTTP头或元素来定义的。 在Chrome的扩展系统中,两者都不是一个合适的机制。 相反,扩展的策略是通过扩展名的manifest.json文件定义的,如下所示:

{    …    "content_security_policy":"[POLICY STRING GOES HERE]"    …}

有关CSP语法的完整详细信息,请参阅内容安全策略规范以及有关HTML5Rocks的"内容安全策略简介"一文。

默认策略限制

没有定义manifest_version软件包没有默认的内容安全策略。 那些选择manifest_version 2,具有默认内容安全策略:

script-src'self'; object-src'self'

此策略通过三种方式限制扩展和应用程序来增加安全性:

(1)评估和相关功能被禁用

以下代码不起作用:

警报(的eval( "foo.bar.baz"));

window.setTimeout("alert('hi')",10);  window.setInterval("alert('hi')",10);  new Function("return foo.bar.baz");

评估这样的JavaScript字符串是一个常见的XSS攻击向量。 相反,你应该编写如下代码:

alert(foo && foo.bar && foo.bar.baz); window.setTimeout(function(){alert('hi');},10); window.setInterval(function(){alert('hi');},10); function(){return foo && foo.bar && foo.bar.baz};

(2)内联JavaScript不会被执行

内联JavaScript不会被执行。 此限制禁止内嵌块和内联事件处理程序(例如 )。

第一个限制通过使您不小心执行恶意第三方提供的脚本来消除大量的跨站点脚本攻击。 但是,它需要您将代码写入内容与行为之间的干净分离(您当然应该做到这一点)对吗? 一个例子可能使这更清楚。 您可能会尝试编写一个浏览器操作的弹出窗口作为单个popup.html包含:

<!doctype html>       My Awesome Popup!        function awesome(){          //做某事真棒!        }   function totalAwesome(){     //做某事真棒!   }  函数clickHandler(element){     setTimeout( "awesome();getherAwesome()" ,1000);   }   function main(){     //初始化工作在这里。   } 

点击awesomeness!

放宽默认策略

(1)内联脚本

直到Chrome 45,没有放宽对执行内联JavaScript的限制的机制。 特别是,设置包含'unsafe-inline'的脚本策略将不起作用。

从Chrome 46起,可以通过在策略中指定源代码的base64编码哈希来将内联脚本列入白名单。 该散列必须以使用的散列算法(sha256,sha384或sha512)为前缀。

以上是"Html5中内容安全策略CSP的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

策略 内容 安全 脚本 程序 限制 资源 示例 分析 事件 代码 机制 篇文章 帮助 作用 功能 名单 安全性 应用程序 浏览器 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 拓达网络技术怎么样 服务器的安全分析 spring数据库密码加密 安徽公安厅网络安全宣传周 数据库系统工程师和系统集成 软件开发在职研究生好考吗 ddr4服务器内存条通用 广州大学软件开发学的课程 鲁山县公安局信息网络技术 信息网络安全 翻译 云端数据库映射到本地 广州腾科网络技术有限公司打造 pad解析服务器响应时发生错误 mysql数据库如何创建变量 黄浦区机电软件开发厂家直销 魔兽世界山脉之血60数据库 蓬佩奥成立新的网络安全局 羊城杯网络安全大赛web 火线安全放在服务器上可以吗 湖北诺腾网络技术有限公司 郑大软件开发专业 重生互联网科技类小说 贵州数据库的作用 清华大学网络安全专业博士后 黄浦区机电软件开发厂家直销 服务器下架清灰应注意的事项 咸阳软件开发学费 301到服务器ip权重 昆明软件开发待遇怎么样 服务器拷机
0