我们通常提到跨域问题的时候,相信大家首先会想到的是CORS(跨源资源共享),其实CORS只是众多跨域访问场景中安全策略的一种,类似的策略还有:
COEP:CrossOriginEmbedderPolicy:跨源嵌入程序策略
COOP:CrossOriginOpenerPolicy:跨源开放者政策
CORP:CrossOriginResourcePolicy:跨源资源策略
CORB:CrossOriginReadBlocking:跨源读取阻止
COEP、COOP这两个新策略我已经在前面的文章中介绍过了,感兴趣的可以看新的跨域策略:使用COOP、COEP为浏览器创建更安全的环境
今天,我来给大家介绍一下CORB:CrossOriginReadBlocking(跨源读取阻止)
站点隔离
互联网是一个非常复杂多样的环境,我们可以在上面做各种事情,有的时候我们在上面存钱、有的时候在上面看视频,但是你肯定不希望看视频的网站知道你存了多少钱,所以在浏览器中不同来源的站点不能互相访问,我们熟悉的另一个名称是:同源策略。
但是很多恶意网站会通过各种巧妙的手段绕过这个限制,站点隔离是Chrome中的一项安全功能,它提供了额外的防护措施,可以降低此类攻击成功的可能性。
它可以确保始终将来自不同网站的页面置于不同的流程中,每个流程都在沙箱中运行,以限制流程的执行范围。它还阻止了从其他站点接收某些类型的敏感数据的过程。
跨域读取阻止
即使所有不同源的页面都处于自己单独的进程中,页面仍然可以合法请求一些跨站的资源,例如图片和JavaScript脚本,有些恶意网页可能通过img元素来加载包含敏感数据的JSON文件:
imgsrc="